61 const std::shared_ptr<Transcript>& transcript,
81 transcript->send_to_verifier(
"Translation:concatenated_masking_term_commitment",
93 const size_t circuit_size = transcript_polynomials[0].
size();
95 std::array<FF, SUBGROUP_SIZE> coeffs_lagrange_subgroup;
98 coeffs_lagrange_subgroup[idx] =
FF{ 0 };
102 for (
size_t poly_idx = 0; poly_idx < NUM_TRANSLATION_EVALUATIONS; poly_idx++) {
103 for (
size_t idx = 0; idx < NUM_DISABLED_ROWS_IN_SUMCHECK; idx++) {
104 size_t idx_to_populate = poly_idx * NUM_DISABLED_ROWS_IN_SUMCHECK + idx;
105 coeffs_lagrange_subgroup[idx_to_populate] =
106 transcript_polynomials[poly_idx].at(circuit_size - NUM_DISABLED_ROWS_IN_SUMCHECK + idx);
122 for (
size_t idx = 0; idx < masking_scalars.size(); idx++) {
typename Curve::ScalarField FF
typename G1::affine_element Commitment
typename Curve::BaseField BF
bb::Polynomial< FF > Polynomial
bb::CommitmentKey< Curve > CommitmentKey
A template class for a reference vector. Behaves as if std::vector<T&> was possible.
A class designed to accept the ECCVM Transcript Polynomials, concatenate their masking terms in Lagra...
void compute_concatenated_polynomials(const RefVector< Polynomial > &transcript_polynomials)
Let and let be the vectors of last coeffs in each transcript poly , we compute the concatenation ...
static constexpr size_t MASKED_CONCATENATED_WITNESS_LENGTH
TranslationData(const RefVector< Polynomial > &transcript_polynomials, const std::shared_ptr< Transcript > &transcript, CommitmentKey &commitment_key)
Given masked transcript_polynomials , for , we extract and concatenate their masking terms ....
typename Flavor::CommitmentKey CommitmentKey
Polynomial concatenated_polynomial_lagrange
typename Flavor::Polynomial Polynomial
static constexpr size_t SUBGROUP_SIZE
Polynomial masked_concatenated_polynomial
typename Flavor::Commitment Commitment
std::array< FF, SUBGROUP_SIZE > interpolation_domain
static constexpr size_t WITNESS_MASKING_TERM_LENGTH
static Univariate get_random()
Entry point for Barretenberg command-line interface.