23 uint64_t parts[4] = { 0, 0, 0, 0 };
25 for (
size_t i = 0; i < (buffer_size + 7) / 8; i++) {
26 size_t to_read = (buffer_size - i * 8) < 8 ? buffer_size - i * 8 : 8;
29 return uint256_t(parts[0], parts[1], parts[2], parts[3]);
37 constexpr size_t WIDE_LIMB_BYTES = (WIDE_LIMB_BITS + 7) / 8;
38 constexpr size_t TOTAL_SIZE = 1 + 5 *
sizeof(
numeric::uint256_t) + 2 * WIDE_LIMB_BYTES;
39 if (size < (TOTAL_SIZE)) {
42 size_t op =
data[0] & 3;
61 Fr p_x_hi =
uint256_t(p_x).
slice(2 * NUM_LIMB_BITS, 3 * NUM_LIMB_BITS + NUM_LAST_LIMB_BITS);
65 Fr p_y_hi =
uint256_t(p_y).
slice(2 * NUM_LIMB_BITS, 3 * NUM_LIMB_BITS + NUM_LAST_LIMB_BITS);
88 circuit_builder.create_accumulation_gate(single_accumulation_step);
#define BB_ASSERT_LTE(left, right,...)
TranslatorCircuitBuilder creates a circuit that evaluates the correctness of the evaluation of EccOpQ...
static AccumulationInput generate_witness_values(const UltraOp &ultra_op, const Fq &previous_accumulator, const Fq &batching_challenge_v, const Fq &evaluation_input_x)
Given the transcript values from the EccOpQueue, the values of the previous accumulator,...
static constexpr size_t NUM_Z_BITS
static constexpr size_t NUM_LIMB_BITS
static constexpr size_t NUM_LAST_LIMB_BITS
static bool check(const Builder &circuit)
Check the witness satisifies the circuit.
constexpr uint256_t slice(uint64_t start, uint64_t end) const
const std::vector< FF > data
Entry point for Barretenberg command-line interface.
C slice(C const &container, size_t start)
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Defines the opcodes for ECC operations used in both the Ultra and ECCVM formats. There are three opco...
curve::BN254::BaseField Fq
int LLVMFuzzerTestOneInput(const unsigned char *data, size_t size)
uint256_t read_uint256(const uint8_t *data, size_t buffer_size=32)
curve::BN254::ScalarField Fr