26 auto lhs_id =
static_cast<uint32_t
>(witness_values.size());
27 witness_values.push_back(lhs);
28 auto rhs_id =
static_cast<uint32_t
>(witness_values.size());
29 witness_values.push_back(rhs);
41 auto result =
static_cast<uint32_t
>(witness_values.size());
51 .result = {
static_cast<uint32_t
>(witness_values.size()) },
57 value = witness_values[lhs_id] + witness_values[rhs_id];
60 value = witness_values[lhs_id] - witness_values[rhs_id];
63 value = witness_values[lhs_id] * witness_values[rhs_id];
66 value = witness_values[lhs_id] / witness_values[rhs_id];
73 witness_values.push_back(
value);
74 return { from_le_bytes_constraint_bigint_lhs, from_le_bytes_constraint_bigint_rhs, constraint, to_bytes };
87 0x47, 0xFD, 0x7C, 0xD8, 0x16, 0x8C, 0x20, 0x3C, 0x8d, 0xca, 0x71, 0x68, 0x91, 0x6a, 0x81, 0x97,
88 0x5d, 0x58, 0x81, 0x81, 0xb6, 0x45, 0x50, 0xb8, 0x29, 0xa0, 0x31, 0xe1, 0x72, 0x4e, 0x64, 0x30,
96 op, lhs, rhs, witness_values, { 0x41, 0x41, 0x36, 0xD0, 0x8C, 0x5E, 0xD2, 0xBF, 0x3B, 0xA0, 0x48,
97 0xAF, 0xE6, 0xDC, 0xAE, 0xBA, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
98 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF });
105 op, lhs, rhs, witness_values, { 0x2F, 0xFC, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
106 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
107 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF });
124 auto result =
static_cast<uint32_t
>(witness_values.size());
134 .result = {
static_cast<uint32_t
>(witness_values.size()) },
140 value = witness_values[lhs_id] + witness_values[rhs_id];
143 value = witness_values[lhs_id] - witness_values[rhs_id];
146 value = witness_values[lhs_id] * witness_values[rhs_id];
149 value = witness_values[lhs_id] / witness_values[rhs_id];
156 witness_values.push_back(
value);
157 return { constraint, to_bytes };
170 .
varnum =
static_cast<uint32_t
>(witness.size() + 1),
171 .num_acir_opcodes = 5,
181 constraint_system.varnum =
static_cast<uint32_t
>(witness.size() + 1);
203 .modulus = { 0x47, 0xFD, 0x7C, 0xD8, 0x16, 0x8C, 0x20, 0x3C, 0x8d, 0xca, 0x71, 0x68, 0x91, 0x6a, 0x81, 0x97,
204 0x5d, 0x58, 0x81, 0x81, 0xb6, 0x45, 0x50, 0xb8, 0x29, 0xa0, 0x31, 0xe1, 0x72, 0x4e, 0x64, 0x30, },
209 .
input = 2, .result = { 2 },
214 .num_acir_opcodes = 3,
216 .bigint_from_le_bytes_constraints = { from_le_bytes_constraint_bigint1 },
217 .bigint_to_le_bytes_constraints = { result2_to_le_bytes },
218 .bigint_operations = { add_constraint },
244 .
varnum =
static_cast<uint32_t
>(witness.size() + 1),
245 .num_acir_opcodes = 5,
251 constraint_system.bigint_to_le_bytes_constraints.push_back(get<1>(contraints3));
252 constraint_system.bigint_operations.push_back(get<0>(contraints3));
253 constraint_system.bigint_to_le_bytes_constraints.push_back(get<1>(contraints4));
254 constraint_system.bigint_operations.push_back(get<0>(contraints4));
255 constraint_system.bigint_to_le_bytes_constraints.push_back(get<1>(contraints5));
256 constraint_system.bigint_operations.push_back(get<0>(contraints5));
257 constraint_system.varnum =
static_cast<uint32_t
>(witness.size() + 1);
276 .
varnum =
static_cast<uint32_t
>(witness.size() + 1),
277 .num_acir_opcodes = 5,
283 constraint_system.bigint_to_le_bytes_constraints.push_back(get<1>(contraints3));
284 constraint_system.bigint_operations.push_back(get<0>(contraints3));
285 constraint_system.bigint_to_le_bytes_constraints.push_back(get<1>(contraints4));
286 constraint_system.bigint_operations.push_back(get<0>(contraints4));
287 constraint_system.bigint_to_le_bytes_constraints.push_back(get<1>(contraints5));
288 constraint_system.bigint_operations.push_back(get<0>(contraints5));
289 constraint_system.varnum =
static_cast<uint32_t
>(witness.size() + 1);
313 .modulus = { 0x41, 0x41, 0x36, 0xD0, 0x8C, 0x5E, 0xD2, 0xBF, 0x3B, 0xA0, 0x48, 0xAF, 0xE6, 0xDC, 0xAE, 0xBA,
314 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
319 .modulus = { 0x41, 0x41, 0x36, 0xD0, 0x8C, 0x5E, 0xD2, 0xBF, 0x3B, 0xA0, 0x48, 0xAF, 0xE6, 0xDC, 0xAE, 0xBA,
320 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF },
325 .
input = 3, .result = { 3 },
330 .num_acir_opcodes = 4,
332 .bigint_from_le_bytes_constraints = { from_le_bytes_constraint_bigint1, from_le_bytes_constraint_bigint2 },
333 .bigint_to_le_bytes_constraints = { result3_to_le_bytes },
334 .bigint_operations = { div_constraint },