Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
libsnark::set_membership_proof_variable< FieldT, HashT > Class Template Reference

#include <set_membership_proof_variable.hpp>

Inheritance diagram for libsnark::set_membership_proof_variable< FieldT, HashT >:
Inheritance graph
[legend]
Collaboration diagram for libsnark::set_membership_proof_variable< FieldT, HashT >:
Collaboration graph
[legend]

Public Member Functions

 set_membership_proof_variable (protoboard< FieldT > &pb, const size_t max_entries, const std::string &annotation_prefix)
 
void generate_r1cs_constraints ()
 
void generate_r1cs_witness (const set_membership_proof &proof)
 
set_membership_proof get_membership_proof () const
 
- Public Member Functions inherited from libsnark::gadget< FieldT >
 gadget (protoboard< FieldT > &pb, const std::string &annotation_prefix)
 

Static Public Member Functions

static r1cs_variable_assignment< FieldT > as_r1cs_variable_assignment (const set_membership_proof &proof)
 

Public Attributes

pb_variable_array< FieldT > address_bits
 
std::shared_ptr< merkle_authentication_path_variable< FieldT, HashT > > merkle_path
 
const size_t max_entries
 
const size_t tree_depth
 

Additional Inherited Members

- Protected Attributes inherited from libsnark::gadget< FieldT >
protoboard< FieldT > & pb
 
const std::string annotation_prefix
 

Detailed Description

template<typename FieldT, typename HashT>
class libsnark::set_membership_proof_variable< FieldT, HashT >

Definition at line 20 of file set_membership_proof_variable.hpp.

Constructor & Destructor Documentation

◆ set_membership_proof_variable()

template<typename FieldT , typename HashT >
libsnark::set_membership_proof_variable< FieldT, HashT >::set_membership_proof_variable ( protoboard< FieldT > &  pb,
const size_t  max_entries,
const std::string &  annotation_prefix 
)

Member Function Documentation

◆ as_r1cs_variable_assignment()

template<typename FieldT , typename HashT >
static r1cs_variable_assignment<FieldT> libsnark::set_membership_proof_variable< FieldT, HashT >::as_r1cs_variable_assignment ( const set_membership_proof proof)
static

◆ generate_r1cs_constraints()

template<typename FieldT , typename HashT >
void libsnark::set_membership_proof_variable< FieldT, HashT >::generate_r1cs_constraints ( )

◆ generate_r1cs_witness()

template<typename FieldT , typename HashT >
void libsnark::set_membership_proof_variable< FieldT, HashT >::generate_r1cs_witness ( const set_membership_proof proof)

◆ get_membership_proof()

template<typename FieldT , typename HashT >
set_membership_proof libsnark::set_membership_proof_variable< FieldT, HashT >::get_membership_proof ( ) const

Member Data Documentation

◆ address_bits

template<typename FieldT , typename HashT >
pb_variable_array<FieldT> libsnark::set_membership_proof_variable< FieldT, HashT >::address_bits

Definition at line 23 of file set_membership_proof_variable.hpp.

◆ max_entries

template<typename FieldT , typename HashT >
const size_t libsnark::set_membership_proof_variable< FieldT, HashT >::max_entries

Definition at line 27 of file set_membership_proof_variable.hpp.

◆ merkle_path

template<typename FieldT , typename HashT >
std::shared_ptr<merkle_authentication_path_variable<FieldT, HashT> > libsnark::set_membership_proof_variable< FieldT, HashT >::merkle_path

Definition at line 25 of file set_membership_proof_variable.hpp.

◆ tree_depth

template<typename FieldT , typename HashT >
const size_t libsnark::set_membership_proof_variable< FieldT, HashT >::tree_depth

Definition at line 28 of file set_membership_proof_variable.hpp.


The documentation for this class was generated from the following file: