An interface for dealing with the kinds of parallel computations involved in
bellman. It’s currently just a thin wrapper around [rayon] but may be
extended in the future to allow for various parallelism strategies.
This is a “namespaced” constraint system which borrows a constraint system (pushing
a namespace context) and, when dropped, pops out of the namespace context.
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.