9#include <gtest/gtest.h>
32 Prover prover{ proving_key, verification_key };
35 Verifier verifier{ verification_key };
37 bool result = verifier.template verify_proof<DefaultIO>(proof).result;
46 size_t witness_len = 0;
47 witness_values.emplace_back(1);
102 witness_values.emplace_back(2);
114 witness_values.emplace_back(3);
128 .trace = { op1, op2 },
129 .type = BlockType::ROM,
141 .
varnum =
static_cast<uint32_t
>(num_variables),
142 .num_acir_opcodes = 7,
144 .block_constraints = { block },
159 block.
type = BlockType::CallData;
162 .
varnum =
static_cast<uint32_t
>(num_variables),
163 .num_acir_opcodes = 1,
165 .block_constraints = { block },
171 auto circuit = create_circuit<Builder>(program);
181 block.
type = BlockType::CallData;
184 .
a =
static_cast<uint32_t
>(num_variables),
193 program.
witness.emplace_back(0);
195 auto fr_five =
fr(5);
197 .
a =
static_cast<uint32_t
>(num_variables),
206 program.
witness.emplace_back(fr_five);
227 .type = BlockType::ReturnData,
243 .
varnum =
static_cast<uint32_t
>(num_variables),
244 .num_acir_opcodes = 2,
246 .poly_triple_constraints = { assert_equal },
247 .block_constraints = { block },
253 auto circuit = create_circuit<Builder>(program);
size_t generate_block_constraint(BlockConstraint &constraint, WitnessVector &witness_values)
static void SetUpTestSuite()
static bool prove_and_verify(Builder &circuit)
static void SetUpTestSuite()
The verification key is responsible for storing the commitments to the precomputed (non-witness) poly...
MegaCircuitBuilder CircuitBuilder
static bool check(const Builder &circuit)
Check the witness satisifies the circuit.
std::filesystem::path bb_crs_path()
void init_file_crs_factory(const std::filesystem::path &path)
TEST_F(BoomerangGoblinRecursiveVerifierTests, graph_description_basic)
Construct and check a goblin recursive verification circuit.
field< Bn254FrParams > fr
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
static constexpr field neg_one()
static constexpr field one()