mirror of https://github.com/zcash/halo2.git
poseidon::pow5t3.rs: Take partial_sbox advice column as input.
This was previously creating an extra advice column. Instead, we should pass in all required advice columns as inputs. Co-authored-by: Jack Grigg <jack@electriccoin.co>
This commit is contained in:
parent
d16b83816b
commit
3a75f875a4
|
@ -52,6 +52,7 @@ impl<F: FieldExt> Pow5T3Chip<F> {
|
|||
meta: &mut ConstraintSystem<F>,
|
||||
spec: S,
|
||||
state: [Column<Advice>; WIDTH],
|
||||
partial_sbox: Column<Advice>,
|
||||
) -> Pow5T3Config<F> {
|
||||
// Generate constants for the Poseidon permutation.
|
||||
// This gadget requires R_F and R_P to be even.
|
||||
|
@ -61,8 +62,6 @@ impl<F: FieldExt> Pow5T3Chip<F> {
|
|||
let half_partial_rounds = S::partial_rounds() / 2;
|
||||
let (round_constants, m_reg, m_inv) = spec.constants();
|
||||
|
||||
let partial_sbox = meta.advice_column();
|
||||
|
||||
let rc_a = [
|
||||
meta.fixed_column(),
|
||||
meta.fixed_column(),
|
||||
|
@ -644,8 +643,9 @@ mod tests {
|
|||
meta.advice_column(),
|
||||
meta.advice_column(),
|
||||
];
|
||||
let partial_sbox = meta.advice_column();
|
||||
|
||||
Pow5T3Chip::configure(meta, OrchardNullifier, state)
|
||||
Pow5T3Chip::configure(meta, OrchardNullifier, state, partial_sbox)
|
||||
}
|
||||
|
||||
fn synthesize(
|
||||
|
@ -739,8 +739,9 @@ mod tests {
|
|||
meta.advice_column(),
|
||||
meta.advice_column(),
|
||||
];
|
||||
let partial_sbox = meta.advice_column();
|
||||
|
||||
Pow5T3Chip::configure(meta, OrchardNullifier, state)
|
||||
Pow5T3Chip::configure(meta, OrchardNullifier, state, partial_sbox)
|
||||
}
|
||||
|
||||
fn synthesize(
|
||||
|
|
Loading…
Reference in New Issue