Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::plookup::sparse_tables Namespace Reference

Functions

template<uint64_t base, uint64_t num_rotated_bits>
std::array< bb::fr, 2 > get_sparse_table_with_rotation_values (const std::array< uint64_t, 2 > key)
 
template<uint64_t base, uint64_t bits_per_slice, uint64_t num_rotated_bits>
BasicTable generate_sparse_table_with_rotation (BasicTableId id, const size_t table_index)
 
template<size_t base, const uint64_t * base_table>
std::array< bb::fr, 2 > get_sparse_normalization_values (const std::array< uint64_t, 2 > key)
 
template<size_t base, uint64_t num_bits, const uint64_t * base_table>
BasicTable generate_sparse_normalization_table (BasicTableId id, const size_t table_index)
 

Function Documentation

◆ generate_sparse_normalization_table()

template<size_t base, uint64_t num_bits, const uint64_t * base_table>
BasicTable bb::plookup::sparse_tables::generate_sparse_normalization_table ( BasicTableId  id,
const size_t  table_index 
)
inline

If t = 7*((e >>> 6) + (e >>> 11) + (e >>> 25)) + e + 2f + 3g we can create a mapping between the 28 distinct values, and the result of (e >>> 6) ^ (e >>> 11) ^ (e >>> 25) + e + 2f + 3g

Definition at line 86 of file sparse.hpp.

◆ generate_sparse_table_with_rotation()

template<uint64_t base, uint64_t bits_per_slice, uint64_t num_rotated_bits>
BasicTable bb::plookup::sparse_tables::generate_sparse_table_with_rotation ( BasicTableId  id,
const size_t  table_index 
)
inline

Definition at line 32 of file sparse.hpp.

◆ get_sparse_normalization_values()

template<size_t base, const uint64_t * base_table>
std::array< bb::fr, 2 > bb::plookup::sparse_tables::get_sparse_normalization_values ( const std::array< uint64_t, 2 >  key)
inline

Definition at line 69 of file sparse.hpp.

◆ get_sparse_table_with_rotation_values()

template<uint64_t base, uint64_t num_rotated_bits>
std::array< bb::fr, 2 > bb::plookup::sparse_tables::get_sparse_table_with_rotation_values ( const std::array< uint64_t, 2 >  key)
inline

Definition at line 19 of file sparse.hpp.