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

#include <fp6_2over3_gadgets.hpp>

Inheritance diagram for libsnark::Fp6_2over3_variable< Fp6T >:
Inheritance graph
[legend]
Collaboration diagram for libsnark::Fp6_2over3_variable< Fp6T >:
Collaboration graph
[legend]

Public Types

typedef Fp6T::my_Fp FieldT
 
typedef Fp6T::my_Fpe Fp3T
 

Public Member Functions

 Fp6_2over3_variable (protoboard< FieldT > &pb, const std::string &annotation_prefix)
 
 Fp6_2over3_variable (protoboard< FieldT > &pb, const Fp6T &el, const std::string &annotation_prefix)
 
 Fp6_2over3_variable (protoboard< FieldT > &pb, const Fp3_variable< Fp3T > &c0, const Fp3_variable< Fp3T > &c1, const std::string &annotation_prefix)
 
void generate_r1cs_equals_const_constraints (const Fp6T &el)
 
void generate_r1cs_witness (const Fp6T &el)
 
Fp6T get_element ()
 
Fp6_2over3_variable< Fp6T > Frobenius_map (const size_t power) const
 
void evaluate () const
 
- Public Member Functions inherited from libsnark::gadget< Fp6T::my_Fp >
 gadget (protoboard< Fp6T::my_Fp > &pb, const std::string &annotation_prefix)
 

Public Attributes

Fp3_variable< Fp3Tc0
 
Fp3_variable< Fp3Tc1
 

Additional Inherited Members

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

Detailed Description

template<typename Fp6T>
class libsnark::Fp6_2over3_variable< Fp6T >

Gadget that represents an Fp6 variable.

Definition at line 29 of file fp6_2over3_gadgets.hpp.

Member Typedef Documentation

◆ FieldT

template<typename Fp6T >
typedef Fp6T::my_Fp libsnark::Fp6_2over3_variable< Fp6T >::FieldT

Definition at line 32 of file fp6_2over3_gadgets.hpp.

◆ Fp3T

template<typename Fp6T >
typedef Fp6T::my_Fpe libsnark::Fp6_2over3_variable< Fp6T >::Fp3T

Definition at line 33 of file fp6_2over3_gadgets.hpp.

Constructor & Destructor Documentation

◆ Fp6_2over3_variable() [1/3]

template<typename Fp6T >
libsnark::Fp6_2over3_variable< Fp6T >::Fp6_2over3_variable ( protoboard< FieldT > &  pb,
const std::string &  annotation_prefix 
)

◆ Fp6_2over3_variable() [2/3]

template<typename Fp6T >
libsnark::Fp6_2over3_variable< Fp6T >::Fp6_2over3_variable ( protoboard< FieldT > &  pb,
const Fp6T &  el,
const std::string &  annotation_prefix 
)

◆ Fp6_2over3_variable() [3/3]

template<typename Fp6T >
libsnark::Fp6_2over3_variable< Fp6T >::Fp6_2over3_variable ( protoboard< FieldT > &  pb,
const Fp3_variable< Fp3T > &  c0,
const Fp3_variable< Fp3T > &  c1,
const std::string &  annotation_prefix 
)

Member Function Documentation

◆ evaluate()

template<typename Fp6T >
void libsnark::Fp6_2over3_variable< Fp6T >::evaluate ( ) const

◆ Frobenius_map()

template<typename Fp6T >
Fp6_2over3_variable<Fp6T> libsnark::Fp6_2over3_variable< Fp6T >::Frobenius_map ( const size_t  power) const

◆ generate_r1cs_equals_const_constraints()

template<typename Fp6T >
void libsnark::Fp6_2over3_variable< Fp6T >::generate_r1cs_equals_const_constraints ( const Fp6T &  el)

◆ generate_r1cs_witness()

template<typename Fp6T >
void libsnark::Fp6_2over3_variable< Fp6T >::generate_r1cs_witness ( const Fp6T &  el)

◆ get_element()

template<typename Fp6T >
Fp6T libsnark::Fp6_2over3_variable< Fp6T >::get_element ( )

Member Data Documentation

◆ c0

template<typename Fp6T >
Fp3_variable<Fp3T> libsnark::Fp6_2over3_variable< Fp6T >::c0

Definition at line 35 of file fp6_2over3_gadgets.hpp.

◆ c1

template<typename Fp6T >
Fp3_variable<Fp3T> libsnark::Fp6_2over3_variable< Fp6T >::c1

Definition at line 36 of file fp6_2over3_gadgets.hpp.


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