Skip to content
This repository was archived by the owner on Feb 17, 2025. It is now read-only.

Commit c01092c

Browse files
akokoshnIluvmagick
akokoshn
authored andcommitted
Allow modify input by using all_vars()
1 parent ef683d6 commit c01092c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+95
-92
lines changed

include/nil/blueprint/components/algebra/curves/edwards/plonk/non_native/bool_scalar_multiplication.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ namespace nil {
9898
var_ec_point T;
9999
var k;
100100

101-
std::vector<var> all_vars() const {
101+
std::vector<std::reference_wrapper<var>> all_vars() {
102102
return {T.x[0], T.x[1], T.x[2], T.x[3],
103103
T.y[0], T.y[1], T.y[2], T.y[3],
104104
k};

include/nil/blueprint/components/algebra/curves/edwards/plonk/non_native/complete_addition.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ namespace nil {
125125
var_ec_point T;
126126
var_ec_point R;
127127

128-
std::vector<var> all_vars() const {
128+
std::vector<std::reference_wrapper<var>> all_vars() {
129129
return {T.x[0], T.x[1], T.x[2], T.x[3], T.y[0], T.y[1], T.y[2], T.y[3],
130130
R.x[0], R.x[1], R.x[2], R.x[3], R.y[0], R.y[1], R.y[2], R.y[3]};
131131
}

include/nil/blueprint/components/algebra/curves/edwards/plonk/non_native/doubling.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ namespace nil {
120120

121121
var_ec_point T;
122122

123-
std::vector<var> all_vars() const {
123+
std::vector<std::reference_wrapper<var>> all_vars() {
124124
return {T.x[0], T.x[1], T.x[2], T.x[3], T.y[0], T.y[1], T.y[2], T.y[3]};
125125
}
126126
};

include/nil/blueprint/components/algebra/curves/edwards/plonk/non_native/scalar_non_native_range.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ namespace nil {
8686
struct input_type {
8787
var k;
8888

89-
std::vector<var> all_vars() const {
89+
std::vector<std::reference_wrapper<var>> all_vars() {
9090
return {k};
9191
}
9292
};

include/nil/blueprint/components/algebra/curves/edwards/plonk/non_native/variable_base_multiplication.hpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ namespace nil {
8888

8989
static gate_manifest get_gate_manifest(std::size_t witness_amount,
9090
std::size_t lookup_column_amount,
91-
std::size_t bits_amount) {
91+
std::size_t bits_amount, bit_shift_mode mode) {
9292
static gate_manifest manifest =
9393
gate_manifest(gate_manifest_type())
9494
.merge_with(
@@ -113,7 +113,7 @@ namespace nil {
113113

114114
constexpr static std::size_t get_rows_amount(std::size_t witness_amount,
115115
std::size_t lookup_column_amount,
116-
std::size_t bits_amount) {
116+
std::size_t bits_amount, bit_shift_mode mode) {
117117
return rows_amount_internal(witness_amount, lookup_column_amount, bits_amount);
118118
}
119119

@@ -136,7 +136,7 @@ namespace nil {
136136
var_ec_point T;
137137
var k;
138138

139-
std::vector<var> all_vars() const {
139+
std::vector<std::reference_wrapper<var>> all_vars() {
140140
return {T.x[0], T.x[1], T.x[2], T.x[3], T.y[0], T.y[1], T.y[2], T.y[3], k};
141141
}
142142
};

include/nil/blueprint/components/algebra/curves/edwards/plonk/non_native/variable_base_multiplication_per_bit.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ namespace nil {
135135
var_ec_point R;
136136
var k;
137137

138-
std::vector<var> all_vars() const {
138+
std::vector<std::reference_wrapper<var>> all_vars() {
139139
return {T.x[0], T.x[1], T.x[2], T.x[3], T.y[0], T.y[1], T.y[2], T.y[3],
140140
R.x[0], R.x[1], R.x[2], R.x[3], R.y[0], R.y[1], R.y[2], R.y[3],
141141
k};

include/nil/blueprint/components/algebra/curves/pasta/plonk/endo_scalar.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ namespace nil {
130130
struct input_type {
131131
var scalar;
132132

133-
std::vector<var> all_vars() const {
133+
std::vector<std::reference_wrapper<var>> all_vars() {
134134
return {scalar};
135135
}
136136
};

include/nil/blueprint/components/algebra/curves/pasta/plonk/unified_addition.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ namespace nil {
9595
var_ec_point P;
9696
var_ec_point Q;
9797

98-
std::vector<var> all_vars() const {
98+
std::vector<std::reference_wrapper<var>> all_vars() {
9999
return {P.x, P.y, Q.x, Q.y};
100100
}
101101
};

include/nil/blueprint/components/algebra/curves/pasta/plonk/variable_base_scalar_mul.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ namespace nil {
174174
input_type(var_ec_point _T, var _b): T(_T), b(_b) {};
175175
input_type(var_ec_point _T, var _b, var _b_high): T(_T), b(_b), b_high(_b_high) {};
176176

177-
std::vector<var> all_vars() const {
177+
std::vector<std::reference_wrapper<var>> all_vars() {
178178
if (std::is_same<CurveType,nil::crypto3::algebra::curves::pallas>::value) {
179179
return {T.x, T.y, b, b_high};
180180
} else {

include/nil/blueprint/components/algebra/fields/plonk/addition.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ namespace nil {
9494
var x = var(0, 0, false);
9595
var y = var(0, 0, false);
9696

97-
std::vector<var> all_vars() const {
97+
std::vector<std::reference_wrapper<var>> all_vars() {
9898
return {x, y};
9999
}
100100
};

include/nil/blueprint/components/algebra/fields/plonk/bit_shift_constant.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ namespace nil {
151151
struct input_type {
152152
var input;
153153

154-
std::vector<var> all_vars() const {
154+
std::vector<std::reference_wrapper<var>> all_vars() {
155155
return {input};
156156
}
157157
};

include/nil/blueprint/components/algebra/fields/plonk/division.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ namespace nil {
9393
var x = var(0, 0, false);
9494
var y = var(0, 0, false);
9595

96-
std::vector<var> all_vars() const {
96+
std::vector<std::reference_wrapper<var>> all_vars() {
9797
return {x, y};
9898
}
9999
};

include/nil/blueprint/components/algebra/fields/plonk/division_or_zero.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ namespace nil {
9292
var x = var(0, 0, false);
9393
var y = var(0, 0, false);
9494

95-
std::vector<var> all_vars() const {
95+
std::vector<std::reference_wrapper<var>> all_vars() {
9696
return {x, y};
9797
}
9898
};

include/nil/blueprint/components/algebra/fields/plonk/exponentiation.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ namespace nil {
143143
var base;
144144
var exponent;
145145

146-
std::vector<var> all_vars() const {
146+
std::vector<std::reference_wrapper<var>> all_vars() {
147147
return {base, exponent};
148148
}
149149
};

include/nil/blueprint/components/algebra/fields/plonk/linear_interpolation.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ namespace nil {
8787
struct input_type {
8888
var x0, z0, x1, z1;
8989

90-
std::vector<var> all_vars() const {
90+
std::vector<std::reference_wrapper<var>> all_vars() {
9191
return {x0, z0, x1, z1};
9292
}
9393
};

include/nil/blueprint/components/algebra/fields/plonk/logic_and_flag.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ namespace nil {
110110
var x;
111111
var y;
112112

113-
std::vector<var> all_vars() const {
113+
std::vector<std::reference_wrapper<var>> all_vars() {
114114
return {x, y};
115115
}
116116
};

include/nil/blueprint/components/algebra/fields/plonk/logic_or_flag.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ namespace nil {
118118
var x;
119119
var y;
120120

121-
std::vector<var> all_vars() const {
121+
std::vector<std::reference_wrapper<var>> all_vars() {
122122
return {x, y};
123123
}
124124
};

include/nil/blueprint/components/algebra/fields/plonk/multiplication.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ namespace nil {
9595
var x = var(0, 0, false);
9696
var y = var(0, 0, false);
9797

98-
std::vector<var> all_vars() const {
98+
std::vector<std::reference_wrapper<var>> all_vars() {
9999
return {x, y};
100100
}
101101
};

include/nil/blueprint/components/algebra/fields/plonk/multiplication_by_constant.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ namespace nil {
9696
struct input_type {
9797
var x = var(0, 0, false);
9898

99-
std::vector<var> all_vars() const {
99+
std::vector<std::reference_wrapper<var>> all_vars() {
100100
return {x};
101101
}
102102
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/addition.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ namespace nil {
119119
typename non_native_policy_type::template field<operating_field_type>::non_native_var_type A;
120120
typename non_native_policy_type::template field<operating_field_type>::non_native_var_type B;
121121

122-
std::vector<var> all_vars() const {
122+
std::vector<std::reference_wrapper<var>> all_vars() {
123123
return {A[0], A[1], A[2], A[3], B[0], B[1], B[2], B[3]};
124124
}
125125
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/bit_composition.hpp

+8-4
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ namespace nil {
8787
static gate_manifest get_gate_manifest(std::size_t witness_amount,
8888
std::size_t lookup_column_amount,
8989
std::size_t bits_amount,
90-
bool check_input) {
90+
bool check_input, bit_composition_mode mode = bit_composition_mode::MSB) {
9191
gate_manifest manifest =
9292
gate_manifest(gate_manifest_type())
9393
.merge_with(component_type::get_gate_manifest(witness_amount, lookup_column_amount,
@@ -101,7 +101,7 @@ namespace nil {
101101

102102
constexpr static std::size_t get_rows_amount(std::size_t witness_amount,
103103
std::size_t lookup_column_amount,
104-
std::size_t bits_amount, bool check_input) {
104+
std::size_t bits_amount, bool check_input, bit_composition_mode mode = bit_composition_mode::MSB) {
105105
return component_type::get_rows_amount(witness_amount, lookup_column_amount,
106106
bits_amount, check_input);
107107
}
@@ -111,8 +111,12 @@ namespace nil {
111111
struct input_type {
112112
std::vector<var> bits;
113113

114-
std::vector<var> all_vars() const {
115-
return bits;
114+
std::vector<std::reference_wrapper<var>> all_vars() {
115+
std::vector<std::reference_wrapper<var>> res;
116+
for (auto& it : bits) {
117+
res.push_back(it);
118+
}
119+
return res;
116120
}
117121
};
118122

include/nil/blueprint/components/algebra/fields/plonk/non_native/bit_decomposition.hpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ namespace nil {
8484

8585
static gate_manifest get_gate_manifest(std::size_t witness_amount,
8686
std::size_t lookup_column_amount,
87-
std::size_t bits_amount) {
87+
std::size_t bits_amount, bit_composition_mode mode = bit_composition_mode::MSB) {
8888
gate_manifest manifest =
8989
gate_manifest(gate_manifest_type())
9090
.merge_with(component_type::get_gate_manifest(witness_amount, lookup_column_amount,
@@ -98,7 +98,7 @@ namespace nil {
9898

9999
constexpr static std::size_t get_rows_amount(std::size_t witness_amount,
100100
std::size_t lookup_column_amount,
101-
std::size_t bits_amount) {
101+
std::size_t bits_amount, bit_composition_mode mode = bit_composition_mode::MSB) {
102102
return component_type::get_rows_amount(witness_amount, lookup_column_amount,
103103
bits_amount, true);
104104
}
@@ -108,7 +108,7 @@ namespace nil {
108108
struct input_type {
109109
var input;
110110

111-
std::vector<var> all_vars() const {
111+
std::vector<std::reference_wrapper<var>> all_vars() {
112112
return {input};
113113
}
114114
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/comparison_checked.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ namespace nil {
213213
struct input_type {
214214
var x, y;
215215

216-
std::vector<var> all_vars() const {
216+
std::vector<std::reference_wrapper<var>> all_vars() {
217217
return {x, y};
218218
}
219219
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/comparison_flag.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ namespace nil {
234234
struct input_type {
235235
var x, y;
236236

237-
std::vector<var> all_vars() const {
237+
std::vector<std::reference_wrapper<var>> all_vars() {
238238
return {x, y};
239239
}
240240
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/comparison_unchecked.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ namespace nil {
165165
struct input_type {
166166
var x, y;
167167

168-
std::vector<var> all_vars() const {
168+
std::vector<std::reference_wrapper<var>> all_vars() {
169169
return {x, y};
170170
}
171171
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/detail/boolean_lookup_op_component.hpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,8 @@ namespace nil {
9191
input_type() = default;
9292
input_type(std::initializer_list<var> input) : input(input) {};
9393

94-
std::vector<var> all_vars() const {
95-
std::vector<var> result;
94+
std::vector<std::reference_wrapper<var>> all_vars() {
95+
std::vector<std::reference_wrapper<var>> result;
9696
result.insert(result.end(), input.begin(), input.end());
9797
return result;
9898
}

include/nil/blueprint/components/algebra/fields/plonk/non_native/detail/boolean_op_component.hpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,8 @@ namespace nil {
8989
input_type() = default;
9090
input_type(std::initializer_list<var> input) : input(input) {};
9191

92-
std::vector<var> all_vars() const {
93-
std::vector<var> result;
92+
std::vector<std::reference_wrapper<var>> all_vars() {
93+
std::vector<std::reference_wrapper<var>> result;
9494
result.insert(result.end(), input.begin(), input.end());
9595
return result;
9696
}

include/nil/blueprint/components/algebra/fields/plonk/non_native/division_remainder.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ namespace nil {
169169
struct input_type {
170170
var x, y;
171171

172-
std::vector<var> all_vars() const {
172+
std::vector<std::reference_wrapper<var>> all_vars() {
173173
return {x, y};
174174
}
175175
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/equality_flag.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ namespace nil {
9898
var x = var(0, 0, false);
9999
var y = var(0, 0, false);
100100

101-
std::vector<var> all_vars() const {
101+
std::vector<std::reference_wrapper<var>> all_vars() {
102102
return {x, y};
103103
}
104104
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/multiplication.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ namespace nil {
119119
typename non_native_policy_type::template field<operating_field_type>::non_native_var_type A;
120120
typename non_native_policy_type::template field<operating_field_type>::non_native_var_type B;
121121

122-
std::vector<var> all_vars() const {
122+
std::vector<std::reference_wrapper<var>> all_vars() {
123123
return {A[0], A[1], A[2], A[3], B[0], B[1], B[2], B[3]};
124124
}
125125
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/range.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ namespace nil {
9999
typename non_native_policy_type::template field<operating_field_type>::non_native_var_type
100100
input; // 66,66,66,57 bits
101101

102-
std::vector<var> all_vars() const {
102+
std::vector<std::reference_wrapper<var>> all_vars() {
103103
return {input[0], input[1], input[2], input[3]};
104104
}
105105
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/reduction.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ namespace nil {
9393
struct input_type {
9494
std::array<var, 8> k;
9595

96-
std::vector<var> all_vars() const {
96+
std::vector<std::reference_wrapper<var>> all_vars() {
9797
return {k[0], k[1], k[2], k[3], k[4], k[5], k[6], k[7]};
9898
}
9999
};

include/nil/blueprint/components/algebra/fields/plonk/non_native/subtraction.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ namespace nil {
118118
typename non_native_policy_type::template field<operating_field_type>::non_native_var_type A;
119119
typename non_native_policy_type::template field<operating_field_type>::non_native_var_type B;
120120

121-
std::vector<var> all_vars() const {
121+
std::vector<std::reference_wrapper<var>> all_vars() {
122122
return {A[0], A[1], A[2], A[3], B[0], B[1], B[2], B[3]};
123123
}
124124
};

include/nil/blueprint/components/algebra/fields/plonk/quadratic_interpolation.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ namespace nil {
9999
struct input_type {
100100
var x0, z0, x1, z1, x2, z2;
101101

102-
std::vector<var> all_vars() const {
102+
std::vector<std::reference_wrapper<var>> all_vars() {
103103
return {x0, z0, x1, z1, x2, z2};
104104
}
105105
};

include/nil/blueprint/components/algebra/fields/plonk/range_check.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ namespace nil {
173173
struct input_type {
174174
var x;
175175

176-
std::vector<var> all_vars() const {
176+
std::vector<std::reference_wrapper<var>> all_vars() {
177177
return {x};
178178
}
179179
};

include/nil/blueprint/components/algebra/fields/plonk/sqrt.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ namespace nil {
142142
struct input_type {
143143
var y;
144144

145-
std::vector<var> all_vars() const {
145+
std::vector<std::reference_wrapper<var>> all_vars() {
146146
return {y};
147147
}
148148
};

include/nil/blueprint/components/algebra/fields/plonk/subtraction.hpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ namespace nil {
9494
var x = var(0, 0, false);
9595
var y = var(0, 0, false);
9696

97-
std::vector<var> all_vars() {
97+
std::vector<std::reference_wrapper<var>> all_vars() {
9898
return {x, y};
9999
}
100100
};

0 commit comments

Comments
 (0)