Clearmatics Libsnark
0.1
C++ library for zkSNARK proofs
|
#include <tally_cp.hpp>
Public Types | |
typedef compliance_predicate_handler< FieldT, protoboard< FieldT > > | base_handler |
Public Member Functions | |
tally_cp_handler (const size_t type, const size_t max_arity, const size_t wordsize, const bool relies_on_same_type_inputs=false, const std::set< size_t > accepted_input_types=std::set< size_t >()) | |
void | generate_r1cs_constraints () |
void | generate_r1cs_witness (const std::vector< std::shared_ptr< r1cs_pcd_message< FieldT >>> &incoming_messages, const std::shared_ptr< r1cs_pcd_local_data< FieldT >> &local_data) |
std::shared_ptr< r1cs_pcd_message< FieldT > > | get_base_case_message () const |
![]() | |
compliance_predicate_handler (const protoboard< FieldT > &pb, const size_t name, const size_t type, const size_t max_arity, const bool relies_on_same_type_inputs, const std::set< size_t > accepted_input_types=std::set< size_t >()) | |
r1cs_pcd_compliance_predicate< FieldT > | get_compliance_predicate () const |
r1cs_variable_assignment< FieldT > | get_full_variable_assignment () const |
std::shared_ptr< r1cs_pcd_message< FieldT > > | get_outgoing_message () const |
size_t | get_arity () const |
std::shared_ptr< r1cs_pcd_message< FieldT > > | get_incoming_message (const size_t message_idx) const |
std::shared_ptr< r1cs_pcd_local_data< FieldT > > | get_local_data () const |
r1cs_variable_assignment< FieldT > | get_witness () const |
Public Attributes | |
pb_variable_array< FieldT > | incoming_types |
pb_variable< FieldT > | sum_out_packed |
pb_variable< FieldT > | count_out_packed |
pb_variable_array< FieldT > | sum_in_packed |
pb_variable_array< FieldT > | count_in_packed |
pb_variable_array< FieldT > | sum_in_packed_aux |
pb_variable_array< FieldT > | count_in_packed_aux |
std::shared_ptr< packing_gadget< FieldT > > | unpack_sum_out |
std::shared_ptr< packing_gadget< FieldT > > | unpack_count_out |
std::vector< packing_gadget< FieldT > > | pack_sum_in |
std::vector< packing_gadget< FieldT > > | pack_count_in |
pb_variable< FieldT > | type_val_inner_product |
std::shared_ptr< inner_product_gadget< FieldT > > | compute_type_val_inner_product |
pb_variable_array< FieldT > | arity_indicators |
size_t | wordsize |
size_t | message_length |
![]() | |
const size_t | name |
const size_t | type |
const size_t | max_arity |
const bool | relies_on_same_type_inputs |
const std::set< size_t > | accepted_input_types |
Additional Inherited Members | |
![]() | |
protoboard< FieldT > | pb |
std::shared_ptr< r1cs_pcd_message_variable< FieldT > > | outgoing_message |
pb_variable< FieldT > | arity |
std::vector< std::shared_ptr< r1cs_pcd_message_variable< FieldT > > > | incoming_messages |
std::shared_ptr< r1cs_pcd_local_data_variable< FieldT > > | local_data |
Subclass a R1CS compliance predicate handler to the tally compliance predicate handler.
Definition at line 75 of file tally_cp.hpp.
typedef compliance_predicate_handler<FieldT, protoboard<FieldT> > libsnark::tally_cp_handler< FieldT >::base_handler |
Definition at line 80 of file tally_cp.hpp.
libsnark::tally_cp_handler< FieldT >::tally_cp_handler | ( | const size_t | type, |
const size_t | max_arity, | ||
const size_t | wordsize, | ||
const bool | relies_on_same_type_inputs = false , |
||
const std::set< size_t > | accepted_input_types = std::set< size_t >() |
||
) |
|
virtual |
|
virtual |
Reimplemented from libsnark::compliance_predicate_handler< FieldT, protoboard< FieldT > >.
std::shared_ptr<r1cs_pcd_message<FieldT> > libsnark::tally_cp_handler< FieldT >::get_base_case_message | ( | ) | const |
pb_variable_array<FieldT> libsnark::tally_cp_handler< FieldT >::arity_indicators |
Definition at line 100 of file tally_cp.hpp.
std::shared_ptr<inner_product_gadget<FieldT> > libsnark::tally_cp_handler< FieldT >::compute_type_val_inner_product |
Definition at line 98 of file tally_cp.hpp.
pb_variable_array<FieldT> libsnark::tally_cp_handler< FieldT >::count_in_packed |
Definition at line 86 of file tally_cp.hpp.
pb_variable_array<FieldT> libsnark::tally_cp_handler< FieldT >::count_in_packed_aux |
Definition at line 89 of file tally_cp.hpp.
pb_variable<FieldT> libsnark::tally_cp_handler< FieldT >::count_out_packed |
Definition at line 84 of file tally_cp.hpp.
pb_variable_array<FieldT> libsnark::tally_cp_handler< FieldT >::incoming_types |
Definition at line 81 of file tally_cp.hpp.
size_t libsnark::tally_cp_handler< FieldT >::message_length |
Definition at line 103 of file tally_cp.hpp.
std::vector<packing_gadget<FieldT> > libsnark::tally_cp_handler< FieldT >::pack_count_in |
Definition at line 94 of file tally_cp.hpp.
std::vector<packing_gadget<FieldT> > libsnark::tally_cp_handler< FieldT >::pack_sum_in |
Definition at line 93 of file tally_cp.hpp.
pb_variable_array<FieldT> libsnark::tally_cp_handler< FieldT >::sum_in_packed |
Definition at line 85 of file tally_cp.hpp.
pb_variable_array<FieldT> libsnark::tally_cp_handler< FieldT >::sum_in_packed_aux |
Definition at line 88 of file tally_cp.hpp.
pb_variable<FieldT> libsnark::tally_cp_handler< FieldT >::sum_out_packed |
Definition at line 83 of file tally_cp.hpp.
pb_variable<FieldT> libsnark::tally_cp_handler< FieldT >::type_val_inner_product |
Definition at line 96 of file tally_cp.hpp.
std::shared_ptr<packing_gadget<FieldT> > libsnark::tally_cp_handler< FieldT >::unpack_count_out |
Definition at line 92 of file tally_cp.hpp.
std::shared_ptr<packing_gadget<FieldT> > libsnark::tally_cp_handler< FieldT >::unpack_sum_out |
Definition at line 91 of file tally_cp.hpp.
size_t libsnark::tally_cp_handler< FieldT >::wordsize |
Definition at line 102 of file tally_cp.hpp.