Re-exports

pub use super::*;

Modules

Macros

Asserts the count for a given operation and case, and ensure the circuit is satisfied.
Asserts the count for a given operation and case, and ensure the circuit is NOT satisfied.
Asserts the output mode for a given operation and case.
The witness! macro is a closure that takes in a list of circuits, eject the value of each circuit, and uses it in the subsequent code block.
The witness_mode! macro returns the expected mode given a list of circuits.

Structs

A struct for tracking the mapping of variables from the virtual machine (first) to the gadget constraint system (second).
A helper struct for tracking the number of constants, public inputs, private inputs, and constraints.

Enums

Helper enum used in the case where a circuit’s output mode or counts are determined by its mode and the actual value of the circuit.
A Measurement is a quantity that can be measured. The variants of the Measurement defines a condition associated with the measurable quantity.

Traits

Unary operator for retrieving the absolute value, enforcing an overflow never occurs.
Unary operator for retrieving the absolute value, bounding the difference to MAX if an overflow occurs.
Unary operator for retrieving the absolute value, wrapping the result if an overflow occurs.
Binary operator for adding two values, enforcing an overflow never occurs.
Binary operator for adding two values, bounding the sum to MAX if an overflow occurs.
Binary operator for adding two values, wrapping the sum if an overflow occurs.
A single-bit binary adder with a carry bit.
Representation of a boolean.
Trait for comparator operations.
Binary operator for dividing two values, enforcing an overflow never occurs.
Binary operator for dividing two values, bounding the quotient to MAX or MIN if an overflow occurs.
Binary operator for dividing two values, wrapping the quotient if an overflow occurs.
Unary operator for retrieving the doubled value.
Operations to eject from a circuit environment into primitive form.
Trait for equality comparisons.
Representation of a base field element.
Unary operator for instantiating from bits.
Unary operator for instantiating from a boolean.
Unary operator for converting from a base field element.
Unary operator for converting from a list of base elements.
Unary operator for converting from an affine group element.
Representation of a group element.
Operations to inject from a primitive form into a circuit environment.
Representation of an integer.
Unary operator for retrieving the inverse value.
Unary operator for retrieving the most-significant bit.
Trait for determining the number of constants, public input, private inputs, and constraints for an operation.
Binary operator for modding two values.
Binary operator for multiplying two values, enforcing an overflow never occurs.
Binary operator for multiplying two values, bounding the product to MAX if an overflow occurs.
Binary operator for multiplying two values, wrapping the product if an overflow occurs.
Binary operator for performing NOT (a AND b).
Binary operator for performing (NOT a) AND (NOT b).
Representation of the one value.
Trait for determining the mode of the output of an operation.
Binary operator for exponentiating two values, enforcing an overflow never occurs.
Binary operator for exponentiating two values, wrapping the result if an overflow occurs.
Binary operator for dividing two values and returning the remainder, enforcing an overflow never occurs.
Binary operator for dividing two values, bounding the remainder to MAX or MIN if an overflow occurs.
Binary operator for dividing two values, wrapping the remainder if an overflow occurs.
Representation of a scalar field element.
Binary operator for left shifting a value, checking that the rhs is less than the number of bits in self.
Binary operator for left shifting a value, safely continuing past the number of bits in self.
Binary operator for right shifting a value, checking that the rhs is less than the number of bits in self.
Binary operator for right shifting a value, safely continuing past the number of bits in self.
Unary operator for retrieving the squared value.
Unary operator for retrieving the square root of the value.
Binary operator for subtracting two values, enforcing an underflow never occurs.
Binary operator for subtracting two values, bounding the difference to MIN if an underflow occurs.
Binary operator for subtracting two values, wrapping the difference if an underflow occurs.
A single-bit binary subtractor with a borrow bit.
Trait for ternary operations.
Unary operator for converting to bits.
Unary operator for converting to a base field.
Unary operator for converting to a list of base fields.
Unary operator for converting to an affine group.
Unary operator for converting to k number of bits.
Unary operator for converting to k number of bits.
Representation of the zero value.

Type Definitions