After moving is_merkle_checked out of value base derivation, POSEIDON_TO_CURVE_INPUT_LEN would be three. But there is something wrong with the Poseidon hash gadget in Halo2(probably a padding bug). Using MockProver is fine. But using create_proof results in a Synthesis Error.
Temporary fix: add a dummy post string in POSEIDON_TO_FIELD_U_0_POSTFIX to extend the POSEIDON_TO_CURVE_INPUT_LEN as four. Fix it once the Poseidon hash gadget in Halo2 is fixed.
After moving
is_merkle_checked
out of value base derivation, POSEIDON_TO_CURVE_INPUT_LEN would be three. But there is something wrong with the Poseidon hash gadget in Halo2(probably a padding bug). Using MockProver is fine. But usingcreate_proof
results in a Synthesis Error. Temporary fix: add a dummy post string in POSEIDON_TO_FIELD_U_0_POSTFIX to extend the POSEIDON_TO_CURVE_INPUT_LEN as four. Fix it once the Poseidon hash gadget in Halo2 is fixed.