Skip to content

Commit

Permalink
add nova+cyclefold circuit diagram, add design section
Browse files Browse the repository at this point in the history
  • Loading branch information
arnaucube committed Mar 30, 2024
1 parent 318a601 commit c140e5c
Show file tree
Hide file tree
Showing 5 changed files with 22 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,5 @@
- [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)
6 changes: 6 additions & 0 deletions src/design/design.md
Original file line number Diff line number Diff line change
@@ -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$.
14 changes: 14 additions & 0 deletions src/design/novacyclefold-circuit.md
Original file line number Diff line number Diff line change
@@ -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).

![](/imgs/cyclefold-paper-diagram.jpg)
*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>
Binary file added src/imgs/cyclefold-nova-diagram.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/imgs/cyclefold-paper-diagram.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit c140e5c

Please sign in to comment.