Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
arithmetic_constraints.cpp File Reference

Go to the source code of this file.

Namespaces

namespace  acir_format
 

Functions

template<typename Builder >
void acir_format::set_zero_idx (const Builder &builder, QuadConstraint &mul_quad)
 Replace indices which are set to IS_CONSTANT with the zero index of the builder.
 
template<typename Builder >
void acir_format::check_mul_add_gate (Builder &builder, const QuadConstraint &mul_quad, const typename Builder::FF next_wire_w4=Builder::FF::zero())
 Check if a mul add gate is valid.
 
template<typename Builder >
void acir_format::check_bilinear_batched_eq_gate (Builder &builder, const bilinear_batched_eq_gate_< typename Builder::FF > &bilinear_batched_eq)
 Check that a bilinear batched-eq gate is valid.
 
template<typename Builder >
void acir_format::create_quad_constraint (Builder &builder, QuadConstraint &mul_quad)
 Create a simple width-4 Ultra arithmetic gate constraint representing the equation.
 
template<typename Builder >
void acir_format::create_big_quad_constraint (Builder &builder, BigQuadConstraint &big_constraint)
 
template<typename Builder >
void acir_format::create_bilinear_constraint (Builder &builder, const BilinearConstraint &constraint)
 Emit a BILINEAR-mode bilinear_batched_eq gate row.
 
template<typename Builder >
void acir_format::create_batched_eq_check_constraint (Builder &builder, const BatchedEqCheckConstraint &constraint)
 Emit a BATCHED_EQ-mode bilinear_batched_eq gate row described by constraint on builder.
 
template void acir_format::set_zero_idx< UltraCircuitBuilder > (const UltraCircuitBuilder &, QuadConstraint &)
 
template void acir_format::set_zero_idx< MegaCircuitBuilder > (const MegaCircuitBuilder &, QuadConstraint &)
 
template void acir_format::check_mul_add_gate< UltraCircuitBuilder > (UltraCircuitBuilder &, const QuadConstraint &, const typename UltraCircuitBuilder::FF)
 
template void acir_format::check_mul_add_gate< MegaCircuitBuilder > (MegaCircuitBuilder &, const QuadConstraint &, const typename MegaCircuitBuilder::FF)
 
template void acir_format::create_quad_constraint< UltraCircuitBuilder > (UltraCircuitBuilder &builder, QuadConstraint &constraint)
 
template void acir_format::create_quad_constraint< MegaCircuitBuilder > (MegaCircuitBuilder &builder, QuadConstraint &constraint)
 
template void acir_format::create_big_quad_constraint< UltraCircuitBuilder > (UltraCircuitBuilder &builder, BigQuadConstraint &big_constraint)
 
template void acir_format::create_big_quad_constraint< MegaCircuitBuilder > (MegaCircuitBuilder &builder, BigQuadConstraint &big_constraint)
 
template void acir_format::create_bilinear_constraint< UltraCircuitBuilder > (UltraCircuitBuilder &, const BilinearConstraint &)
 
template void acir_format::create_bilinear_constraint< MegaCircuitBuilder > (MegaCircuitBuilder &, const BilinearConstraint &)
 
template void acir_format::create_batched_eq_check_constraint< UltraCircuitBuilder > (UltraCircuitBuilder &, const BatchedEqCheckConstraint &)
 
template void acir_format::create_batched_eq_check_constraint< MegaCircuitBuilder > (MegaCircuitBuilder &, const BatchedEqCheckConstraint &)