Crate triton_constraint_circuit

Source
Expand description

Constraint circuits are a way to represent constraint polynomials in a way that is amenable to optimizations. The constraint circuit is a directed acyclic graph (DAG) of CircuitExpressions, where each CircuitExpression is a node in the graph. The edges of the graph are labeled with BinOps. The leafs of the graph are the inputs to the constraint polynomial, and the (multiple) roots of the graph are the outputs of all the constraint polynomials, with each root corresponding to a different constraint polynomial. Because the graph has multiple roots, it is called a “multitree.”

Structs§

Enums§

  • A circuit expression is the recursive data structure that represents the constraint circuit. It is a directed, acyclic graph of binary operations on a) the variables corresponding to columns in the AET, b) constants, and c) challenges. It has multiple roots, making it a “multitree.” Each root corresponds to one constraint.
  • The position of a variable in a constraint polynomial that operates on two rows (current and next) of the execution trace.
  • The position of a variable in a constraint polynomial that operates on a single row of the execution trace.

Traits§

  • Describes the position of a variable in a constraint polynomial in the row layout applicable for a certain kind of constraint polynomial.