pub fn compute_gate_data_outputs<F: Field>(
wiring: Vec<(u32, u32, u32)>,
num_dataparallel_bits: usize,
lhs_data: &MultilinearExtension<F>,
rhs_data: &MultilinearExtension<F>,
gate_operation: BinaryOperation,
) -> MultilinearExtension<F>Expand description
Computes the correct result of a gate layer, Used for data generation and testing. Arguments:
-
wiring: A vector of tuples representing the “nonzero” gates, especially useful in the sparse case the format is (z, x, y) where the gate at label z is the output of performing an operation on gates with labels x and y.
-
num_dataparallel_bits: The number of bits representing the number of “dataparallel” copies of the circuit.
-
lhs_data: The left side of the expression, i.e. the mle that makes up the “x” variables.
-
rhs_data: The mles that are constructed when initializing phase 2 (binding the y variables).
-
gate_operation: The gate operation representing the fan-in-two relationship.