# Crate bellman_ce

source ·## Re-exports§

## Modules§

- This module contains an
`EvaluationDomain`

abstraction for performing various kinds of polynomial arithmetic on top of the scalar field.

## Structs§

- This represents a linear combination of some variables, with coefficients in the scalar field of a pairing-friendly elliptic curve group.
- This is a “namespaced” constraint system which borrows a constraint system (pushing a namespace context) and, when dropped, pops out of the namespace context.
- Represents a variable in our constraint system.
- A “w-ary non-adjacent form” exponentiation context.

## Enums§

- An error that may occur when trying to decode an
`EncodedPoint`

. - Represents the index of either an input variable or auxillary variable.
- An error that may occur when trying to interpret a
`PrimeFieldRepr`

as a`PrimeField`

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

## Traits§

- Computations are expressed in terms of arithmetic circuits, in particular rank-1 quadratic constraint systems. The
`Circuit`

trait represents a circuit that can be synthesized. The`synthesize`

method is called during CRS generation and during proving. - Represents a constraint system which can have new variables allocated and constrains between them formed.
- Affine representation of an elliptic curve point guaranteed to be in the correct prime order subgroup.
- Projective representation of an elliptic curve point guaranteed to be in the correct prime order subgroup.
- An encoded elliptic curve point, which should essentially wrap a
`[u8; N]`

. - An “engine” is a collection of types (fields, elliptic curve groups, etc.) with well-defined relationships. In particular, the G1/G2 curve groups are of prime order
`r`

, and are equipped with a bilinear pairing function. - This trait represents an element of a field.
- Affine representation of an elliptic curve point guaranteed to be in the correct prime order subgroup.
- Projective representation of an elliptic curve point guaranteed to be in the correct prime order subgroup.
- This represents an element of a prime field.
- This trait represents a wrapper around a biginteger which can encode any element of a particular prime field. It is a smart wrapper around a sequence of
`u64`

limbs, least-significant digit first. - An “engine” is a collection of types (fields, elliptic curve groups, etc.) with well-defined relationships. Specific relationships (for example, a pairing-friendly curve) can be defined in a subtrait.
- This trait represents an element of a field that has a square root operation described for it.

## Functions§

- Calculate a + b + carry, returning the sum and modifying the carry value.
- Calculate a + (b * c) + carry, returning the least significant digit and setting carry to the most significant digit.
- Calculate a - b - borrow, returning the result and modifying the borrow value.