Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
bb::stdlib::element_default::element< Builder_, Fq, Fr, NativeGroup >::lookup_table_plookup< length > Struct Template Reference

Public Member Functions

 lookup_table_plookup ()
 
 lookup_table_plookup (const std::array< element, length > &inputs)
 
 lookup_table_plookup (const lookup_table_plookup &other)=default
 
lookup_table_plookupoperator= (const lookup_table_plookup &other)=default
 
element get (const std::array< bool_ct, length > &bits) const
 
element operator[] (const size_t idx) const
 

Public Attributes

std::array< element, table_size > element_table
 
std::array< twin_rom_table< Builder >, 5 > coordinates
 
std::array< uint256_t, 8 > limb_max
 

Static Public Attributes

static constexpr size_t table_size = (1ULL << (length))
 

Detailed Description

template<class Builder_, class Fq, class Fr, class NativeGroup>
template<size_t length>
struct bb::stdlib::element_default::element< Builder_, Fq, Fr, NativeGroup >::lookup_table_plookup< length >

The Plookup version of the above lookup table

Uses ROM tables to efficiently access lookup table

Definition at line 534 of file biggroup.hpp.

Constructor & Destructor Documentation

◆ lookup_table_plookup() [1/3]

template<class Builder_ , class Fq , class Fr , class NativeGroup >
template<size_t length>
bb::stdlib::element_default::element< Builder_, Fq, Fr, NativeGroup >::lookup_table_plookup< length >::lookup_table_plookup ( )
inline

Definition at line 536 of file biggroup.hpp.

◆ lookup_table_plookup() [2/3]

template<typename C , class Fq , class Fr , class G >
template<size_t length>
bb::stdlib::element_default::element< C, Fq, Fr, G >::lookup_table_plookup< length >::lookup_table_plookup ( const std::array< element, length > &  inputs)

lookup_table_plookup

Definition at line 187 of file biggroup_tables.hpp.

◆ lookup_table_plookup() [3/3]

template<class Builder_ , class Fq , class Fr , class NativeGroup >
template<size_t length>
bb::stdlib::element_default::element< Builder_, Fq, Fr, NativeGroup >::lookup_table_plookup< length >::lookup_table_plookup ( const lookup_table_plookup< length > &  other)
default

Member Function Documentation

◆ get()

template<typename C , class Fq , class Fr , class G >
template<size_t length>
element< C, Fq, Fr, G > bb::stdlib::element_default::element< C, Fq, Fr, G >::lookup_table_plookup< length >::get ( const std::array< bool_ct, length > &  bits) const

Definition at line 417 of file biggroup_tables.hpp.

◆ operator=()

template<class Builder_ , class Fq , class Fr , class NativeGroup >
template<size_t length>
lookup_table_plookup & bb::stdlib::element_default::element< Builder_, Fq, Fr, NativeGroup >::lookup_table_plookup< length >::operator= ( const lookup_table_plookup< length > &  other)
default

◆ operator[]()

template<class Builder_ , class Fq , class Fr , class NativeGroup >
template<size_t length>
element bb::stdlib::element_default::element< Builder_, Fq, Fr, NativeGroup >::lookup_table_plookup< length >::operator[] ( const size_t  idx) const
inline

Definition at line 543 of file biggroup.hpp.

Member Data Documentation

◆ coordinates

template<class Builder_ , class Fq , class Fr , class NativeGroup >
template<size_t length>
std::array<twin_rom_table<Builder>, 5> bb::stdlib::element_default::element< Builder_, Fq, Fr, NativeGroup >::lookup_table_plookup< length >::coordinates

Definition at line 546 of file biggroup.hpp.

◆ element_table

template<class Builder_ , class Fq , class Fr , class NativeGroup >
template<size_t length>
std::array<element, table_size> bb::stdlib::element_default::element< Builder_, Fq, Fr, NativeGroup >::lookup_table_plookup< length >::element_table

Definition at line 545 of file biggroup.hpp.

◆ limb_max

template<class Builder_ , class Fq , class Fr , class NativeGroup >
template<size_t length>
std::array<uint256_t, 8> bb::stdlib::element_default::element< Builder_, Fq, Fr, NativeGroup >::lookup_table_plookup< length >::limb_max

Definition at line 547 of file biggroup.hpp.

◆ table_size

template<class Builder_ , class Fq , class Fr , class NativeGroup >
template<size_t length>
constexpr size_t bb::stdlib::element_default::element< Builder_, Fq, Fr, NativeGroup >::lookup_table_plookup< length >::table_size = (1ULL << (length))
staticconstexpr

Definition at line 535 of file biggroup.hpp.


The documentation for this struct was generated from the following files: