Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(prover): Initial powdr support #407

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

leonardoalt
Copy link

This PR adds initial support to powdr proofs.

The builder works differently from r0/sp1: instead of requiring the cargo commands to compile the Rust code to ELF binaries and keep the binaries, the powdr builder calls the powdr lib to compile Rust code to powdr assembly and to powdr PIL. From that point on, the driver can load the powdr pil file to make proofs.

TODO: (missing for the first version)

  • powdr runtime needs to implement getenv
  • powdr runtime needs to replace CBOR with something that supports u128
  • I'm not sure all my changes in the scripts are correct/enough
  • the current driver is only executing, not making proofs yet (for testing)
  • the internal bench tests ecdsa and sha256

@CeciliaZ030 review welcome on the general architecture and how I linked things, since some of them are different from R0/SP1.

quote = { workspace = true }
proc-macro2 = { workspace = true }
quote = { workspace = true }
proc-macro2 = { workspace = true }
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cargo fmt did this

@leonardoalt leonardoalt changed the title Initial powdr support feat(prover): Initial powdr support Nov 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant