ποΈ Phase 1: Supporting Primitive Operators
Support All Primitive Operators
Support All Primitive Operators
In this foundational phase, LuminAIR focuses on supporting a minimal set of 11 primitive operators,
which are sufficient to implement a wide range of machine learning models, such as linear regression, convolutional networks, and transformers.
Operator | Status |
---|---|
Log2 | β |
Exp2 | β |
Sin | β |
Sqrt | β |
Recip | β |
Add | β |
Mul | β |
Mod | β |
LessThan | β |
SumReduce | β |
MaxReduce | β |
Contiguous | β |
- These operators are implemented via the
PrimitiveCompiler
, a subset of theStwoCompiler
. - Each operator requires a corresponding specialized component in the AIR (Algebraic Intermediate Representation).
This phase currently under active development ποΈ.
π Phase 2: Optimizations and Accessibility
This phase focuses on improving performance and developer experience by introducing fused compilers, specialized operators, and easier integration tools.Implement Fused and Specialized Compilers
Implement Fused and Specialized Compilers
A small primitive operator set can lead to computational graphs with hundreds or thousands of operations, making them slow to execute and prove.To address this, we will:
- Develop compilers that fuse multiple primitive operations into efficient composite operators.
- Add support for common ML operators like
MatMul
,SoftMax
, andReLU
. - Extend the AIR with specialized components for these new operators.
Improve DX with a Python SDK
Improve DX with a Python SDK
Currently, LuminAIR is written in Rust, requiring users to interact with it through Rust code.
A Python SDK will be developed to make LuminAIR more accessible to data scientists and ML practitioners who are more familiar with Python.
WASM Verifier Support
WASM Verifier Support
This task will enable proof verification directly in web browsers using WebAssembly (WASM).
π Phase 3: Decentralized Verification and GPU Support
This phase aims to bring LuminAIR proofs into decentralized ecosystems and enhance performance through GPU acceleration.Onchain Proof Verification
Onchain Proof Verification
Deploy the LuminAIR verifier as a smart contract for decentralized proof verification.
Possible approaches include:
- Implementing the verifier as a Cairo program verified on Starknet.
- Leveraging Ethereumβs crypto-economic security via AVSs networks like Aligned Layer.
Support for Icicle-Stwo Backend (GPU Acceleration)
Support for Icicle-Stwo Backend (GPU Acceleration)
Integrate support for Icicle-Stwo, which enables GPU acceleration via CUDA backends.
This will significantly improve the speed of proof generation for large-scale models
π Phase 4: Future Enhancements
Details for this phase are yet to be finalized but may include:- Support for ONNX graph.
- Continuation mechanism, allowing the proof to be divided into several parts that can be proved in parallel.
- Expanding compatibility with additional ZK backends.