Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
permutation_lib.test.cpp
Go to the documentation of this file.
5#include <array>
6#include <gtest/gtest.h>
7
8using namespace bb;
9
10class PermutationHelperTests : public ::testing::Test {
11 protected:
13 using FF = typename Flavor::FF;
15
16 virtual void SetUp()
17 {
21
22 uint32_t v_1 = circuit_constructor.add_variable(fr(16 + 1));
23 uint32_t v_2 = circuit_constructor.add_variable(fr(16 + 2));
24 uint32_t v_3 = circuit_constructor.add_variable(fr(16 + 3));
25 uint32_t v_4 = circuit_constructor.add_variable(fr(16 + 4));
26 uint32_t v_5 = circuit_constructor.add_variable(fr(16 + 5));
27 uint32_t v_6 = circuit_constructor.add_variable(fr(16 + 6));
28 uint32_t v_7 = circuit_constructor.add_variable(fr(16 + 7));
29 uint32_t v_8 = circuit_constructor.add_variable(fr(16 + 8));
30 uint32_t v_9 = circuit_constructor.add_variable(fr(16 + 9));
31 uint32_t v_10 = circuit_constructor.add_variable(fr(16 + 10));
32 uint32_t v_11 = circuit_constructor.add_variable(fr(16 + 11));
33 uint32_t v_12 = circuit_constructor.add_variable(fr(16 + 12));
34
35 circuit_constructor.create_add_gate({ v_1, v_5, v_9, 0, 0, 0, 0 });
36 circuit_constructor.create_add_gate({ v_2, v_6, v_10, 0, 0, 0, 0 });
37 circuit_constructor.create_add_gate({ v_3, v_7, v_11, 0, 0, 0, 0 });
38 circuit_constructor.create_add_gate({ v_4, v_8, v_12, 0, 0, 0, 0 });
39
40 /* Execution trace:
41 w_l w_r w_o
42 ------------------------------
43 pub1_idx | pub1_idx | 0 <-- public inputs
44 pub2_idx | pub2_idx | 0 <-/
45 zero_idx | zero_idx | zero_idx <-- fix witness for 0
46 one_idx | zero_idx | zero_idx <-- fix witness for 1
47 one_idx | one_idx | one_idx <-- ensure nonzero selectors... TODO(Cody): redundant now
48 v_1 | v_5 | v_9
49 v_2 | v_6 | v_10
50 v_3 | v_7 | v_11
51 v_4 | v_8 | v_12
52
53 */
54
55 // construct_selector_polynomials<Flavor>(circuit_constructor, prover_instance.get());
56 }
57};
58
59TEST_F(PermutationHelperTests, ComputePermutationMapping)
60{
61 // TODO(#425) Flesh out these tests
62}
63
64TEST_F(PermutationHelperTests, ComputeHonkStyleSigmaLagrangePolynomialsFromMapping)
65{
66 // TODO(#425) Flesh out these tests
67}
Flavor::CircuitBuilder circuit_constructor
virtual uint32_t add_variable(const FF &in)
Add a variable to variables.
virtual uint32_t add_public_variable(const FF &in)
Add a public variable to variables.
void create_add_gate(const add_triple_< FF > &in)
Create an addition gate, where in.a * in.a_scaling + in.b * in.b_scaling + in.c * in....
Curve::ScalarField FF
std::filesystem::path bb_crs_path()
void init_file_crs_factory(const std::filesystem::path &path)
Entry point for Barretenberg command-line interface.
Definition api.hpp:5
TEST_F(IPATest, ChallengesAreZero)
Definition ipa.test.cpp:155
field< Bn254FrParams > fr
Definition fr.hpp:155
Contains various functions that help construct Honk Sigma and Id polynomials.