v0.2.0
Pre-release
Pre-release
This version of AirScript is capable of expressing ~90% of the constraints for the MidenVM.
- Added support for named constants (scalars, vectors, and matrices).
- Added support for intermediate variables in
boundary_constraints
andintegrity_constraints
sections (scalars, vectors, and matrices). - Added support for binding identifier names to groups of trace columns (in addition to single columns, which were already supported).
- Added the
$main
and$aux
built-ins for accessing columns in the execution trace by index. - [BREAKING] Replaced the
$rand
built-in for accessing random values with an explicitrandom_values
declaration section, enabling use of a custom identifier for the random values array. - Added support for binding identifiers to specific random values or groups of random values.
- Made significant changes to the IR, including:
- Moved the boundary constraints into the algebraic constraint graph.
- Made the trace reference more general to support additional trace segments in the future.
- Added analysis to differentiate between validity and transition constraints.
- Added the
Sub
operation and removed theNeg
operation.
- [FIX] Fixed a bug in the Winterfell codegen output for auxiliary transition constraints.
- Improved the Winterfell codegen by consolidating code generation for boundary and transition constraints and removing redundant parentheses.