10#include <gtest/gtest.h>
33 static std::vector<std::string>
get_labels() {
return {
"None",
"Input",
"Output" }; }
40 switch (invalid_witness_target) {
43 witness_values[constraint.
state[0].index] +=
bb::fr(1);
60 witness_values.emplace_back(
bb::fr(0));
69 auto input_indices = add_to_witness_and_track_indices<State, 4>(witness_values, input_state);
70 auto output_indices = add_to_witness_and_track_indices<State, 4>(witness_values, output_state);
78 .result = { output_indices[0], output_indices[1], output_indices[2], output_indices[3] },
83template <
class Builder>
89using BuilderTypes = testing::Types<UltraCircuitBuilder, MegaCircuitBuilder>;
96 TestFixture::template test_vk_independence<Flavor>();
102 [[maybe_unused]] std::vector<std::string> _ = TestFixture::test_tampering();
#define BB_DISABLE_ASSERTS()
static void SetUpTestSuite()
void invalidate_witness(Poseidon2Constraint &constraint, WitnessVector &witness_values, const InvalidWitness::Target &invalid_witness_target)
void generate_constraints(Poseidon2Constraint &poseidon2_constraint, WitnessVector &witness_values)
Generate valid Poseidon2 constraint with correct witness values.
Applies the Poseidon2 permutation function from https://eprint.iacr.org/2023/323.
static constexpr State permutation(const State &input)
Native form of Poseidon2 permutation from https://eprint.iacr.org/2023/323.
std::array< FF, t > State
std::filesystem::path bb_crs_path()
void init_file_crs_factory(const std::filesystem::path &path)
TYPED_TEST_SUITE(BoomerangRecursiveVerifierTest, Flavors)
Entry point for Barretenberg command-line interface.
field< Bn254FrParams > fr
TYPED_TEST(ShpleminiTest, CorrectnessOfMultivariateClaimBatching)
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
::testing::Types< UltraCircuitBuilder, MegaCircuitBuilder > BuilderTypes
static std::vector< Target > get_all()
static std::vector< std::string > get_labels()