Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
Public Member Functions | List of all members
gadgetlib2::R1P_Gadget Class Referenceabstract

#include <gadget.hpp>

Inheritance diagram for gadgetlib2::R1P_Gadget:
Inheritance graph
[legend]
Collaboration diagram for gadgetlib2::R1P_Gadget:
Collaboration graph
[legend]

Public Member Functions

 R1P_Gadget (ProtoboardPtr pb)
 
virtual ~R1P_Gadget ()=0
 
virtual void addRank1Constraint (const LinearCombination &a, const LinearCombination &b, const LinearCombination &c, const ::std::string &name)
 
- Public Member Functions inherited from gadgetlib2::Gadget
 Gadget (ProtoboardPtr pb)
 
virtual void generateConstraints ()=0
 
virtual void generateWitness ()
 
void addUnaryConstraint (const LinearCombination &a, const ::std::string &name)
 
void addRank1Constraint (const LinearCombination &a, const LinearCombination &b, const LinearCombination &c, const ::std::string &name)
 
void enforceBooleanity (const Variable &var)
 
FElemval (const Variable &var)
 
FElem val (const LinearCombination &lc)
 
FieldType fieldType () const
 
bool flagIsSet (const FlagVariable &flag) const
 

Additional Inherited Members

- Protected Attributes inherited from gadgetlib2::Gadget
ProtoboardPtr pb_
 

Detailed Description

Definition at line 146 of file gadget.hpp.

Constructor & Destructor Documentation

◆ R1P_Gadget()

gadgetlib2::R1P_Gadget::R1P_Gadget ( ProtoboardPtr  pb)
inline

Definition at line 149 of file gadget.hpp.

149 : Gadget(pb) {}

◆ ~R1P_Gadget()

gadgetlib2::R1P_Gadget::~R1P_Gadget ( )
pure virtual

Definition at line 70 of file gadget.cpp.

70 {};

Member Function Documentation

◆ addRank1Constraint()

void gadgetlib2::R1P_Gadget::addRank1Constraint ( const LinearCombination a,
const LinearCombination b,
const LinearCombination c,
const ::std::string &  name 
)
virtual

Definition at line 72 of file gadget.cpp.

77 {
78  pb_->addRank1Constraint(a, b, c, name);
79 }
Here is the caller graph for this function:

The documentation for this class was generated from the following files:
gadgetlib2::Gadget::Gadget
Gadget(ProtoboardPtr pb)
Definition: gadget.cpp:39
gadgetlib2::Gadget::pb_
ProtoboardPtr pb_
Definition: gadget.hpp:87