mirror of
https://github.com/logos-storage/plonky2.git
synced 2026-01-03 22:33:06 +00:00
Fix logic CTL
This commit is contained in:
parent
ee9ce4c59d
commit
437f57a862
@ -83,7 +83,9 @@ fn ctl_data_ternops<F: Field>(ops: &[usize], is_shift: bool) -> Vec<Column<F>> {
|
||||
}
|
||||
|
||||
pub fn ctl_data_logic<F: Field>() -> Vec<Column<F>> {
|
||||
ctl_data_binops(&[COL_MAP.op.and_or, COL_MAP.op.xor])
|
||||
let mut res = vec![Column::le_bits(COL_MAP.opcode_bits)];
|
||||
res.extend(ctl_data_binops(&[]));
|
||||
res
|
||||
}
|
||||
|
||||
pub fn ctl_filter_logic<F: Field>() -> Column<F> {
|
||||
|
||||
@ -103,8 +103,7 @@ pub(crate) fn ctl_looking_logic<F: Field>(i: usize) -> Vec<Column<F>> {
|
||||
let cols = KECCAK_SPONGE_COL_MAP;
|
||||
|
||||
let mut res = vec![
|
||||
Column::zero(), // is_and_or
|
||||
Column::one(), // is_xor
|
||||
Column::constant(F::from_canonical_u8(0x18)), // is_xor
|
||||
];
|
||||
|
||||
// Input 0 contains some of the sponge's original rate chunks. If this is the last CTL, we won't
|
||||
|
||||
@ -52,10 +52,11 @@ pub(crate) mod columns {
|
||||
}
|
||||
|
||||
pub fn ctl_data<F: Field>() -> Vec<Column<F>> {
|
||||
let mut res = vec![
|
||||
Column::sum([columns::IS_AND, columns::IS_OR]),
|
||||
Column::single(columns::IS_XOR),
|
||||
];
|
||||
let mut res = vec![Column::linear_combination([
|
||||
(columns::IS_AND, F::from_canonical_u8(0x16)),
|
||||
(columns::IS_OR, F::from_canonical_u8(0x17)),
|
||||
(columns::IS_XOR, F::from_canonical_u8(0x18)),
|
||||
])];
|
||||
res.extend(columns::limb_bit_cols_for_input(columns::INPUT0).map(Column::le_bits));
|
||||
res.extend(columns::limb_bit_cols_for_input(columns::INPUT1).map(Column::le_bits));
|
||||
res.extend(columns::RESULT.map(Column::single));
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user