From 6b94996b9907ad32f878b2e8ec08815e16e3a516 Mon Sep 17 00:00:00 2001 From: Maddiaa0 <47148561+Maddiaa0@users.noreply.github.com> Date: Sat, 4 Nov 2023 02:14:37 +0000 Subject: [PATCH] fix: rework pub inputs thing --- barretenberg/acir_tests/flows/sol.sh | 6 ------ barretenberg/acir_tests/sol-test/src/index.js | 10 +++++----- barretenberg/build-system | 1 - barretenberg/cpp/src/barretenberg/bb/main.cpp | 2 -- .../src/barretenberg/dsl/acir_proofs/acir_composer.cpp | 1 - .../src/barretenberg/dsl/acir_proofs/acir_composer.hpp | 2 -- .../circuit_builder/ultra_circuit_builder.hpp | 2 -- 7 files changed, 5 insertions(+), 19 deletions(-) delete mode 160000 barretenberg/build-system diff --git a/barretenberg/acir_tests/flows/sol.sh b/barretenberg/acir_tests/flows/sol.sh index 3b66110f9f25..d95c9039eea1 100755 --- a/barretenberg/acir_tests/flows/sol.sh +++ b/barretenberg/acir_tests/flows/sol.sh @@ -4,11 +4,6 @@ set -eu export PROOF="$(pwd)/proof" export PROOF_AS_FIELDS="$(pwd)/proof_fields.json" -# Get the number of public inputs in the circuit -gates=$($BIN gates -v 2>&1 | tr -d '\0') -NUM_PUBLIC_INPUTS=$(echo "$gates" | awk '/public inputs: [0-9]+/ {print $3}') -echo "Number of public inputs: $NUM_PUBLIC_INPUTS" - # Create a proof, write the solidity contract, write the proof as fields in order to extract the public inputs $BIN prove -o proof $BIN write_vk -o vk @@ -20,7 +15,6 @@ export KEY_PATH="$(pwd)/Key.sol" export VERIFIER_PATH=$(realpath "../../sol-test/Verifier.sol") export TEST_PATH=$(realpath "../../sol-test/Test.sol") export BASE_PATH=$(realpath "../../../sol/src/ultra/BaseUltraVerifier.sol") -export NUM_PUBLIC_INPUTS=$NUM_PUBLIC_INPUTS # Use solcjs to compile the generated key contract with the template verifier and test contract # index.js will start an anvil, on a random port diff --git a/barretenberg/acir_tests/sol-test/src/index.js b/barretenberg/acir_tests/sol-test/src/index.js index a94de01f142a..6f4c1444f122 100644 --- a/barretenberg/acir_tests/sol-test/src/index.js +++ b/barretenberg/acir_tests/sol-test/src/index.js @@ -111,14 +111,15 @@ const deploy = async (signer) => { * * @param {number} numPublicInputs * @param {Array} proofAsFields - * @returns {Array} + * @returns {Array,number>} */ -const readPublicInputs = (numPublicInputs, proofAsFields) => { +const readPublicInputs = (proofAsFields) => { const publicInputs = []; + const numPublicInputs = proofAsFields.length - 93; for (let i = 0; i < numPublicInputs; i++) { publicInputs.push(proofAsFields[i]); } - return publicInputs; + return [numPublicInputs, publicInputs]; } // start anvil @@ -142,8 +143,7 @@ const killAnvil = () => { try { const proofAsFieldsPath = getEnvVar("PROOF_AS_FIELDS"); const proofAsFields = readFileSync(proofAsFieldsPath); - const numPublicInputs = +getEnvVar("NUM_PUBLIC_INPUTS"); - const publicInputs = readPublicInputs(numPublicInputs, JSON.parse(proofAsFields.toString())); + const [numPublicInputs, publicInputs] = readPublicInputs(JSON.parse(proofAsFields.toString())); const proofPath = getEnvVar("PROOF"); const proof = readFileSync(proofPath); diff --git a/barretenberg/build-system b/barretenberg/build-system deleted file mode 160000 index a109f3aef28c..000000000000 --- a/barretenberg/build-system +++ /dev/null @@ -1 +0,0 @@ -Subproject commit a109f3aef28cea4a50481cdf2d74fc3909212c0b diff --git a/barretenberg/cpp/src/barretenberg/bb/main.cpp b/barretenberg/cpp/src/barretenberg/bb/main.cpp index a7de3b8f289d..69834bdff8cd 100644 --- a/barretenberg/cpp/src/barretenberg/bb/main.cpp +++ b/barretenberg/cpp/src/barretenberg/bb/main.cpp @@ -141,11 +141,9 @@ void gateCount(const std::string& bytecodePath) { auto constraint_system = get_constraint_system(bytecodePath); auto acir_composer = init(constraint_system); - auto num_public_inputs = acir_composer.get_num_public_inputs(); auto gate_count = acir_composer.get_total_circuit_size(); writeUint64AsRawBytesToStdout(static_cast(gate_count)); - vinfo("public inputs: ", num_public_inputs); vinfo("gate count: ", gate_count); } diff --git a/barretenberg/cpp/src/barretenberg/dsl/acir_proofs/acir_composer.cpp b/barretenberg/cpp/src/barretenberg/dsl/acir_proofs/acir_composer.cpp index 8464d9e3f0cf..5f7cee439c62 100644 --- a/barretenberg/cpp/src/barretenberg/dsl/acir_proofs/acir_composer.cpp +++ b/barretenberg/cpp/src/barretenberg/dsl/acir_proofs/acir_composer.cpp @@ -24,7 +24,6 @@ void AcirComposer::create_circuit(acir_format::acir_format& constraint_system) vinfo("building circuit..."); builder_ = acir_format::create_circuit(constraint_system, size_hint_); exact_circuit_size_ = builder_.get_num_gates(); - num_public_inputs_ = builder_.get_num_public_inputs(); total_circuit_size_ = builder_.get_total_circuit_size(); circuit_subgroup_size_ = builder_.get_circuit_subgroup_size(total_circuit_size_); size_hint_ = circuit_subgroup_size_; diff --git a/barretenberg/cpp/src/barretenberg/dsl/acir_proofs/acir_composer.hpp b/barretenberg/cpp/src/barretenberg/dsl/acir_proofs/acir_composer.hpp index 6986661b6270..32b678268e38 100644 --- a/barretenberg/cpp/src/barretenberg/dsl/acir_proofs/acir_composer.hpp +++ b/barretenberg/cpp/src/barretenberg/dsl/acir_proofs/acir_composer.hpp @@ -27,7 +27,6 @@ class AcirComposer { bool verify_proof(std::vector const& proof, bool is_recursive); std::string get_solidity_verifier(); - size_t get_num_public_inputs() { return num_public_inputs_; }; size_t get_exact_circuit_size() { return exact_circuit_size_; }; size_t get_total_circuit_size() { return total_circuit_size_; }; size_t get_circuit_subgroup_size() { return circuit_subgroup_size_; }; @@ -41,7 +40,6 @@ class AcirComposer { acir_format::Builder builder_; size_t size_hint_; size_t exact_circuit_size_; - size_t num_public_inputs_; size_t total_circuit_size_; size_t circuit_subgroup_size_; std::shared_ptr proving_key_; diff --git a/barretenberg/cpp/src/barretenberg/proof_system/circuit_builder/ultra_circuit_builder.hpp b/barretenberg/cpp/src/barretenberg/proof_system/circuit_builder/ultra_circuit_builder.hpp index e0335fd7d5b5..9c3f25ee6090 100644 --- a/barretenberg/cpp/src/barretenberg/proof_system/circuit_builder/ultra_circuit_builder.hpp +++ b/barretenberg/cpp/src/barretenberg/proof_system/circuit_builder/ultra_circuit_builder.hpp @@ -834,8 +834,6 @@ template class UltraCircuitBuilder_ : public CircuitBuilderBasepublic_inputs.size(); } - /**x * @brief Print the number and composition of gates in the circuit *