|
Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include "barretenberg/dsl/acir_format/hypernova_recursion_constraint.hpp"#include "acir_format.hpp"#include "acir_format_mocks.hpp"#include "barretenberg/bbapi/bbapi_shared.hpp"#include "barretenberg/chonk/chonk.hpp"#include "barretenberg/dsl/acir_format/gate_count_constants.hpp"#include "barretenberg/dsl/acir_format/mock_verifier_inputs.hpp"#include "barretenberg/goblin/mock_circuits.hpp"#include "barretenberg/ultra_honk/prover_instance.hpp"#include "barretenberg/ultra_honk/ultra_prover.hpp"#include "barretenberg/ultra_honk/ultra_verifier.hpp"#include "honk_recursion_constraint.hpp"#include "proof_surgeon.hpp"#include <gtest/gtest.h>#include <vector>Go to the source code of this file.
Classes | |
| class | HypernovaRecursionConstraintTest |
Functions | |
| TEST_F (HypernovaRecursionConstraintTest, MockMergeProofSize) | |
| Check that the size of a mock merge proof matches expectation. | |
| TEST_F (HypernovaRecursionConstraintTest, AccumulateSingleApp) | |
| Test IVC accumulation of a one app and one kernel; The kernel includes a recursive oink verification for the app, specified via an ACIR RecursionConstraint. | |
| TEST_F (HypernovaRecursionConstraintTest, AccumulateTwoApps) | |
| Test IVC accumulation of two apps and two kernels; The first kernel contains a recursive oink verification and the second contains two recursive HN verifications, all specified via ACIR RecursionConstraints. | |
| TEST_F (HypernovaRecursionConstraintTest, GenerateInitKernelVKFromConstraints) | |
| TEST_F (HypernovaRecursionConstraintTest, GenerateResetKernelVKFromConstraints) | |
| TEST_F (HypernovaRecursionConstraintTest, GenerateTailKernelVKFromConstraints) | |
| TEST_F (HypernovaRecursionConstraintTest, GenerateInnerKernelVKFromConstraints) | |
| TEST_F (HypernovaRecursionConstraintTest, GenerateHidingKernelVKFromConstraints) | |
| TEST_F (HypernovaRecursionConstraintTest, RecursiveVerifierAppCircuit) | |
| Test IVC accumulation of a one app and one kernel. The app includes a UltraHonk Recursive Verifier. | |
| TEST_F (HypernovaRecursionConstraintTest, RecursiveVerifierAppCircuitFailure) | |
| Test IVC accumulation of a one app and one kernel. The app includes a UltraHonk Recursive Verifier that verifies an invalid proof. | |
| TEST_F (HypernovaRecursionConstraintTest, InitKernelGateCount) | |
| Test gate count and ECC rows for init kernel (verifies OINK proof) | |
| TEST_F (HypernovaRecursionConstraintTest, InnerKernelGateCount) | |
| Test gate count and ECC rows for inner kernel (verifies HN proof for previous kernel + HN for app) | |
| TEST_F (HypernovaRecursionConstraintTest, TailKernelGateCount) | |
| Test gate count and ECC rows for tail kernel (verifies HN_TAIL proof) | |
| TEST_F (HypernovaRecursionConstraintTest, HidingKernelGateCount) | |
| Test gate count and ECC rows for hiding kernel (verifies HN_FINAL proof) | |
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| AccumulateSingleApp | |||
| ) |
Test IVC accumulation of a one app and one kernel; The kernel includes a recursive oink verification for the app, specified via an ACIR RecursionConstraint.
Definition at line 295 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| AccumulateTwoApps | |||
| ) |
Test IVC accumulation of two apps and two kernels; The first kernel contains a recursive oink verification and the second contains two recursive HN verifications, all specified via ACIR RecursionConstraints.
Definition at line 316 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| GenerateHidingKernelVKFromConstraints | |||
| ) |
Definition at line 513 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| GenerateInitKernelVKFromConstraints | |||
| ) |
Definition at line 343 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| GenerateInnerKernelVKFromConstraints | |||
| ) |
Definition at line 462 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| GenerateResetKernelVKFromConstraints | |||
| ) |
Definition at line 377 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| GenerateTailKernelVKFromConstraints | |||
| ) |
Definition at line 417 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| HidingKernelGateCount | |||
| ) |
Test gate count and ECC rows for hiding kernel (verifies HN_FINAL proof)
Definition at line 704 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| InitKernelGateCount | |||
| ) |
Test gate count and ECC rows for init kernel (verifies OINK proof)
Definition at line 607 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| InnerKernelGateCount | |||
| ) |
Test gate count and ECC rows for inner kernel (verifies HN proof for previous kernel + HN for app)
Definition at line 639 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| MockMergeProofSize | |||
| ) |
Check that the size of a mock merge proof matches expectation.
Definition at line 285 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| RecursiveVerifierAppCircuit | |||
| ) |
Test IVC accumulation of a one app and one kernel. The app includes a UltraHonk Recursive Verifier.
Definition at line 560 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| RecursiveVerifierAppCircuitFailure | |||
| ) |
Test IVC accumulation of a one app and one kernel. The app includes a UltraHonk Recursive Verifier that verifies an invalid proof.
Definition at line 583 of file hypernova_recursion_constraint.test.cpp.
| TEST_F | ( | HypernovaRecursionConstraintTest | , |
| TailKernelGateCount | |||
| ) |
Test gate count and ECC rows for tail kernel (verifies HN_TAIL proof)
Definition at line 672 of file hypernova_recursion_constraint.test.cpp.