Clearmatics Libsnark
0.1
C++ library for zkSNARK proofs
|
Go to the documentation of this file.
15 #ifndef LIBSNARK_GADGETLIB2_INCLUDE_GADGETLIB2_CONSTRAINT_HPP_
16 #define LIBSNARK_GADGETLIB2_INCLUDE_GADGETLIB2_CONSTRAINT_HPP_
46 const ::std::string &
name);
47 ::std::string
name()
const;
92 const ::std::string &
name);
178 typedef ::std::set<::std::unique_ptr<Polynomial>>
PolyPtrSet;
184 retset.insert(::std::unique_ptr<Polynomial>(
185 new Polynomial(pConstraint->asPolynomial())));
200 #endif // LIBSNARK_GADGETLIB2_INCLUDE_GADGETLIB2_CONSTRAINT_HPP_
::std::string name() const
Constraint(const ::std::string &name)
::std::string annotation() const
void addConstraint(const Rank1Constraint &c)
virtual bool isSatisfied(const VariableAssignment &assignment, const PrintOptions &printOnFail) const =0
virtual Polynomial asPolynomial() const
LinearCombination c() const
::std::vector< ConstraintPtr > constraintsPtrs_
virtual const Variable::set getUsedVariables() const =0
@ DBG_PRINT_IF_NOT_SATISFIED
::std::shared_ptr< Constraint > ConstraintPtr
::std::set<::std::unique_ptr< Polynomial > > PolyPtrSet
Variable::set getUsedVariables() const
::std::map< Variable, FElem, Variable::VariableStrictOrder > VariableAssignment
virtual bool isSatisfied(const VariableAssignment &assignment, const PrintOptions &printOnFail=PrintOptions::NO_DBG_PRINT) const
::std::string annotation() const
PolyPtrSet getConstraintPolynomials() const
Required for interfacing with BREX. Should be optimized in the future.
virtual ::std::string annotation() const
::std::set< Variable, VariableStrictOrder > set
A set of Variables should be declared as follows: Variable::set s1;.
virtual Polynomial asPolynomial() const
Rank1Constraint(const LinearCombination &a, const LinearCombination &b, const LinearCombination &c, const ::std::string &name)
ConstraintPtr getConstraint(size_t idx)
bool isSatisfied(const VariableAssignment &assignment, const PrintOptions &printOnFail=PrintOptions::NO_DBG_PRINT) const
virtual Polynomial asPolynomial() const =0
size_t getNumberOfConstraints()
virtual const Variable::set getUsedVariables() const
virtual ::std::string annotation() const =0
LinearCombination b() const
virtual const Variable::set getUsedVariables() const
LinearCombination a() const
bool isSatisfied(const VariableAssignment &assignment, const PrintOptions &printOnFail=PrintOptions::NO_DBG_PRINT) const
PolynomialConstraint(const Polynomial &a, const Polynomial &b, const ::std::string &name)