2#include "barretenberg/proof_system/plookup_tables/plookup_tables.hpp"
3#include "barretenberg/stdlib/primitives/uint/uint.hpp"
6#include "barretenberg/numeric/bitop/sparse_form.hpp"
7#include "barretenberg/stdlib/primitives/circuit_builders/circuit_builders_fwd.hpp"
9#include "../../primitives/field/field.hpp"
10#include "../../primitives/packed_byte_array/packed_byte_array.hpp"
14namespace sha256_plookup {
36 has_sparse_limbs =
false;
46 std::array<field_t<Builder>, 4> sparse_limbs;
48 std::array<field_t<Builder>, 4> rotated_limbs;
50 bool has_sparse_limbs =
false;
57 if (normal.witness_index == IS_CONSTANT) {
76template <
typename Builder>
77std::array<field_t<Builder>, 64> extend_witness(
const std::array<
field_t<Builder>, 16>& w_in);
79template <
typename Builder>
81template <
typename Builder>
84template <
typename Builder>
85std::array<field_t<Builder>, 8> sha256_block(
const std::array<
field_t<Builder>, 8>& h_init,
Definition: uint256.hpp:25
Definition: packed_byte_array.hpp:10
Definition: widget.bench.cpp:13
Definition: sha256_plookup.hpp:16
Definition: sha256_plookup.hpp:24
Definition: sha256_plookup.hpp:53
Definition: sha256_plookup.hpp:32