# 2-Chain and 2-Cycle of Elliptic Curves

## 2-Chain of Elliptic Curves

#### Definition 1.&#x20;

A **2-chain** of elliptic curves is a list of two distinct curves $$E\_1 / \mathbb{F}*{p\_1}$$ and $$E\_2/ \mathbb{F}*{p\_2}$$ where $$p\_1$$ divides $$#E\_2(\mathbb{F}\_{p\_2})$$. The first curve is denoted the **inner curve**, while the second curve whose order is the characteristic of the inner curve, is denoted the **outer curve**.&#x20;

<figure><img src="/files/ycwCfC0WBBYDy5Voltff" alt=""><figcaption></figcaption></figure>

SNARK-friendly 2-chains are composed of two curves that have subgroups of orders $$r\_1$$ and $$r\_2$$ where $$r\_1 | #E\_1(\mathbb{F}*{p\_1})$$,  $$r\_2 | #E\_2(\mathbb{F}*{p\_2})$$ and $$r\_1 \equiv r\_2 \equiv 1 \mod 2^L$$ for a large integer $$L$$ (2-adicity). An example of a 2-chain for SNARK is composed of the inner curve BLS12-377 and the outer curve BW6-761.

## 2-Cycle of Elliptic Curves

#### Definition 2.

A **2-cycle** of elliptic curves is a list of two distinct prime-order curves $$E\_1 / \mathbb{F}*{p\_1}$$and $$E\_2/ \mathbb{F}*{p\_2}$$ where $$p\_1$$ and $$p\_2$$ are large primes where $$p\_1 = #E\_2(\mathbb{F}*{p\_2})$$ and $$p\_2 = #E\_1(\mathbb{F}*{p\_1})$$. Similarly to the definition of 2-chain, by SNARK-friendly 2-cycles we mean the cycles composed of two curves whose orders satisfy the following : $$#E\_1(\mathbb{F}*{p\_1}) \equiv #E\_2(\mathbb{F}*{p\_2}) \equiv 1 \mod 2^L$$ for a large integer $$L$$ (2-adicity).&#x20;

A 2-cycle is a 2-chain where **both curves are inner and outer curves with respect to each other.**&#x20;

<figure><img src="/files/5PvgqWZe0L0gDrtjecTb" alt=""><figcaption></figcaption></figure>

**Recursive SNARKs** benefit significantly from the structure of a 2-cycle of elliptic curves. In recursive constructions, a proof generated over one elliptic curve needs to be verified inside a SNARK circuit that runs over another curve. A 2-cycle enables this by ensuring that each curve’s scalar field matches the group order of the other, allowing seamless recursion across curves. This mutual compatibility is essential for recursive proof composition and is used in systems like Halo2 and Nova.

***

## Reference

* <https://eprint.iacr.org/2022/1400.pdf#page=6>

> Written by [Carson Lee](mailto:undefined) of Fractalyze


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://fractalyze.gitbook.io/intro/primitives/abstract-algebra/elliptic-curve/2-chain-and-2-cycle-of-elliptic-curves.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
