pub fn prove_transparent<'a, F, P, Channel, A>(
tables: impl IntoIterator<Item = TableLookup<'a, P>>,
channel: &mut Channel,
alloc: &A,
) -> LogupTransparentProof<F>where
F: BinaryField<Underlier: Divisible<u64>>,
P: PackedField<Scalar = F> + 'a,
Channel: IOPProverChannel<P, A>,
A: Allocator,Expand description
Prove a logUp* reduction over transparent tables, with the pushforwards committed as oracles.
This wraps binius_ip_prover::logup_star::prove_reduction_transparent the way prove wraps
the committed-table reduction. The reduction leaves two claims on each pushforward instead of
one, and both are opened here through the channel:
<Y, eq_z> = Y(z) the fractional-addition leaf claim
<Y, T> = e the product claim, against the transparent table itselfThe two are queued in that order, matching
binius_iop::logup_star::verify_transparent.
§Arguments
The arguments of prove. The tables are transparent, so no oracle is committed for them;
their multilinears are still needed, both by the reduction and by the product relation.
§Preconditions
The preconditions of prove.