Expand description
This crate implements common “gadgets” that make programming rank-1 constraint systems easier.
Modules§
- alloc
- Utilities for allocating new variables in a constraint system.
- boolean
- This module contains
Boolean, an R1CS equivalent of thebooltype. - cmp
- Utilities for comparing variables.
- convert
- Utilities for converting variables to other kinds of variables.
- eq
- Utilities for checking equality of variables.
- fields
- Finite field arithmetic.
- groups
- Implementations of elliptic curve group arithmetic for popular curve models.
- macros
- Some utility macros for making downstream impls easier.
- pairing
- Gadgets for computing pairings in bilinear groups.
- poly
- Definitions of polynomial variables over finite fields.
- prelude
- select
- Contains traits for conditionally selecting a variable from a list of variables.
- uint
- This module contains a macro for generating
UIntNtypes, which are R1CS equivalents ofN-bit unsigned integers. - uint8
- This module contains
UInt8, a R1CS equivalent of theu8type. - uint16
- uint32
- uint64
- uint128
Macros§
- impl_
bounded_ ops - Implements arithmetic traits (eg:
Add,Sub,Mul) for the given type using the impl in$impl. - impl_
bounded_ ops_ diff - Implements arithmetic traits (eg:
Add,Sub,Mul) for the given type using the impl in$impl. - impl_
ops - Implements arithmetic traits (eg:
Add,Sub,Mul) for the given type using the impl in$impl.
Traits§
- Assignment
- A utility trait to convert
SelftoResult<T, SynthesisErrorA.>