From 5819cf4b418204ec8b5219b4fdc08b6785f3d750 Mon Sep 17 00:00:00 2001 From: eittah Date: Sat, 28 Sep 2024 13:46:22 +0800 Subject: [PATCH] 45_plonky3 --- 45_Plonky3.md | 22 +++++++++++----------- images/45_01_quotient.png | Bin 0 -> 34927 bytes images/45_02_reduce01.png | Bin 0 -> 20470 bytes images/45_03_reduce02.png | Bin 0 -> 19697 bytes 4 files changed, 11 insertions(+), 11 deletions(-) create mode 100644 images/45_01_quotient.png create mode 100644 images/45_02_reduce01.png create mode 100644 images/45_03_reduce02.png diff --git a/45_Plonky3.md b/45_Plonky3.md index 0f1a7f8..67f9864 100644 --- a/45_Plonky3.md +++ b/45_Plonky3.md @@ -665,9 +665,9 @@ The prover in FRI handles a batch of polynomials and needs to evaluate them over 2. **Batched Quotient Polynomial**: For each distinct degree $d$, the prover computes a batched quotient polynomial as follows: - $$ - q)d(\omega^i) = \sum_{j, k} \alpha^{k+j} \cdot \frac{p_j(\omega^i) - y_{jk}}{\omega^i - z_k} - $$ +
+ Image 1 +
This results in a set of batched quotient polynomials for all degrees $d \in S$. @@ -955,15 +955,15 @@ Once the reduced polynomials $\text{reduce}\_0(X)$ and $\text{reduce}\_1(X)$ are - These openings yield intermediate values used to compute the reduced polynomials. 2. **Constructing the Reduced Polynomial**: - Compute the reduced trace polynomial: - \[ - \text{reduce}_0(X) = \sum \alpha^i \cdot ldt_0(X)\_i + \alpha^{i+1} \cdot ldt_0'(X) - \] - where $ldt_0(X)$ and $ldt_0'(X)$ are the Lagrange polynomials formed from the trace evaluations at $\zeta$ and $\zeta_{\text{next}}$. +
+ Image 1 +
+ where $ldt_0(X)$ and $ldt_0'(X)$ are the Lagrange polynomials formed from the trace evaluations at $\zeta$ and $\zeta_{\text{next}}$. - Similarly, compute the reduced quotient polynomial: - \[ - \text{reduce}\_1(X) = \sum \alpha^i \cdot ldt_2(X)\_i + \alpha^{i+1} \cdot ldt_3(X) - \] - where $ldt_2(X)$ and $ldt_3(X)$ are Lagrange polynomials derived from quotient evaluations. +
+ Image 1 +
+ where $ldt_2(X)$ and $ldt_3(X)$ are Lagrange polynomials derived from quotient evaluations. 3. **Performing the Low-Degree Test**: - Both reduced polynomials $\text{reduce}\_0(X)$ and $\text{reduce}\_1(X)$ undergo a low-degree test to verify their degree bounds. diff --git a/images/45_01_quotient.png b/images/45_01_quotient.png new file mode 100644 index 0000000000000000000000000000000000000000..0c71821b448eeee4e9f65e3ebb3267333e378d31 GIT binary patch literal 34927 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 J#;@b^e*h{S@s9ui literal 0 HcmV?d00001 diff --git a/images/45_02_reduce01.png b/images/45_02_reduce01.png new file mode 100644 index 0000000000000000000000000000000000000000..66725feffce2bfac08f742919a40cf006087d90f GIT binary patch literal 20470 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 literal 0 HcmV?d00001 diff --git a/images/45_03_reduce02.png b/images/45_03_reduce02.png new file mode 100644 index 0000000000000000000000000000000000000000..429f452565774138be2b98a579eb8c24b6e150de GIT binary patch literal 19697 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 literal 0 HcmV?d00001