Skip to content

Commit

Permalink
Kimchi/Expr: document ConstantTerm
Browse files Browse the repository at this point in the history
  • Loading branch information
dannywillems committed Mar 7, 2024
1 parent f9d74cc commit d73cdc6
Showing 1 changed file with 9 additions and 0 deletions.
9 changes: 9 additions & 0 deletions kimchi/src/circuits/expr.rs
Original file line number Diff line number Diff line change
Expand Up @@ -266,6 +266,15 @@ pub enum ChallengeTerm {
JointCombiner,
}

/// Define the constant terms an expression can use.
/// It can be any constant term (`Literal`), a matrix (`Mds` - used by the
/// permutation used by Poseidon for instance), or endomorphism coefficients
/// (`EndoCoefficient` - used as an optimisation).
/// As for `challengeTerm`, it has been used initially to implement the PLONK
/// IOP, with the custom gate Poseidon. However, the terms have no built-in
/// semantic in the expression framework.
/// TODO: we should generalize the expression type over challenges and constants.
/// See <https://github.com/MinaProtocol/mina/issues/15287>
#[derive(Copy, Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
pub enum ConstantTerm<F> {
EndoCoefficient,
Expand Down

0 comments on commit d73cdc6

Please sign in to comment.