18 releases (11 breaking)

0.12.0 Jan 22, 2025
0.11.0 Nov 5, 2024
0.10.5 Aug 21, 2024
0.9.1 Apr 4, 2024
0.1.0 Nov 16, 2021

#18 in #program

Download history 226/week @ 2024-10-28 1713/week @ 2024-11-04 274/week @ 2024-11-11 892/week @ 2024-11-18 947/week @ 2024-11-25 938/week @ 2024-12-02 842/week @ 2024-12-09 595/week @ 2024-12-16 393/week @ 2024-12-23 266/week @ 2024-12-30 944/week @ 2025-01-06 1319/week @ 2025-01-13 1848/week @ 2025-01-20 1000/week @ 2025-01-27 643/week @ 2025-02-03 1397/week @ 2025-02-10

4,902 downloads per month
Used in 46 crates (15 directly)

MIT license

430KB
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

~7–31MB
~457K SLoC