Module ark_relations::r1cs

source ·
Expand description

Core interface for working with Rank-1 Constraint Systems (R1CS).

Macros

Constructs a span at the info level.

Structs

The A, B and C matrices of a Rank-One ConstraintSystem. Also contains metadata on the structure of the constraint system and the matrices.
An Rank-One ConstraintSystem. Enforces constraints of the form ⟨a_i, z⟩ ⋅ ⟨b_i, z⟩ = ⟨c_i, z⟩, where a_i, b_i, and c_i are linear combinations over variables, and z is the concrete assignment to these variables.
An opaque counter for symbolic linear combinations.
A linear combination of variables according to associated coefficients.
A namespaced ConstraintSystemRef.

Enums

A shared reference to a constraint system that can be stored in high level variables.
Defines the parameter to optimize for a ConstraintSystem.
This is an error that could occur during circuit synthesis contexts, such as CRS generation, proving or verification.
Defines the mode of operation of a ConstraintSystem.
Represents the different kinds of variables present in a constraint system.

Traits

Computations are expressed in terms of rank-1 constraint systems (R1CS). The generate_constraints method is called to generate constraints for both CRS generation and for proving.
The interface for a generic field.
Types implementing Field support common field operations such as addition, subtraction, multiplication, and inverses.
Types that can be converted to a vector of F elements. Useful for specifying how public inputs to a constraint system should be represented inside that constraint system.

Type Definitions

A sparse representation of constraint matrices.
A result type specialized to SynthesisError.