Skip to main content

embed_position

Function embed_position 

Source
pub fn embed_position<F>(j: usize) -> F
where F: BinaryField<Underlier: Divisible<u64>>,
Expand description

Embed a table position j into the field through the GF(2)-linear basis.

    iota(j) = sum_{t : bit t of j is set} basis(t)

This is the same embedding the verifier uses for the table-side denominator J. It makes a position and an index value that point to it embed to the same field element.

The GF(2)-linear basis of a binary tower field is its underlier’s bit basis: basis element t is the field element whose underlier has only bit t set. So iota(j) is just the field element whose underlier is j, which we build directly instead of summing basis elements.