17 releases (10 breaking)

0.11.0 Nov 5, 2024
0.9.1 Apr 4, 2024
0.8.0 Feb 27, 2024
0.7.0 Oct 11, 2023
0.1.0 Nov 16, 2021

#16 in #program

Download history 2198/week @ 2024-07-23 2945/week @ 2024-07-30 2071/week @ 2024-08-06 2090/week @ 2024-08-13 2188/week @ 2024-08-20 2077/week @ 2024-08-27 1215/week @ 2024-09-03 2071/week @ 2024-09-10 2085/week @ 2024-09-17 1309/week @ 2024-09-24 1436/week @ 2024-10-01 1018/week @ 2024-10-08 898/week @ 2024-10-15 904/week @ 2024-10-22 184/week @ 2024-10-29 1743/week @ 2024-11-05

3,979 downloads per month
Used in 39 crates (14 directly)

MIT license

425KB
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–32MB
~492K SLoC