Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
Public Types | Public Member Functions | Public Attributes | List of all members
libsnark::mnt_precompute_G2_gadget< ppT > Class Template Reference

#include <mnt_precomputation.hpp>

Inheritance diagram for libsnark::mnt_precompute_G2_gadget< ppT >:
Inheritance graph
[legend]
Collaboration diagram for libsnark::mnt_precompute_G2_gadget< ppT >:
Collaboration graph
[legend]

Public Types

typedef libff::Fr< ppT > FieldT
 
typedef libff::Fqe< other_curve< ppT > > FqeT
 
typedef libff::Fqk< other_curve< ppT > > FqkT
 

Public Member Functions

 mnt_precompute_G2_gadget (protoboard< FieldT > &pb, const G2_variable< ppT > &Q, mnt_G2_precomputation< ppT > &precomp, const std::string &annotation_prefix)
 
void generate_r1cs_constraints ()
 
void generate_r1cs_witness ()
 
- Public Member Functions inherited from libsnark::gadget< libff::Fr< ppT > >
 gadget (protoboard< libff::Fr< ppT > > &pb, const std::string &annotation_prefix)
 

Public Attributes

std::vector< std::shared_ptr< mnt_precompute_G2_gadget_addition_step< ppT > > > addition_steps
 
std::vector< std::shared_ptr< mnt_precompute_G2_gadget_doubling_step< ppT > > > doubling_steps
 
size_t add_count
 
size_t dbl_count
 
mnt_G2_precomputation< ppT > & precomp
 

Additional Inherited Members

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

Detailed Description

template<typename ppT>
class libsnark::mnt_precompute_G2_gadget< ppT >

Gadget that verifies correct precomputation of the G2 variable.

Definition at line 269 of file mnt_precomputation.hpp.

Member Typedef Documentation

◆ FieldT

template<typename ppT >
typedef libff::Fr<ppT> libsnark::mnt_precompute_G2_gadget< ppT >::FieldT

Definition at line 272 of file mnt_precomputation.hpp.

◆ FqeT

template<typename ppT >
typedef libff::Fqe<other_curve<ppT> > libsnark::mnt_precompute_G2_gadget< ppT >::FqeT

Definition at line 273 of file mnt_precomputation.hpp.

◆ FqkT

template<typename ppT >
typedef libff::Fqk<other_curve<ppT> > libsnark::mnt_precompute_G2_gadget< ppT >::FqkT

Definition at line 274 of file mnt_precomputation.hpp.

Constructor & Destructor Documentation

◆ mnt_precompute_G2_gadget()

template<typename ppT >
libsnark::mnt_precompute_G2_gadget< ppT >::mnt_precompute_G2_gadget ( protoboard< FieldT > &  pb,
const G2_variable< ppT > &  Q,
mnt_G2_precomputation< ppT > &  precomp,
const std::string &  annotation_prefix 
)

Member Function Documentation

◆ generate_r1cs_constraints()

template<typename ppT >
void libsnark::mnt_precompute_G2_gadget< ppT >::generate_r1cs_constraints ( )

◆ generate_r1cs_witness()

template<typename ppT >
void libsnark::mnt_precompute_G2_gadget< ppT >::generate_r1cs_witness ( )

Member Data Documentation

◆ add_count

template<typename ppT >
size_t libsnark::mnt_precompute_G2_gadget< ppT >::add_count

Definition at line 281 of file mnt_precomputation.hpp.

◆ addition_steps

template<typename ppT >
std::vector<std::shared_ptr<mnt_precompute_G2_gadget_addition_step<ppT> > > libsnark::mnt_precompute_G2_gadget< ppT >::addition_steps

Definition at line 277 of file mnt_precomputation.hpp.

◆ dbl_count

template<typename ppT >
size_t libsnark::mnt_precompute_G2_gadget< ppT >::dbl_count

Definition at line 282 of file mnt_precomputation.hpp.

◆ doubling_steps

template<typename ppT >
std::vector<std::shared_ptr<mnt_precompute_G2_gadget_doubling_step<ppT> > > libsnark::mnt_precompute_G2_gadget< ppT >::doubling_steps

Definition at line 279 of file mnt_precomputation.hpp.

◆ precomp

template<typename ppT >
mnt_G2_precomputation<ppT>& libsnark::mnt_precompute_G2_gadget< ppT >::precomp

Definition at line 284 of file mnt_precomputation.hpp.


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