29 using View =
typename std::tuple_element_t<0, ContainerOverSubrelations>::View;
30 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_sel)) *
31 (
FF(1) -
static_cast<View
>(in.get(C::note_hash_tree_check_sel)));
35 using View =
typename std::tuple_element_t<1, ContainerOverSubrelations>::View;
36 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_write)) *
37 (
FF(1) -
static_cast<View
>(in.get(C::note_hash_tree_check_write)));
41 using View =
typename std::tuple_element_t<2, ContainerOverSubrelations>::View;
42 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_should_silo)) *
43 (
FF(1) -
static_cast<View
>(in.get(C::note_hash_tree_check_should_silo)));
47 using View =
typename std::tuple_element_t<3, ContainerOverSubrelations>::View;
48 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_should_unique)) *
49 (
FF(1) -
static_cast<View
>(in.get(C::note_hash_tree_check_should_unique)));
53 using View =
typename std::tuple_element_t<4, ContainerOverSubrelations>::View;
54 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_write)) *
55 (
FF(1) -
static_cast<View
>(in.get(C::note_hash_tree_check_sel)));
59 using View =
typename std::tuple_element_t<5, ContainerOverSubrelations>::View;
60 auto tmp =
CView(note_hash_tree_check_READ) *
static_cast<View
>(in.get(C::note_hash_tree_check_should_silo));
64 using View =
typename std::tuple_element_t<6, ContainerOverSubrelations>::View;
65 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_should_silo)) *
66 (
FF(1) -
static_cast<View
>(in.get(C::note_hash_tree_check_should_unique)));
70 using View =
typename std::tuple_element_t<7, ContainerOverSubrelations>::View;
71 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_sel)) *
72 (
FF(1) -
static_cast<View
>(in.get(C::note_hash_tree_check_should_silo))) *
73 (
static_cast<View
>(in.get(C::note_hash_tree_check_note_hash)) -
74 static_cast<View
>(in.get(C::note_hash_tree_check_siloed_note_hash)));
78 using View =
typename std::tuple_element_t<8, ContainerOverSubrelations>::View;
79 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_sel)) *
80 (
CView(constants_GENERATOR_INDEX__SILOED_NOTE_HASH) -
81 static_cast<View
>(in.get(C::note_hash_tree_check_siloing_separator)));
85 using View =
typename std::tuple_element_t<9, ContainerOverSubrelations>::View;
86 auto tmp =
CView(note_hash_tree_check_READ) *
static_cast<View
>(in.get(C::note_hash_tree_check_should_unique));
90 using View =
typename std::tuple_element_t<10, ContainerOverSubrelations>::View;
91 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_sel)) *
92 (
FF(1) -
static_cast<View
>(in.get(C::note_hash_tree_check_should_unique))) *
93 (
static_cast<View
>(in.get(C::note_hash_tree_check_siloed_note_hash)) -
94 static_cast<View
>(in.get(C::note_hash_tree_check_unique_note_hash)));
98 using View =
typename std::tuple_element_t<11, ContainerOverSubrelations>::View;
99 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_sel)) *
100 (
CView(constants_AVM_PUBLIC_INPUTS_PREVIOUS_NON_REVERTIBLE_ACCUMULATED_DATA_NULLIFIERS_ROW_IDX) -
101 static_cast<View
>(in.get(C::note_hash_tree_check_first_nullifier_pi_index)));
105 using View =
typename std::tuple_element_t<12, ContainerOverSubrelations>::View;
106 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_sel)) *
107 (
CView(constants_GENERATOR_INDEX__NOTE_HASH_NONCE) -
108 static_cast<View
>(in.get(C::note_hash_tree_check_nonce_separator)));
112 using View =
typename std::tuple_element_t<13, ContainerOverSubrelations>::View;
113 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_sel)) *
114 (
CView(constants_GENERATOR_INDEX__UNIQUE_NOTE_HASH) -
115 static_cast<View
>(in.get(C::note_hash_tree_check_unique_note_hash_separator)));
119 using View =
typename std::tuple_element_t<14, ContainerOverSubrelations>::View;
121 static_cast<View
>(in.get(C::note_hash_tree_check_sel)) *
122 ((
CView(note_hash_tree_check_PREV_LEAF_VALUE_UNIQUE_NOTE_HASH_DIFF) *
123 (
static_cast<View
>(in.get(C::note_hash_tree_check_exists)) *
125 static_cast<View
>(in.get(C::note_hash_tree_check_prev_leaf_value_unique_note_hash_diff_inv))) +
126 static_cast<View
>(in.get(C::note_hash_tree_check_prev_leaf_value_unique_note_hash_diff_inv))) -
128 static_cast<View
>(in.get(C::note_hash_tree_check_exists)));
132 using View =
typename std::tuple_element_t<15, ContainerOverSubrelations>::View;
133 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_write)) *
134 (
static_cast<View
>(in.get(C::note_hash_tree_check_unique_note_hash)) -
135 static_cast<View
>(in.get(C::note_hash_tree_check_next_leaf_value)));
139 using View =
typename std::tuple_element_t<16, ContainerOverSubrelations>::View;
140 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_sel)) *
141 (
CView(constants_NOTE_HASH_TREE_HEIGHT) -
142 static_cast<View
>(in.get(C::note_hash_tree_check_note_hash_tree_height)));
146 using View =
typename std::tuple_element_t<17, ContainerOverSubrelations>::View;
147 auto tmp = (
static_cast<View
>(in.get(C::note_hash_tree_check_write)) *
148 (
FF(1) -
static_cast<View
>(in.get(C::note_hash_tree_check_discard))) -
149 static_cast<View
>(in.get(C::note_hash_tree_check_should_write_to_public_inputs)));
153 using View =
typename std::tuple_element_t<18, ContainerOverSubrelations>::View;
154 auto tmp =
static_cast<View
>(in.get(C::note_hash_tree_check_should_write_to_public_inputs)) *
155 ((
CView(constants_AVM_PUBLIC_INPUTS_AVM_ACCUMULATED_DATA_NOTE_HASHES_ROW_IDX) +
156 static_cast<View
>(in.get(C::note_hash_tree_check_note_hash_index))) -
157 static_cast<View
>(in.get(C::note_hash_tree_check_public_inputs_index)));