add nova+cyclefold circuit diagram, add design section
arnaucube root@arnaucube.com
Sun, 31 Mar 2024 00:44:27 +0100
5 files changed,
22 insertions(+),
0 deletions(-)
M
src/SUMMARY.md
→
src/SUMMARY.md
@@ -7,3 +7,5 @@ - [Fold](usage/fold.md)
- [Decider prove](usage/decider-prove.md) - [Solidity verifier](usage/solidity-verifier.md) - [Modularity](usage/modularity.md) +- [Design](design/design.md) + - [Nova+CycleFold circuit](design/novacyclefold-circuit.md)
A
src/design/design.md
@@ -0,0 +1,6 @@
+# Design + +#### Notation +We work on a cycle of curves composed by $E_1$ and $E_2$, where $E_1.F_r = E_2.F_q$ and $E_1.F_q=E_2.F_r$. +We will use $F_r$ to refer to $E_1.F_r=E_2.F_q$, and $F_q$ to refer to $E_1.F_q=E_2.F_r$. +The main circuit constraint field is $F_r$, and $C_{EC}$ circuit constraint field is $F_q$.
A
src/design/novacyclefold-circuit.md
@@ -0,0 +1,14 @@
+# Nova + CycleFold + +[CycleFold](https://eprint.iacr.org/2023/1192.pdf) improves the usage of the cycle of curves proposed in [Nova](https://eprint.iacr.org/2021/370.pdf). + + +*CycleFold applied to HyperNova, src: [https://eprint.iacr.org/2023/1192.pdf](https://eprint.iacr.org/2023/1192.pdf)* + +<br> + +We use a concrete version of the CycleFold approach applied to Nova. + +The following image provides a description of the main Nova circuit and CycleFold circuit over a couple of steps, implemented at [nova/circuits.rs](https://github.com/privacy-scaling-explorations/folding-schemes/blob/main/folding-schemes/src/folding/nova/circuits.rs) and [nova/cyclefold.rs](https://github.com/privacy-scaling-explorations/folding-schemes/blob/main/folding-schemes/src/folding/nova/cyclefold.rs). + +<a href="../imgs/cyclefold-nova-diagram.png" title="click to expand"><img src="../imgs/cyclefold-nova-diagram.png" /></a>