This project is a submission to ETH Berlin, building on powdr and powdr-py
.
With this library, you can specify zk-VMs succinctly in Python. For example, see:
src/hello_world.py
: An example VM with several registers, control flow instructions, and memory.hello_world.asm
: An assembly program written for the "Hello world" processor defined above.src/demo.py
: The main python program to compile the zk-VM and generate a proof for the correct execution of the assembly program.
# Install pixi
curl -fsSL https://pixi.sh/install.sh | bash
# or use alternative installation methods:
https://pixi.sh/latest/
# Install the project requirements
pixi install
pixi run install-powdr
# Enter the pixi environment
pixi shell