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

#include <bls12_377_final_exponentiation.hpp>

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

Public Types

using FieldT = libff::Fr< ppT >
 
using FqkT = libff::Fqk< other_curve< ppT > >
 
using cyclotomic_square = Fp12_2over3over2_cyclotomic_square_gadget< FqkT >
 
using multiply = Fp12_2over3over2_mul_gadget< FqkT >
 
using unitary_inverse = Fp12_2over3over2_cyclotomic_square_gadget< FqkT >
 

Public Member Functions

 bls12_377_exp_by_z_gadget (protoboard< FieldT > &pb, const Fp12_2over3over2_variable< FqkT > &in, const Fp12_2over3over2_variable< FqkT > &result, const std::string &annotation_prefix)
 
const Fp12_2over3over2_variable< FqkT > & result () const
 
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

Fp12_2over3over2_variable< FqkT_result
 
std::vector< std::shared_ptr< cyclotomic_square > > _squares
 
std::vector< std::shared_ptr< multiply > > _multiplies
 
std::shared_ptr< unitary_inverse_inverse
 

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::bls12_377_exp_by_z_gadget< ppT >

Definition at line 59 of file bls12_377_final_exponentiation.hpp.

Member Typedef Documentation

◆ cyclotomic_square

Definition at line 64 of file bls12_377_final_exponentiation.hpp.

◆ FieldT

template<typename ppT >
using libsnark::bls12_377_exp_by_z_gadget< ppT >::FieldT = libff::Fr<ppT>

Definition at line 62 of file bls12_377_final_exponentiation.hpp.

◆ FqkT

template<typename ppT >
using libsnark::bls12_377_exp_by_z_gadget< ppT >::FqkT = libff::Fqk<other_curve<ppT> >

Definition at line 63 of file bls12_377_final_exponentiation.hpp.

◆ multiply

Definition at line 65 of file bls12_377_final_exponentiation.hpp.

◆ unitary_inverse

Definition at line 66 of file bls12_377_final_exponentiation.hpp.

Constructor & Destructor Documentation

◆ bls12_377_exp_by_z_gadget()

template<typename ppT >
libsnark::bls12_377_exp_by_z_gadget< ppT >::bls12_377_exp_by_z_gadget ( protoboard< FieldT > &  pb,
const Fp12_2over3over2_variable< FqkT > &  in,
const Fp12_2over3over2_variable< FqkT > &  result,
const std::string &  annotation_prefix 
)

Member Function Documentation

◆ generate_r1cs_constraints()

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

◆ generate_r1cs_witness()

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

◆ result()

template<typename ppT >
const Fp12_2over3over2_variable<FqkT>& libsnark::bls12_377_exp_by_z_gadget< ppT >::result ( ) const

Member Data Documentation

◆ _inverse

template<typename ppT >
std::shared_ptr<unitary_inverse> libsnark::bls12_377_exp_by_z_gadget< ppT >::_inverse

Definition at line 71 of file bls12_377_final_exponentiation.hpp.

◆ _multiplies

template<typename ppT >
std::vector<std::shared_ptr<multiply> > libsnark::bls12_377_exp_by_z_gadget< ppT >::_multiplies

Definition at line 70 of file bls12_377_final_exponentiation.hpp.

◆ _result

template<typename ppT >
Fp12_2over3over2_variable<FqkT> libsnark::bls12_377_exp_by_z_gadget< ppT >::_result

Definition at line 68 of file bls12_377_final_exponentiation.hpp.

◆ _squares

template<typename ppT >
std::vector<std::shared_ptr<cyclotomic_square> > libsnark::bls12_377_exp_by_z_gadget< ppT >::_squares

Definition at line 69 of file bls12_377_final_exponentiation.hpp.


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