3#include "barretenberg/plonk/proof_system/proving_key/proving_key.hpp"
4#include "barretenberg/plonk/transcript/transcript.hpp"
5#include "barretenberg/proof_system/circuit_builder/standard_circuit_builder.hpp"
6#include "barretenberg/proof_system/circuit_builder/ultra_circuit_builder.hpp"
8namespace proof_system::plonk::flavor {
16 static constexpr size_t NUM_WIRES = CircuitBuilder::NUM_WIRES;
18 static constexpr bool has_zero_row =
false;
28 static constexpr size_t NUM_WIRES = CircuitBuilder::NUM_WIRES;
30 static constexpr bool has_zero_row =
false;
42 constexpr size_t g1_size = 64;
43 constexpr size_t fr_size = 32;
44 const size_t public_input_size = fr_size * num_public_inputs;
49 {
"circuit_size", 4,
true },
50 {
"public_input_size", 4,
true } },
57 {
"public_inputs", public_input_size,
false },
58 {
"W_1", g1_size,
false },
59 {
"W_2", g1_size,
false },
60 {
"W_3", g1_size,
false } },
67 {
"W_4", g1_size,
false },
68 {
"S", g1_size,
false } },
75 {
"Z_PERM", g1_size,
false },
76 {
"Z_LOOKUP", g1_size,
false } },
83 {
"T_1", g1_size,
false },
84 {
"T_2", g1_size,
false },
85 {
"T_3", g1_size,
false },
86 {
"T_4", g1_size,
false } },
95 {
"t", fr_size,
true, -1 },
96 {
"w_1", fr_size,
false, 0 },
97 {
"w_2", fr_size,
false, 1 },
98 {
"w_3", fr_size,
false, 2 },
99 {
"w_4", fr_size,
false, 3 },
100 {
"s", fr_size,
false, 4 },
101 {
"z_perm", fr_size,
false, 5 },
102 {
"z_lookup", fr_size,
false, 6 },
103 {
"q_1", fr_size,
false, 7 },
104 {
"q_2", fr_size,
false, 8 },
105 {
"q_3", fr_size,
false, 9 },
106 {
"q_4", fr_size,
false, 10 },
107 {
"q_m", fr_size,
false, 11 },
108 {
"q_c", fr_size,
false, 12 },
109 {
"q_arith", fr_size,
false, 13 },
110 {
"q_sort", fr_size,
false, 14 },
111 {
"q_elliptic", fr_size,
false, 15 },
112 {
"q_aux", fr_size,
false, 16 },
113 {
"sigma_1", fr_size,
false, 17 },
114 {
"sigma_2", fr_size,
false, 18 },
115 {
"sigma_3", fr_size,
false, 19 },
116 {
"sigma_4", fr_size,
false, 20 },
117 {
"table_value_1", fr_size,
false, 21 },
118 {
"table_value_2", fr_size,
false, 22 },
119 {
"table_value_3", fr_size,
false, 23 },
120 {
"table_value_4", fr_size,
false, 24 },
121 {
"table_type", fr_size,
false, 25 },
122 {
"id_1", fr_size,
false, 26 },
123 {
"id_2", fr_size,
false, 27 },
124 {
"id_3", fr_size,
false, 28 },
125 {
"id_4", fr_size,
false, 29 },
126 {
"w_1_omega", fr_size,
false, 0 },
127 {
"w_2_omega", fr_size,
false, 1 },
128 {
"w_3_omega", fr_size,
false, 2 },
129 {
"w_4_omega", fr_size,
false, 3 },
130 {
"s_omega", fr_size,
false, 4 },
131 {
"z_perm_omega", fr_size,
false, 5 },
132 {
"z_lookup_omega", fr_size,
false, 6 },
133 {
"table_value_1_omega", fr_size,
false, 21 },
134 {
"table_value_2_omega", fr_size,
false, 22 },
135 {
"table_value_3_omega", fr_size,
false, 23 },
136 {
"table_value_4_omega", fr_size,
false, 24 },
145 {
"PI_Z", g1_size,
false },
146 {
"PI_Z_OMEGA", g1_size,
false } },
Definition: polynomial.hpp:12
Definition: standard_circuit_builder.hpp:12
Definition: ultra_circuit_builder.hpp:31
Definition: plonk_flavors.hpp:9
Definition: plonk_flavors.hpp:21
static transcript::Manifest create_manifest(const size_t num_public_inputs)
Create a manifest object.
Definition: plonk_flavors.hpp:39
Definition: manifest.hpp:11
Base class templates for structures that contain data parameterized by the fundamental polynomials of...
Definition: proving_key.hpp:38
Definition: manifest.hpp:28