pub use errors::*;



Constraint counter for testing purposes.

This represents a linear combination of some variables, with coefficients in the field F. The (coeff, var) pairs in a LinearCombination are kept sorted according to the index of the variable in its constraint system.

This is a “namespaced” constraint system which borrows a constraint system (pushing a namespace context) and, when dropped, pops out of the namespace context.

Constraint system for testing purposes.

Constraint system for testing purposes.

Represents a variable in a constraint system.


Either a Variable or a LinearCombination.

Represents the index of either a public variable (input) or a private variable (auxiliary).


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.

Represents a constraint system which can have new variables allocated and constrains between them formed.

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

This field is the scalar field (Fr) of BLS12-377.