Barretenberg
The ZK-SNARK library at the core of Aztec
|
A class designed to accept the ECCVM Transcript Polynomials
, concatenate their masking terms in Lagrange basis over the SmallSubgroup, and commit to the concatenation.
More...
#include <eccvm_translation_data.hpp>
Public Types | |
using | Flavor = ECCVMFlavor |
using | FF = typename Flavor::FF |
using | BF = typename Flavor::BF |
using | Commitment = typename Flavor::Commitment |
using | CommitmentKey = typename Flavor::CommitmentKey |
using | Polynomial = typename Flavor::Polynomial |
Public Member Functions | |
TranslationData (const RefVector< Polynomial > &transcript_polynomials, const std::shared_ptr< Transcript > &transcript, CommitmentKey &commitment_key) | |
Given masked transcript_polynomials \( \tilde{T}_i(X) = T_i(X) + X^{n - 1 -
\text{NUM_DISABLED_ROWS_IN_SUMCHECK}} \cdot m_i(X) \), for \( i = 0, \ldots,
\text{NUM_TRANSLATION_EVALUATIONS}-1\), we extract and concatenate their masking terms \( m_i\). Let \( M(X)
\) be the polynomial whose first \( \text{NUM_DISABLED_ROWS_IN_SUMCHECK}* \text{NUM_TRANSLATION_EVALUATIONS}\) Lagrange coefficients over \( H \) are given by the concatenation of \( m_i \) padded by zeroes. To mask \(
M(X) \) and commit to the masked polynomial, we need to compute its coefficients in the monomial basis. | |
void | compute_concatenated_polynomials (const RefVector< Polynomial > &transcript_polynomials) |
Let \( T = NUM_TRANSLATION_EVALUATIONS \) and let \( m_0, ..., m_{T-1}\) be the vectors of last \(
\text{NUM_DISABLED_ROWS_IN_SUMCHECK} \) coeffs in each transcript poly \( \tilde{T}_i \), we compute the concatenation \( (m_0 || ... || m_{T-1})\) in Lagrange and monomial basis and mask the latter. | |
Public Attributes | |
Polynomial | concatenated_polynomial_lagrange |
Polynomial | masked_concatenated_polynomial |
std::array< FF, SUBGROUP_SIZE > | interpolation_domain |
Static Public Attributes | |
static constexpr size_t | SUBGROUP_SIZE = Flavor::Curve::SUBGROUP_SIZE |
static constexpr size_t | WITNESS_MASKING_TERM_LENGTH = 2 |
static constexpr size_t | MASKED_CONCATENATED_WITNESS_LENGTH = SUBGROUP_SIZE + WITNESS_MASKING_TERM_LENGTH |
A class designed to accept the ECCVM Transcript Polynomials
, concatenate their masking terms in Lagrange basis over the SmallSubgroup, and commit to the concatenation.
Transcript |
Definition at line 20 of file eccvm_translation_data.hpp.
using bb::TranslationData< Transcript >::BF = typename Flavor::BF |
Definition at line 24 of file eccvm_translation_data.hpp.
using bb::TranslationData< Transcript >::Commitment = typename Flavor::Commitment |
Definition at line 25 of file eccvm_translation_data.hpp.
using bb::TranslationData< Transcript >::CommitmentKey = typename Flavor::CommitmentKey |
Definition at line 26 of file eccvm_translation_data.hpp.
using bb::TranslationData< Transcript >::FF = typename Flavor::FF |
Definition at line 23 of file eccvm_translation_data.hpp.
using bb::TranslationData< Transcript >::Flavor = ECCVMFlavor |
Definition at line 22 of file eccvm_translation_data.hpp.
using bb::TranslationData< Transcript >::Polynomial = typename Flavor::Polynomial |
Definition at line 27 of file eccvm_translation_data.hpp.
|
inline |
Given masked transcript_polynomials
\( \tilde{T}_i(X) = T_i(X) + X^{n - 1 -
\text{NUM_DISABLED_ROWS_IN_SUMCHECK}} \cdot m_i(X) \), for \( i = 0, \ldots,
\text{NUM_TRANSLATION_EVALUATIONS}-1\), we extract and concatenate their masking terms \( m_i\). Let \( M(X)
\) be the polynomial whose first \( \text{NUM_DISABLED_ROWS_IN_SUMCHECK}* \text{NUM_TRANSLATION_EVALUATIONS}\) Lagrange coefficients over \( H \) are given by the concatenation of \( m_i \) padded by zeroes. To mask \(
M(X) \) and commit to the masked polynomial, we need to compute its coefficients in the monomial basis.
An object of this class is fed to the SmallSubgroupIPA prover to establish the claims about the inner product of Lagrange coefficients of \( M \) against the vectors of the following form. \((1, 1, x , x^2 , x^{\text{NUM_DISABLED_ROWS_IN_SUMCHECK} - 1}, v , v\cdot x ,\ldots, ... , v^{T - 1}, v^{T-1} x , v^{T-1} x^2 , v^{T-1} x^{\text{NUM_DISABLED_ROWS_IN_SUMCHECK} - 1} ).\)
transcript_polynomials | |
transcript | |
commitment_key |
Definition at line 60 of file eccvm_translation_data.hpp.
|
inline |
Let \( T = NUM_TRANSLATION_EVALUATIONS \) and let \( m_0, ..., m_{T-1}\) be the vectors of last \( \text{NUM_DISABLED_ROWS_IN_SUMCHECK} \) coeffs in each transcript poly \( \tilde{T}_i \), we compute the concatenation \( (m_0 || ... || m_{T-1})\) in Lagrange and monomial basis and mask the latter.
transcript_polynomials |
Definition at line 91 of file eccvm_translation_data.hpp.
Polynomial bb::TranslationData< Transcript >::concatenated_polynomial_lagrange |
Definition at line 35 of file eccvm_translation_data.hpp.
std::array<FF, SUBGROUP_SIZE> bb::TranslationData< Transcript >::interpolation_domain |
Definition at line 41 of file eccvm_translation_data.hpp.
Polynomial bb::TranslationData< Transcript >::masked_concatenated_polynomial |
Definition at line 38 of file eccvm_translation_data.hpp.
|
staticconstexpr |
Definition at line 32 of file eccvm_translation_data.hpp.
|
staticconstexpr |
Definition at line 28 of file eccvm_translation_data.hpp.
|
staticconstexpr |
Definition at line 31 of file eccvm_translation_data.hpp.