Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
UltraCircuitBuilderArithmetic Class Reference

Test suite for UltraCircuitBuilder arithmetic gate methods. More...

Inheritance diagram for UltraCircuitBuilderArithmetic:

Classes

struct  AddQuadData
 
struct  AddTripleData
 
struct  ArithTripleData
 
struct  MulQuadData
 

Static Protected Member Functions

static AddTripleData create_add_triple_data (uint64_t a_val=5, uint64_t b_val=7)
 
static AddQuadData create_add_quad_data (uint64_t a_val=3, uint64_t b_val=5, uint64_t c_val=7)
 
static MulQuadData create_mul_quad_data (uint64_t a_val=5, uint64_t b_val=7, uint64_t c_val=3)
 
static ArithTripleData create_arithmetic_triple_data (uint64_t a_val=5, uint64_t b_val=7)
 

Detailed Description

Test suite for UltraCircuitBuilder arithmetic gate methods.

Methods under test:

create_add_gate (q_arith=1, 3-wire addition) create_big_add_gate (q_arith=1, 4-wire addition) create_big_add_gate (q_arith=2, 4-wire addition with w_4_shift) create_big_mul_add_gate (q_arith=1, 4-wire mul+add without w_4_shift) create_big_mul_add_gate (q_arith=2, 4-wire mul+add with w_4_shift) create_arithmetic_gate (q_arith=1, general arithmetic gate) create_bool_gate (q_arith=1, boolean constraint x² - x = 0)

Note: q_arith=3 mode is also tested via direct builder access since it is only used internally via the non-native field gate methods.

Definition at line 24 of file ultra_circuit_builder_arithmetic.test.cpp.

Member Function Documentation

◆ create_add_quad_data()

static AddQuadData UltraCircuitBuilderArithmetic::create_add_quad_data ( uint64_t  a_val = 3,
uint64_t  b_val = 5,
uint64_t  c_val = 7 
)
inlinestaticprotected

Definition at line 57 of file ultra_circuit_builder_arithmetic.test.cpp.

◆ create_add_triple_data()

static AddTripleData UltraCircuitBuilderArithmetic::create_add_triple_data ( uint64_t  a_val = 5,
uint64_t  b_val = 7 
)
inlinestaticprotected

Definition at line 48 of file ultra_circuit_builder_arithmetic.test.cpp.

◆ create_arithmetic_triple_data()

static ArithTripleData UltraCircuitBuilderArithmetic::create_arithmetic_triple_data ( uint64_t  a_val = 5,
uint64_t  b_val = 7 
)
inlinestaticprotected

Definition at line 77 of file ultra_circuit_builder_arithmetic.test.cpp.

◆ create_mul_quad_data()

static MulQuadData UltraCircuitBuilderArithmetic::create_mul_quad_data ( uint64_t  a_val = 5,
uint64_t  b_val = 7,
uint64_t  c_val = 3 
)
inlinestaticprotected

Definition at line 67 of file ultra_circuit_builder_arithmetic.test.cpp.


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