barretenberg
Loading...
Searching...
No Matches
Public Types | Static Public Member Functions | Static Public Attributes | List of all members
proof_system::GoblinTranslatorOpcodeConstraintRelationImpl< FF_ > Class Template Reference

Public Types

using FF = FF_
 

Static Public Member Functions

template<typename ContainerOverSubrelations , typename AllEntities , typename Parameters >
static void accumulate (ContainerOverSubrelations &accumulators, const AllEntities &in, const Parameters &, const FF &scaling_factor)
 Expression for enforcing the value of the Opcode to be {0,1,2,3,4,8}.
 

Static Public Attributes

static constexpr size_t RELATION_LENGTH = 7
 
static constexpr std::array< size_t, 1 > SUBRELATION_PARTIAL_LENGTHS
 

Member Function Documentation

◆ accumulate()

template<typename FF >
template<typename ContainerOverSubrelations , typename AllEntities , typename Parameters >
void proof_system::GoblinTranslatorOpcodeConstraintRelationImpl< FF >::accumulate ( ContainerOverSubrelations &  accumulators,
const AllEntities &  in,
const Parameters &  ,
const FF &  scaling_factor 
)
static

Expression for enforcing the value of the Opcode to be {0,1,2,3,4,8}.

This relation enforces the opcode to be one of described values. Since we don't care about even values in the opcode wire and usually just set them to zero, we don't use a lagrange polynomial to specify the relation to be enforced just at odd indices, which brings the degree down by 1.

Parameters
evalstransformed to evals + C(in(X)...)*scaling_factor
inan std::array containing the fully extended Univariate edges.
parameterscontains beta, gamma, and public_input_delta, ....
scaling_factoroptional term to scale the evaluation before adding to evals.

Member Data Documentation

◆ SUBRELATION_PARTIAL_LENGTHS

template<typename FF_ >
constexpr std::array<size_t, 1> proof_system::GoblinTranslatorOpcodeConstraintRelationImpl< FF_ >::SUBRELATION_PARTIAL_LENGTHS
staticconstexpr
Initial value:
{
7
}

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