diff --git a/build-system b/build-system index 1a8c6c121173..5d3ed11e8017 160000 --- a/build-system +++ b/build-system @@ -1 +1 @@ -Subproject commit 1a8c6c121173172691a08e2ecd5dfb210418400a +Subproject commit 5d3ed11e8017e3daf574e3b287e62c7a99c24bb4 diff --git a/circuits/cpp/barretenberg b/circuits/cpp/barretenberg index af91bc8c1228..e8ed76b87eb4 160000 --- a/circuits/cpp/barretenberg +++ b/circuits/cpp/barretenberg @@ -1 +1 @@ -Subproject commit af91bc8c12286d5a5abc16d4d79f4b5e2c3e7ecc +Subproject commit e8ed76b87eb4f0be55d7b02628d90561db8f8529 diff --git a/circuits/cpp/src/aztec3/circuits/abis/.test.cpp b/circuits/cpp/src/aztec3/circuits/abis/.test.cpp index 0bee851c6627..e18331ea8eaa 100644 --- a/circuits/cpp/src/aztec3/circuits/abis/.test.cpp +++ b/circuits/cpp/src/aztec3/circuits/abis/.test.cpp @@ -9,7 +9,7 @@ namespace { // Builder -using Builder = UltraCircuitBuilder; +using Builder = CircuitSimulatorBN254; // Types using CT = aztec3::utils::types::CircuitTypes; diff --git a/circuits/cpp/src/aztec3/circuits/apps/.test.cpp b/circuits/cpp/src/aztec3/circuits/apps/.test.cpp index ab4ca379df42..c4ba2b5dab37 100644 --- a/circuits/cpp/src/aztec3/circuits/apps/.test.cpp +++ b/circuits/cpp/src/aztec3/circuits/apps/.test.cpp @@ -25,7 +25,7 @@ namespace { // Builder -using C = UltraCircuitBuilder; +using C = CircuitSimulatorBN254; // Types using CT = aztec3::utils::types::CircuitTypes; diff --git a/circuits/cpp/src/aztec3/circuits/apps/test_apps/basic_contract_deployment/init.hpp b/circuits/cpp/src/aztec3/circuits/apps/test_apps/basic_contract_deployment/init.hpp index 4b193f601d7d..ea51024d5772 100644 --- a/circuits/cpp/src/aztec3/circuits/apps/test_apps/basic_contract_deployment/init.hpp +++ b/circuits/cpp/src/aztec3/circuits/apps/test_apps/basic_contract_deployment/init.hpp @@ -11,10 +11,13 @@ #include "aztec3/utils/types/convert.hpp" #include "aztec3/utils/types/native_types.hpp" +#include "barretenberg/stdlib/primitives/circuit_builders/circuit_builders_fwd.hpp" + namespace aztec3::circuits::apps::test_apps::basic_contract_deployment { // Builder -using C = UltraCircuitBuilder; + +using C = CircuitSimulatorBN254; // Native and circuit types using CT = aztec3::utils::types::CircuitTypes; diff --git a/circuits/cpp/src/aztec3/circuits/apps/test_apps/escrow/.test.cpp b/circuits/cpp/src/aztec3/circuits/apps/test_apps/escrow/.test.cpp index 5e68463937ed..1253947f8030 100644 --- a/circuits/cpp/src/aztec3/circuits/apps/test_apps/escrow/.test.cpp +++ b/circuits/cpp/src/aztec3/circuits/apps/test_apps/escrow/.test.cpp @@ -58,7 +58,7 @@ TEST_F(escrow_tests, circuit_deposit) // info("variables: ", builder.variables); info("failed?: ", builder.failed()); info("err: ", builder.err()); - info("n: ", builder.num_gates); + // info("n: ", builder.num_gates); } TEST_F(escrow_tests, circuit_transfer) @@ -83,7 +83,7 @@ TEST_F(escrow_tests, circuit_transfer) // info("variables: ", builder.variables); info("failed?: ", builder.failed()); info("err: ", builder.err()); - info("n: ", builder.num_gates); + // info("n: ", builder.num_gates); } TEST_F(escrow_tests, circuit_withdraw) @@ -107,7 +107,7 @@ TEST_F(escrow_tests, circuit_withdraw) // info("variables: ", builder.variables); info("failed?: ", builder.failed()); info("err: ", builder.err()); - info("n: ", builder.num_gates); + // info("n: ", builder.num_gates); } } // namespace aztec3::circuits::apps::test_apps::escrow \ No newline at end of file diff --git a/circuits/cpp/src/aztec3/circuits/apps/test_apps/escrow/init.hpp b/circuits/cpp/src/aztec3/circuits/apps/test_apps/escrow/init.hpp index 30d5da1dbbcb..0f6f6a38610d 100644 --- a/circuits/cpp/src/aztec3/circuits/apps/test_apps/escrow/init.hpp +++ b/circuits/cpp/src/aztec3/circuits/apps/test_apps/escrow/init.hpp @@ -11,10 +11,14 @@ #include "aztec3/utils/types/convert.hpp" #include "aztec3/utils/types/native_types.hpp" +#include "barretenberg/proof_system/circuit_builder/circuit_simulator.hpp" +#include "barretenberg/stdlib/primitives/circuit_builders/circuit_builders_fwd.hpp" + namespace aztec3::circuits::apps::test_apps::escrow { // Builder -using C = UltraCircuitBuilder; +// WORKTODO: this is coupled to the circuit builder in the private kernel. +using C = CircuitSimulatorBN254; // Native and circuit types using CT = aztec3::utils::types::CircuitTypes; diff --git a/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/.test.cpp b/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/.test.cpp index ba7acefda62f..f689eb318939 100644 --- a/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/.test.cpp +++ b/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/.test.cpp @@ -56,7 +56,8 @@ TEST(private_to_private_function_call_tests, circuit_private_to_private_function // info("variables: ", fn1_builder.variables); info("failed?: ", fn1_builder.failed()); info("err: ", fn1_builder.err()); - info("n: ", fn1_builder.num_gates); + // info("n: ", fn1_builder.num_gates); + // WORKTODO: this test leads to a failing composer, but there are no expectations in the test. } } // namespace aztec3::circuits::apps::test_apps::private_to_private_function_call \ No newline at end of file diff --git a/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/function_2_1.cpp b/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/function_2_1.cpp index ac424411667e..7197abd6d9d4 100644 --- a/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/function_2_1.cpp +++ b/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/function_2_1.cpp @@ -41,7 +41,7 @@ void function_2_1(FunctionExecutionContext& exec_ctx, std::vector const& auto product = a * b * c; - CT::address const unique_person_who_may_initialise = 999999; + CT::address const unique_person_who_may_initialise = { msg_sender.context_, 999999 }; unique_person_who_may_initialise.assert_equal(msg_sender); diff --git a/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/init.hpp b/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/init.hpp index 7f2e42a70a47..129156199952 100644 --- a/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/init.hpp +++ b/circuits/cpp/src/aztec3/circuits/apps/test_apps/private_to_private_function_call/init.hpp @@ -13,7 +13,7 @@ namespace aztec3::circuits::apps::test_apps::private_to_private_function_call { // Builder -using C = UltraCircuitBuilder; +using C = CircuitSimulatorBN254; // Native and circuit types using CT = aztec3::utils::types::CircuitTypes; diff --git a/circuits/cpp/src/aztec3/circuits/kernel/private/c_bind.cpp b/circuits/cpp/src/aztec3/circuits/kernel/private/c_bind.cpp index 43e45c2e2401..e4e1a57bc795 100644 --- a/circuits/cpp/src/aztec3/circuits/kernel/private/c_bind.cpp +++ b/circuits/cpp/src/aztec3/circuits/kernel/private/c_bind.cpp @@ -12,7 +12,7 @@ #include namespace { -using Builder = UltraCircuitBuilder; +using Builder = CircuitSimulatorBN254; using NT = aztec3::utils::types::NativeTypes; using DummyBuilder = aztec3::utils::DummyCircuitBuilder; using aztec3::circuits::abis::PreviousKernelData; diff --git a/circuits/cpp/src/aztec3/circuits/kernel/private/init.hpp b/circuits/cpp/src/aztec3/circuits/kernel/private/init.hpp index 81866dedde7a..c1690fb476d8 100644 --- a/circuits/cpp/src/aztec3/circuits/kernel/private/init.hpp +++ b/circuits/cpp/src/aztec3/circuits/kernel/private/init.hpp @@ -7,9 +7,11 @@ #include "aztec3/utils/types/convert.hpp" #include "aztec3/utils/types/native_types.hpp" +#include "barretenberg/stdlib/primitives/circuit_builders/circuit_builders_fwd.hpp" + namespace aztec3::circuits::kernel::private_kernel { -using Builder = UltraCircuitBuilder; +using Builder = CircuitSimulatorBN254; using Aggregator = aztec3::circuits::recursion::Aggregator; diff --git a/circuits/cpp/src/aztec3/circuits/kernel/public/c_bind.cpp b/circuits/cpp/src/aztec3/circuits/kernel/public/c_bind.cpp index b15896d162d1..2286aad080b6 100644 --- a/circuits/cpp/src/aztec3/circuits/kernel/public/c_bind.cpp +++ b/circuits/cpp/src/aztec3/circuits/kernel/public/c_bind.cpp @@ -12,7 +12,7 @@ #include namespace { -using Builder = UltraCircuitBuilder; +using Builder = CircuitSimulatorBN254; using NT = aztec3::utils::types::NativeTypes; using DummyBuilder = aztec3::utils::DummyCircuitBuilder; using aztec3::circuits::abis::KernelCircuitPublicInputs; diff --git a/circuits/cpp/src/aztec3/circuits/kernel/public/init.hpp b/circuits/cpp/src/aztec3/circuits/kernel/public/init.hpp index 5a7e60acb778..8b877095910a 100644 --- a/circuits/cpp/src/aztec3/circuits/kernel/public/init.hpp +++ b/circuits/cpp/src/aztec3/circuits/kernel/public/init.hpp @@ -10,7 +10,7 @@ namespace aztec3::circuits::kernel::public_kernel { -using Builder = proof_system::UltraCircuitBuilder; +using Builder = proof_system::CircuitSimulatorBN254; using Aggregator = aztec3::circuits::recursion::Aggregator; diff --git a/circuits/cpp/src/aztec3/circuits/recursion/aggregator.hpp b/circuits/cpp/src/aztec3/circuits/recursion/aggregator.hpp index 343ba12e79e7..9c621bf77239 100644 --- a/circuits/cpp/src/aztec3/circuits/recursion/aggregator.hpp +++ b/circuits/cpp/src/aztec3/circuits/recursion/aggregator.hpp @@ -14,7 +14,7 @@ class Aggregator { const CT::AggregationObject& previous_aggregation_output = CT::AggregationObject()) { CT::AggregationObject result = - verify_proof(builder, vk, proof, previous_aggregation_output); + plonk::stdlib::recursion::verify_proof(builder, vk, proof, previous_aggregation_output); return result; } diff --git a/circuits/cpp/src/aztec3/circuits/recursion/init.hpp b/circuits/cpp/src/aztec3/circuits/recursion/init.hpp index 427d25f502da..fdf857dc94b7 100644 --- a/circuits/cpp/src/aztec3/circuits/recursion/init.hpp +++ b/circuits/cpp/src/aztec3/circuits/recursion/init.hpp @@ -3,11 +3,14 @@ #include "aztec3/utils/types/convert.hpp" #include "aztec3/utils/types/native_types.hpp" +#include "barretenberg/plonk/flavor/flavor.hpp" #include namespace aztec3::circuits::recursion { // Builder -using Builder = UltraCircuitBuilder; +using Flavor = proof_system::plonk::flavor::SimulatorBN254; +// using Flavor = proof_system::plonk::flavor::Ultra; +using Builder = typename Flavor::CircuitBuilder; // Generic types: using CT = aztec3::utils::types::CircuitTypes; @@ -15,7 +18,6 @@ using NT = aztec3::utils::types::NativeTypes; using aztec3::utils::types::to_ct; // Recursion types and methods -using plonk::stdlib::recursion::verify_proof; using transcript::Manifest; } // namespace aztec3::circuits::recursion \ No newline at end of file diff --git a/circuits/cpp/src/aztec3/circuits/rollup/base/c_bind.cpp b/circuits/cpp/src/aztec3/circuits/rollup/base/c_bind.cpp index 0b20a881e403..69c59d27800d 100644 --- a/circuits/cpp/src/aztec3/circuits/rollup/base/c_bind.cpp +++ b/circuits/cpp/src/aztec3/circuits/rollup/base/c_bind.cpp @@ -11,7 +11,7 @@ #include namespace { -using Builder = UltraCircuitBuilder; +using Builder = CircuitSimulatorBN254; using NT = aztec3::utils::types::NativeTypes; using DummyBuilder = aztec3::utils::DummyCircuitBuilder; using aztec3::circuits::abis::BaseOrMergeRollupPublicInputs; diff --git a/circuits/cpp/src/aztec3/circuits/rollup/root/c_bind.cpp b/circuits/cpp/src/aztec3/circuits/rollup/root/c_bind.cpp index 9bc1e7b66f7a..e05bbc5bf342 100644 --- a/circuits/cpp/src/aztec3/circuits/rollup/root/c_bind.cpp +++ b/circuits/cpp/src/aztec3/circuits/rollup/root/c_bind.cpp @@ -9,7 +9,7 @@ #include namespace { -using Builder = UltraCircuitBuilder; +using Builder = CircuitSimulatorBN254; using NT = aztec3::utils::types::NativeTypes; using DummyBuilder = aztec3::utils::DummyCircuitBuilder; using aztec3::circuits::rollup::native_root_rollup::root_rollup_circuit;