Module ark_relations::r1cs[][src]

Expand description

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

Macros

info_span

Constructs a span at the info level.

Structs

ConstraintMatrices

The A, B and C matrices of a Rank-One ConstraintSystem. Also contains metadata on the structure of the constraint system and the matrices.

ConstraintSystem

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.

LcIndex

An opaque counter for symbolic linear combinations.

LinearCombination

A linear combination of variables according to associated coefficients.

Namespace

A namespaced ConstraintSystemRef.

Enums

ConstraintSystemRef

A shared reference to a constraint system that can be stored in high level variables.

OptimizationGoal

Defines the parameter to optimize for a ConstraintSystem.

SynthesisError

This is an error that could occur during circuit synthesis contexts, such as CRS generation, proving or verification.

SynthesisMode

Defines the mode of operation of a ConstraintSystem.

Variable

Represents the different kinds of variables present in a constraint system.

Traits

ConstraintSynthesizer

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.

Field

The interface for a generic field.

ToConstraintField

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

Matrix

A sparse representation of constraint matrices.

Result

A result type specialized to SynthesisError.