This PR focused on improving the interface which mopro-core uses to use user-provided halo2 circuits.
Changes in halo2/mod.rs: Because the circuits can be built on top of halo2_proofs which uses the params feature, while some do not, the decision was to move the variable logic to the user-provided circuit.
Introduced mopro.rs in fibonacci: To simplify the lib.rs as well as make it easier for people integrating the Halo2 version of mopro, moved all functionality which mopro-core requires for users circuit crate to implement into a dedicated mopro.rs module file.
mopro-core/build.rs: Added Halo2 specific template config to make testing possible for halo2 template circuits within mopro-core
template changes:
Updated the Halo2 Fibonacci example in template to be consistent with the new interface.
Renamed Halo2 Finabocci View to be explicitly for Fibonacci
This PR focused on improving the interface which
mopro-core
uses to use user-provided halo2 circuits.halo2/mod.rs
: Because the circuits can be built on top ofhalo2_proofs
which uses theparams
feature, while some do not, the decision was to move the variable logic to the user-provided circuit.mopro.rs
infibonacci
: To simplify thelib.rs
as well as make it easier for people integrating the Halo2 version of mopro, moved all functionality whichmopro-core
requires for users circuit crate to implement into a dedicatedmopro.rs
module file.mopro-core/build.rs
: Added Halo2 specific template config to make testing possible for halo2 template circuits withinmopro-core