cp_handler.hpp
Go to the documentation of this file.
163 r1cs_pcd_local_data_variable<FieldType>::r1cs_pcd_local_data_variable(blueprint<FieldType> &bp) :
194 relies_on_same_type_inputs(relies_on_same_type_inputs), accepted_input_types(accepted_input_types) {
238 constraint_system.auxiliary_input_size = bp.num_variables() - constraint_system.primary_input_size;
Definition: component.hpp:37
Definition: cp_handler.hpp:96
const std::size_t name
Definition: cp_handler.hpp:106
const std::set< std::size_t > accepted_input_types
Definition: cp_handler.hpp:110
const bool relies_on_same_type_inputs
Definition: cp_handler.hpp:109
const std::size_t max_arity
Definition: cp_handler.hpp:108
std::shared_ptr< r1cs_pcd_local_data< FieldType > > get_local_data() const
Definition: cp_handler.hpp:279
std::shared_ptr< r1cs_pcd_message< FieldType > > get_incoming_message(const std::size_t message_idx) const
Definition: cp_handler.hpp:271
r1cs_pcd_compliance_predicate< FieldType > get_compliance_predicate() const
Definition: cp_handler.hpp:215
std::size_t get_arity() const
Definition: cp_handler.hpp:265
std::vector< std::shared_ptr< r1cs_pcd_message_variable< FieldType > > > incoming_messages
Definition: cp_handler.hpp:102
std::shared_ptr< r1cs_pcd_local_data_variable< FieldType > > local_data
Definition: cp_handler.hpp:103
virtual void generate_r1cs_constraints()=0
compliance_predicate_handler(const BlueprintType &bp, const std::size_t name, const std::size_t type, const std::size_t max_arity, const bool relies_on_same_type_inputs, const std::set< std::size_t > &accepted_input_types=std::set< std::size_t >())
Definition: cp_handler.hpp:185
snark::r1cs_variable_assignment< FieldType > get_full_variable_assignment() const
Definition: cp_handler.hpp:254
BlueprintType bp
Definition: cp_handler.hpp:98
snark::r1cs_variable_assignment< FieldType > get_witness() const
Definition: cp_handler.hpp:285
blueprint_variable< FieldType > arity
Definition: cp_handler.hpp:101
const std::size_t type
Definition: cp_handler.hpp:107
std::shared_ptr< r1cs_pcd_message< FieldType > > get_outgoing_message() const
Definition: cp_handler.hpp:260
virtual void generate_r1cs_witness(const std::vector< std::shared_ptr< r1cs_pcd_message< FieldType >>> &incoming_message_values, const std::shared_ptr< r1cs_pcd_local_data< FieldType >> &local_data_value)
Definition: cp_handler.hpp:199
std::shared_ptr< r1cs_pcd_message_variable< FieldType > > outgoing_message
Definition: cp_handler.hpp:100
Definition: compliance_predicate.hpp:123
Definition: cp_handler.hpp:75
void generate_r1cs_witness(const std::shared_ptr< r1cs_pcd_local_data< FieldType >> &local_data)
Definition: cp_handler.hpp:179
void update_all_vars()
Definition: cp_handler.hpp:169
r1cs_pcd_local_data_variable(blueprint< FieldType > &bp)
Definition: cp_handler.hpp:163
std::size_t num_vars_at_construction
Definition: cp_handler.hpp:77
virtual ~r1cs_pcd_local_data_variable()=default
blueprint_variable_vector< FieldType > all_vars
Definition: cp_handler.hpp:80
Definition: cp_handler.hpp:52
virtual ~r1cs_pcd_message_variable()=default
virtual std::shared_ptr< r1cs_pcd_message< FieldType > > get_message() const =0
void generate_r1cs_witness(const std::shared_ptr< r1cs_pcd_message< FieldType >> &message)
Definition: cp_handler.hpp:157
blueprint_variable_vector< FieldType > all_vars
Definition: cp_handler.hpp:59
blueprint_variable< FieldType > type
Definition: cp_handler.hpp:57
void update_all_vars()
Definition: cp_handler.hpp:145
std::size_t num_vars_at_construction
Definition: cp_handler.hpp:54
r1cs_pcd_message_variable(blueprint< FieldType > &bp)
Definition: cp_handler.hpp:136
vector(T, U...) -> vector< std::enable_if_t<(std::is_same_v< T, U > &&...), T >, 1+sizeof...(U)>
deduction guide for uniform initialization
constexpr U accumulate(const vector< T, N > &v, U init, F &&f)
accumulates an operation across a vector
Definition: vector/utility.hpp:70
decoded_range< UnaryFunction, SinglePassRange > transform(SinglePassRange &rng, UnaryFunction fn)
Definition: decrypted.hpp:100
std::vector< typename FieldType::value_type > r1cs_pcd_witness
Definition: compliance_predicate.hpp:86
std::vector< typename FieldType::value_type > r1cs_variable_assignment
Definition: r1cs.hpp:107
Definition: pair.hpp:31
Definition: r1cs.hpp:124
std::size_t primary_input_size
Definition: r1cs.hpp:127
std::size_t auxiliary_input_size
Definition: r1cs.hpp:128
Definition: compliance_predicate.hpp:77
Definition: compliance_predicate.hpp:56