Crate zksync_bellman

source ·

Re-exports§

Modules§

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§

Derive Macros§