Skip to content

An ML framework for ensuring the integrity of computational graphs using ZK proofs

Notifications You must be signed in to change notification settings

gizatechxyz/LuminAIR

Repository files navigation

LuminAIR


LuminAIR is a Machine Learning framework that leverages Circle STARK Proofs to ensure the integrity of computational graphs.

It allows provers to cryptographically demonstrate that a computational graph has been executed correctly, while verifiers can validate these proofs with significantly fewer resources than re-executing the graph.

This makes it ideal for applications where trustlessness and integrity are paramount, such as healthcare, finance, decentralized protocols and verifiable agents.

⚠️ Disclaimer: LuminAIR is currently under active development 🏗️.

🚀 Quick Start

To see LuminAIR in action, run the provided example:

$ cd examples/simple
$ cargo run
use luminair_graph::{graph::LuminairGraph, StwoCompiler};
use luminal::prelude::*;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let mut cx = Graph::new();

    // Define tensors
    let a = cx.tensor((2, 2)).set(vec![1.0, 2.0, 3.0, 4.0]);
    let b = cx.tensor((2, 2)).set(vec![10.0, 20.0, 30.0, 40.0]);
    let w = cx.tensor((2, 2)).set(vec![-1.0, -1.0, -1.0, -1.0]);

    // Build computation graph
    let c = a * b;
    let mut d = (c + w).retrieve();

    // Compile the computation graph
    cx.compile(<(GenericCompiler, StwoCompiler)>::default(), &mut d);

    // Execute and generate a trace of the computation graph
    let trace = cx.gen_trace();

    // Generate proof and verify
    let proof = cx.prove(trace)?;
    cx.verify(proof)?;

    Ok(())
}

📖 Documentation

You can check our official documentation here.

🔮 Roadmap

You can check our roadmap to unlock ML integrity here.

🫶 Contribute

Contribute to LuminAIR and be rewarded via OnlyDust.

Check the contribution guideline here

📊 Benchmarks

Check performance benchmarks for LuminAIR operators here.

💖 Contributors

raphaelDkhn
raphaelDkhn

💻
malatrax
malatrax

📖

Acknowledgements

A special thanks to the developers and maintainers of the foundational projects that make LuminAIR possible:

  • Luminal: For providing a robust and flexible deep-learning library that serves as the backbone of LuminAIR.
  • Stwo: For offering a powerful prover and constraint library.
  • Brainfuck-Stwo: Inspiration for creating AIR with the Stwo library.

License

LuminAIR is is open-source software released under the MIT License.

About

An ML framework for ensuring the integrity of computational graphs using ZK proofs

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages