Crate ark_r1cs_std

source ·
Expand description

This crate implements common “gadgets” that make programming rank-1 constraint systems easier.

Re-exports

pub use self::bits::*;

Modules

This module describes a trait for allocating new variables in a constraint system.
This module implements gadgets related to bit manipulation, such as Boolean and UInts.
This module describes a trait for checking equality of variables.
This module implements gadgets related to field arithmetic.
This module implements gadgets related to group arithmetic, and specifically elliptic curve arithmetic.
Some utility macros for making downstream impls easier.
This module implements gadgets related to computing pairings in bilinear groups.
This module implements functions for manipulating polynomial variables over finite fields.
This module describes traits for conditionally selecting a variable from a list of variables.

Macros

Implements arithmetic traits (eg: Add, Sub, Mul) for the given type using the impl in $impl.
Implements arithmetic traits (eg: Add, Sub, Mul) for the given type using the impl in $impl.

Traits

A utility trait to convert Self to Result<T, SynthesisErrorA.>
This trait describes some core functionality that is common to high-level variables, such as Booleans, FieldVars, GroupVars, etc.
Specifies how to convert a variable of type Self to variables of type FpVar<ConstraintF>