Modules
- An argument is simply a number of constraints, which we want to enforce on all points of the domain. Both the permutation and the plookup arguments fit this type. Gates can be seen as filtered arguments, which apply only in some points (rows) of the domain. For more info, read book/src/kimchi/arguments.md
- This module defines the particular form of the expressions used in the Mina Berkeley hardfork. You can find more information in this blog article. This module is also a good starting point if you want to implement your own variant of Kimchi using the expression framework.
- This module implements Plonk circuit constraint primitive.
- This contains the DomainConstantEvaluations which is used to provide precomputations to a ConstraintSystem.
- This module describes the evaluation domains that can be used by the polynomials.
- This module implements Plonk constraint gate primitive.
- This module implement the lookup argument. See https://eprint.iacr.org/2020/315.pdf
- This module implements Plonk prover polynomials primitive.
- This module implements Plonk prover polynomial evaluations primitive.
- This module implements Plonk circuit gate wires primitive.