halo2 icon indicating copy to clipboard operation
halo2 copied to clipboard

Implement Plonky3 frontend adaptor

Open ed255 opened this issue 10 months ago • 1 comments

Plonky3 frontend implementation. Allows using a circuit defined with the Air trait from plonky3 to be proved with a halo2 backend.

Bump rust version from 1.73.0 to 1.75.0 because plonky3 requires it.

ed255 avatar Apr 02 '24 11:04 ed255

I just made this PR ready for review to get some feedback. There are some TODOs in the code but the main logic is working.

ed255 avatar Apr 09 '24 11:04 ed255

Codecov Report

Attention: Patch coverage is 95.93095% with 33 lines in your changes are missing coverage. Please review.

Project coverage is 81.84%. Comparing base (87fb07f) to head (37c916f).

Files Patch % Lines
p3_frontend/src/lib.rs 94.00% 15 Missing :warning:
p3_frontend/src/symbolic_expression.rs 95.33% 11 Missing :warning:
p3_frontend/src/fwrap.rs 97.68% 5 Missing :warning:
halo2_backend/src/helpers.rs 0.00% 1 Missing :warning:
p3_frontend/src/symbolic_builder.rs 97.14% 1 Missing :warning:
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #306      +/-   ##
==========================================
+ Coverage   80.86%   81.84%   +0.97%     
==========================================
  Files          80       82       +2     
  Lines       16567    17000     +433     
==========================================
+ Hits        13397    13913     +516     
+ Misses       3170     3087      -83     

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov-commenter avatar May 17 '24 11:05 codecov-commenter

I've added unit tests and increased the test coverage to ~90% The only file that doesn't have unit tests is the p3_frontend/src/lib.rs, but most of it is covered by the fibonacci and keccak tests. Nevertheless I may add unit tests for that in the future.

ed255 avatar May 21 '24 13:05 ed255