Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
lookups_poseidon2_hash.hpp
Go to the documentation of this file.
1// AUTOGENERATED FILE
2#pragma once
3
4#include <cstddef>
5#include <string_view>
6#include <tuple>
7
8#include "../columns.hpp"
11
12namespace bb::avm2 {
13
15
17 static constexpr std::string_view NAME = "LOOKUP_POSEIDON2_HASH_POSEIDON2_PERM";
18 static constexpr std::string_view RELATION_NAME = "poseidon2_hash";
19 static constexpr size_t LOOKUP_TUPLE_SIZE = 8;
20 static constexpr Column SRC_SELECTOR = Column::poseidon2_hash_sel;
21 static constexpr Column DST_SELECTOR = Column::poseidon2_perm_sel;
22 static constexpr Column COUNTS = Column::lookup_poseidon2_hash_poseidon2_perm_counts;
23 static constexpr Column INVERSES = Column::lookup_poseidon2_hash_poseidon2_perm_inv;
24 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> SRC_COLUMNS = {
25 ColumnAndShifts::poseidon2_hash_a_0, ColumnAndShifts::poseidon2_hash_a_1, ColumnAndShifts::poseidon2_hash_a_2,
26 ColumnAndShifts::poseidon2_hash_a_3, ColumnAndShifts::poseidon2_hash_b_0, ColumnAndShifts::poseidon2_hash_b_1,
27 ColumnAndShifts::poseidon2_hash_b_2, ColumnAndShifts::poseidon2_hash_b_3
28 };
29 static constexpr std::array<ColumnAndShifts, LOOKUP_TUPLE_SIZE> DST_COLUMNS = {
30 ColumnAndShifts::poseidon2_perm_a_0, ColumnAndShifts::poseidon2_perm_a_1, ColumnAndShifts::poseidon2_perm_a_2,
31 ColumnAndShifts::poseidon2_perm_a_3, ColumnAndShifts::poseidon2_perm_b_0, ColumnAndShifts::poseidon2_perm_b_1,
32 ColumnAndShifts::poseidon2_perm_b_2, ColumnAndShifts::poseidon2_perm_b_3
33 };
34};
35
37template <typename FF_>
40
41} // namespace bb::avm2
This file contains the template for the generic lookup that can be specialized to enforce various loo...
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > SRC_COLUMNS
static constexpr std::array< ColumnAndShifts, LOOKUP_TUPLE_SIZE > DST_COLUMNS