Clearmatics Libsnark  0.1
C++ library for zkSNARK proofs
Namespaces | Functions
r1cs_to_sap.hpp File Reference
#include <libsnark/relations/arithmetic_programs/sap/sap.hpp>
#include <libsnark/relations/constraint_satisfaction_problems/r1cs/r1cs.hpp>
#include <libsnark/reductions/r1cs_to_sap/r1cs_to_sap.tcc>
Include dependency graph for r1cs_to_sap.hpp:

Go to the source code of this file.

Namespaces

 libsnark
 

Functions

template<typename FieldT >
std::shared_ptr< libfqfft::evaluation_domain< FieldT > > libsnark::r1cs_to_sap_get_domain (const r1cs_constraint_system< FieldT > &cs)
 
template<typename FieldT >
sap_instance< FieldT > libsnark::r1cs_to_sap_instance_map (const r1cs_constraint_system< FieldT > &cs)
 
template<typename FieldT >
sap_instance_evaluation< FieldT > libsnark::r1cs_to_sap_instance_map_with_evaluation (const r1cs_constraint_system< FieldT > &cs, const FieldT &t)
 
template<typename FieldT >
sap_witness< FieldT > libsnark::r1cs_to_sap_witness_map (const r1cs_constraint_system< FieldT > &cs, const r1cs_primary_input< FieldT > &primary_input, const r1cs_auxiliary_input< FieldT > &auxiliary_input, const FieldT &d1, const FieldT &d2)
 

Detailed Description

Declaration of interfaces for a R1CS-to-SAP reduction, that is, constructing a SAP ("Square Arithmetic Program") from a R1CS ("Rank-1 Constraint System").

SAPs are defined and constructed from R1CS in [GM17].

The implementation of the reduction follows, extends, and optimizes the efficient approach described in Appendix E of [BCGTV13].

References:

[BCGTV13] "SNARKs for C: Verifying Program Executions Succinctly and in Zero Knowledge", Eli Ben-Sasson, Alessandro Chiesa, Daniel Genkin, Eran Tromer, Madars Virza, CRYPTO 2013, http://eprint.iacr.org/2013/507

[GM17]: "Snarky Signatures: Minimal Signatures of Knowledge from Simulation-Extractable SNARKs", Jens Groth and Mary Maller, IACR-CRYPTO-2017, https://eprint.iacr.org/2017/540

Author
This file is part of libsnark, developed by SCIPR Lab and contributors (see AUTHORS).

Definition in file r1cs_to_sap.hpp.