19 releases (12 breaking)

Uses new Rust 2024

new 0.13.0 Mar 21, 2025
0.11.0 Nov 5, 2024
0.9.1 Apr 4, 2024
0.8.0 Feb 27, 2024
0.1.0 Nov 16, 2021

#8 in #execution-trace

Download history 959/week @ 2024-12-01 839/week @ 2024-12-08 604/week @ 2024-12-15 399/week @ 2024-12-22 274/week @ 2024-12-29 926/week @ 2025-01-05 1333/week @ 2025-01-12 1807/week @ 2025-01-19 1037/week @ 2025-01-26 618/week @ 2025-02-02 1040/week @ 2025-02-09 1228/week @ 2025-02-16 1359/week @ 2025-02-23 664/week @ 2025-03-02 1553/week @ 2025-03-09 1802/week @ 2025-03-16

5,405 downloads per month
Used in 49 crates (17 directly)

MIT license

435KB
8K SLoC

Miden core

This crate contains core components used by Miden VM. These components include:

  • Miden VM instruction set, defined in the Operation struct.
  • Miden VM program kernel, defined in Kernel struct which contains a set of roots of kernel routines.
  • Miden VM program structure, defined in Program struct and described here.
  • Miden VM program metadata, defined in ProgramInfo struct which contains a program's MAST root and the kernel used by the program.
  • Input and output containers for Miden VM programs, defined in StackInputs and StackOutputs structs.
  • Constants describing the shape of the VM's execution trace.
  • Various minor utility functions used by other VM crates.

License

This project is MIT licensed.

Acknowledgements

The racy_lock module found under core/src/utils/sync is based on the once_cell crate's implementation of race::OnceBox.

Dependencies

~8–32MB
~469K SLoC