Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
set_membership_proof_variable.hpp
Go to the documentation of this file.
1 
8 #ifndef SET_MEMBERSHIP_PROOF_VARIABLE_HPP_
9 #define SET_MEMBERSHIP_PROOF_VARIABLE_HPP_
10 
15 
16 namespace libsnark
17 {
18 
19 template<typename FieldT, typename HashT>
20 class set_membership_proof_variable : public gadget<FieldT>
21 {
22 public:
24  std::shared_ptr<merkle_authentication_path_variable<FieldT, HashT>>
26 
27  const size_t max_entries;
28  const size_t tree_depth;
29 
32  const size_t max_entries,
33  const std::string &annotation_prefix);
34 
37 
39 
41  const set_membership_proof &proof);
42 };
43 
44 } // namespace libsnark
45 
47 
48 #endif // SET_MEMBERSHIP_PROOF_VARIABLE_HPP
libsnark::gadget::annotation_prefix
const std::string annotation_prefix
Definition: gadget.hpp:20
libsnark
Definition: accumulation_vector.hpp:18
libsnark::set_membership_proof_variable::address_bits
pb_variable_array< FieldT > address_bits
Definition: set_membership_proof_variable.hpp:23
libsnark::set_membership_proof_variable::get_membership_proof
set_membership_proof get_membership_proof() const
libsnark::gadget::pb
protoboard< FieldT > & pb
Definition: gadget.hpp:19
set_membership_proof_variable.tcc
gadget.hpp
libsnark::set_membership_proof_variable::generate_r1cs_witness
void generate_r1cs_witness(const set_membership_proof &proof)
libsnark::gadget
Definition: gadget.hpp:16
hash_io.hpp
libsnark::set_membership_proof_variable::generate_r1cs_constraints
void generate_r1cs_constraints()
libsnark::set_membership_proof_variable::as_r1cs_variable_assignment
static r1cs_variable_assignment< FieldT > as_r1cs_variable_assignment(const set_membership_proof &proof)
libsnark::set_membership_proof_variable::merkle_path
std::shared_ptr< merkle_authentication_path_variable< FieldT, HashT > > merkle_path
Definition: set_membership_proof_variable.hpp:25
set_commitment.hpp
libsnark::set_membership_proof
Definition: set_commitment.hpp:24
libsnark::set_membership_proof_variable::tree_depth
const size_t tree_depth
Definition: set_membership_proof_variable.hpp:28
libsnark::set_membership_proof_variable::max_entries
const size_t max_entries
Definition: set_membership_proof_variable.hpp:27
libsnark::r1cs_variable_assignment
std::vector< FieldT > r1cs_variable_assignment
Definition: r1cs.hpp:88
merkle_authentication_path_variable.hpp
libsnark::pb_variable_array
Definition: pb_variable.hpp:44
libsnark::set_membership_proof_variable::set_membership_proof_variable
set_membership_proof_variable(protoboard< FieldT > &pb, const size_t max_entries, const std::string &annotation_prefix)
libsnark::set_membership_proof_variable
Definition: set_membership_proof_variable.hpp:20
libsnark::protoboard
Definition: pb_variable.hpp:22