Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include "barretenberg/common/serialize.hpp"
#include "barretenberg/ecc/curves/bn254/fr.hpp"
#include "barretenberg/flavor/flavor.hpp"
#include "barretenberg/flavor/ultra_rollup_flavor.hpp"
#include "barretenberg/honk/library/grand_product_delta.hpp"
#include "barretenberg/numeric/uint256/uint256.hpp"
#include "barretenberg/relations/permutation_relation.hpp"
#include "barretenberg/relations/relation_parameters.hpp"
#include "barretenberg/stdlib/primitives/curves/grumpkin.hpp"
#include "barretenberg/stdlib/primitives/pairing_points.hpp"
#include "barretenberg/stdlib/special_public_inputs/special_public_inputs.hpp"
#include "barretenberg/stdlib_circuit_builders/mock_circuits.hpp"
#include "barretenberg/stdlib_circuit_builders/plookup_tables/fixed_base/fixed_base.hpp"
#include "barretenberg/stdlib_circuit_builders/plookup_tables/types.hpp"
#include "barretenberg/stdlib_circuit_builders/ultra_circuit_builder.hpp"
#include "barretenberg/sumcheck/sumcheck_round.hpp"
#include "barretenberg/ultra_honk/ultra_prover.hpp"
#include "barretenberg/ultra_honk/ultra_verifier.hpp"
#include <gtest/gtest.h>
Go to the source code of this file.
Classes | |
class | UltraHonkTests< Flavor > |
Typedefs | |
using | AggregationState = stdlib::recursion::PairingPoints< UltraCircuitBuilder > |
using | FlavorTypes = testing::Types< UltraFlavor, UltraZKFlavor, UltraKeccakFlavor, UltraKeccakZKFlavor, UltraRollupFlavor > |
Functions | |
TYPED_TEST_SUITE (UltraHonkTests, FlavorTypes) | |
TYPED_TEST (UltraHonkTests, ProofLengthCheck) | |
Check that size of a ultra honk proof matches the corresponding constant. | |
TYPED_TEST (UltraHonkTests, ANonZeroPolynomialIsAGoodPolynomial) | |
A quick test to ensure that none of our polynomials are identically zero. | |
TYPED_TEST (UltraHonkTests, PublicInputs) | |
Test simple circuit with public inputs. | |
TYPED_TEST (UltraHonkTests, XorConstraint) | |
TYPED_TEST (UltraHonkTests, CreateGatesFromPlookupAccumulators) | |
TYPED_TEST (UltraHonkTests, LookupFailure) | |
Test various failure modes for the lookup relation via bad input polynomials. | |
TYPED_TEST (UltraHonkTests, TestNoLookupProof) | |
TYPED_TEST (UltraHonkTests, TestEllipticGate) | |
TYPED_TEST (UltraHonkTests, NonTrivialTagPermutation) | |
TYPED_TEST (UltraHonkTests, NonTrivialTagPermutationAndCycles) | |
TYPED_TEST (UltraHonkTests, BadTagPermutation) | |
TYPED_TEST (UltraHonkTests, SortWidget) | |
TYPED_TEST (UltraHonkTests, SortWithEdgesGate) | |
TYPED_TEST (UltraHonkTests, RangeConstraint) | |
TYPED_TEST (UltraHonkTests, RangeWithGates) | |
TYPED_TEST (UltraHonkTests, RangeWithGatesWhereRangeIsNotAPowerOfTwo) | |
TYPED_TEST (UltraHonkTests, SortWidgetComplex) | |
TYPED_TEST (UltraHonkTests, SortWidgetNeg) | |
TYPED_TEST (UltraHonkTests, ComposedRangeConstraint) | |
TYPED_TEST (UltraHonkTests, NonNativeFieldMultiplication) | |
TYPED_TEST (UltraHonkTests, Rom) | |
TYPED_TEST (UltraHonkTests, Ram) | |
TYPED_TEST (UltraHonkTests, RangeChecksOnDuplicates) | |
TYPED_TEST (UltraHonkTests, RangeConstraintSmallVariable) | |
Definition at line 24 of file ultra_honk.test.cpp.
using FlavorTypes = testing::Types<UltraFlavor, UltraZKFlavor, UltraKeccakFlavor, UltraKeccakZKFlavor, UltraRollupFlavor> |
Definition at line 89 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
ANonZeroPolynomialIsAGoodPolynomial | |||
) |
A quick test to ensure that none of our polynomials are identically zero.
Definition at line 132 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
BadTagPermutation | |||
) |
Definition at line 477 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
ComposedRangeConstraint | |||
) |
Definition at line 815 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
CreateGatesFromPlookupAccumulators | |||
) |
Definition at line 208 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
LookupFailure | |||
) |
Test various failure modes for the lookup relation via bad input polynomials.
Definition at line 273 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
NonNativeFieldMultiplication | |||
) |
Definition at line 830 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
NonTrivialTagPermutation | |||
) |
Definition at line 411 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
NonTrivialTagPermutationAndCycles | |||
) |
Definition at line 439 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
ProofLengthCheck | |||
) |
Check that size of a ultra honk proof matches the corresponding constant.
If this test FAILS, then the following (non-exhaustive) list should probably be updated as well:
Definition at line 104 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
PublicInputs | |||
) |
Test simple circuit with public inputs.
Definition at line 168 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
Ram | |||
) |
Definition at line 928 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
RangeChecksOnDuplicates | |||
) |
Definition at line 993 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
RangeConstraint | |||
) |
Definition at line 645 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
RangeConstraintSmallVariable | |||
) |
Definition at line 1034 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
RangeWithGates | |||
) |
Definition at line 726 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
RangeWithGatesWhereRangeIsNotAPowerOfTwo | |||
) |
Definition at line 746 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
Rom | |||
) |
Definition at line 886 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
SortWidget | |||
) |
Definition at line 522 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
SortWidgetComplex | |||
) |
Definition at line 766 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
SortWidgetNeg | |||
) |
Definition at line 796 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
SortWithEdgesGate | |||
) |
Definition at line 541 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
TestEllipticGate | |||
) |
Definition at line 376 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
TestNoLookupProof | |||
) |
Definition at line 353 of file ultra_honk.test.cpp.
TYPED_TEST | ( | UltraHonkTests | , |
XorConstraint | |||
) |
Definition at line 180 of file ultra_honk.test.cpp.
TYPED_TEST_SUITE | ( | UltraHonkTests | , |
FlavorTypes | |||
) |