v0.6.0: Proof Composition Support
π Release v0.6.0: Proof Composition Support
Major Features
π Full Proof Composition
- ExecutorEnv class: Build execution environments with assumptions for proof composition
- prove_with_env() function: Generate proofs with custom environments containing assumptions
- Assumption-based recursion: One zkVM guest can now verify proofs from another efficiently
- Lazy verification: Assumptions are verified when the final proof is generated
π Documentation
- Comprehensive Proof Composition Guide: Added detailed section to README explaining:
- How composition works conceptually
- Complete working examples with full code
- Critical implementation details
- Advanced patterns and use cases
- Performance and security considerations
- Troubleshooting guide
π§Ή Code Quality Improvements
- Production-ready demos: Removed all debug markers and placeholder code
- Clean test suite: Added composition test to comprehensive test runner
- No shortcuts: All test and demo code now production-quality with no misleading fallbacks
π Example Usage
# Create environment with inner proof as assumption
env = pyr0.ExecutorEnv()
env.add_assumption(inner_receipt)
# Add input data for outer guest
env.write(expected_data)
env.write(inner_image_id)
# Generate composed proof
outer_receipt = pyr0.prove_with_env(outer_image, env)
# Single verification proves both computations!
outer_receipt.verify_hex(outer_image_id)π Use Cases Enabled
- Multi-step computations: Break complex algorithms into verifiable steps
- Privacy-preserving pipelines: Different parties prove different parts
- Modular verification: Build libraries of verified components
- Proof aggregation: Combine multiple proofs into one
β οΈ Note
This is an experimental alpha release (v0.6.0) currently targeting Apple Silicon (M1/M2/M3) Macs only.
π Acknowledgments
Built on RISC Zero's powerful zkVM and assumption-based recursion model.
π€ Generated with Claude Code