## Expand description

## Structs§

- An advice column
- Query of advice column at a certain relative location
- A verifier that checks multiple proofs in a batch.
**This requires the**`batch`

crate feature to be enabled. - A column with an index and type
- An individual polynomial constraint.
- This is a description of the circuit environment, such as the gate, column and permutation arrangements.
- A set of polynomial constraints with a common selector.
- A fixed column
- Query of fixed column at a certain relative location
- Gate
- An instance column
- Query of instance column at a certain relative location
- Represents the minimal parameters that determine a
`ConstraintSystem`

. - Minimal representation of a verification key that can be used to identify its active contents.
- This is a proving key which allows for the creation of proofs for a particular circuit.
- A selector, representing a fixed boolean value per row of the circuit.
- A verifier that checks a single proof at a time.
- A fixed column of a lookup table.
- This is a verifying key which allows for the verification of proofs for a particular circuit.
- Exposes the “virtual cells” that can be queried while creating a custom gate or lookup table.

## Enums§

- An enum over the Advice, Fixed, Instance structs
- A value assigned to a cell within a circuit.
- This is an error that could occur during proving or circuit synthesis.
- Low-degree expression representing an identity that must hold over the committed columns.
- This is an error that could occur during table synthesis.

## Traits§

- This trait allows a
`Circuit`

to direct some backend to assign a witness for a constraint system. - This is a trait that circuits provide implementations for so that the backend prover can ask the circuit to synthesize using some given
`ConstraintSystem`

implementation. - A column type
- A floor planning strategy for a circuit.
- Trait representing a strategy for verifying Halo 2 proofs.

## Functions§

- This creates a proof for the provided
`circuit`

when given the public parameters`params`

and the proving key`ProvingKey`

that was generated previously for the same circuit. The provided`instances`

are zero-padded internally. - Generate a
`ProvingKey`

from a`VerifyingKey`

and an instance of`Circuit`

. - Generate a
`VerifyingKey`

from an instance of`Circuit`

. - Returns a boolean indicating whether or not the proof is valid