Skip to content

Commit

Permalink
Merge pull request #2390 from rkdud007/fix/readme
Browse files Browse the repository at this point in the history
chore: readme
  • Loading branch information
volhovm authored Jun 30, 2024
2 parents 2a59ff8 + a879ce1 commit 0dafa84
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 9 deletions.
2 changes: 1 addition & 1 deletion book/specifications/kimchi/template.md
Original file line number Diff line number Diff line change
Expand Up @@ -383,7 +383,7 @@ Same as the prover index, we have a number of pre-computations as part of the ve

## Proof Construction & Verification

Originally, kimchi is based on an interactive protocol that was transformed into a non-interactive one using the [Fiat-Shamir](https://o1-labs.github.io/mina-book/crypto/plonk/fiat_shamir.html) transform.
Originally, kimchi is based on an interactive protocol that was transformed into a non-interactive one using the [Fiat-Shamir](https://o1-labs.github.io/proof-systems/plonk/fiat_shamir.html) transform.
For this reason, it can be useful to visualize the high-level interactive protocol before the transformation:

```mermaid
Expand Down
8 changes: 4 additions & 4 deletions book/src/specs/kimchi.md
Original file line number Diff line number Diff line change
Expand Up @@ -1872,7 +1872,7 @@ pub struct VerifierIndex<G: KimchiCurve, OpeningProof: OpenProof<G>> {

## Proof Construction & Verification

Originally, kimchi is based on an interactive protocol that was transformed into a non-interactive one using the [Fiat-Shamir](https://o1-labs.github.io/mina-book/crypto/plonk/fiat_shamir.html) transform.
Originally, kimchi is based on an interactive protocol that was transformed into a non-interactive one using the [Fiat-Shamir](https://o1-labs.github.io/proof-systems/plonk/fiat_shamir.html) transform.
For this reason, it can be useful to visualize the high-level interactive protocol before the transformation:

```mermaid
Expand Down Expand Up @@ -2077,7 +2077,7 @@ pub struct ProverProof<G: AffineCurve, OpeningProof> {
/// Two evaluations over a number of committed polynomials
pub evals: ProofEvaluations<PointEvaluations<Vec<G::ScalarField>>>,

/// Required evaluation for [Maller's optimization](https://o1-labs.github.io/mina-book/crypto/plonk/maller_15.html#the-evaluation-of-l)
/// Required evaluation for [Maller's optimization](https://o1-labs.github.io/proof-systems/kimchi/maller_15.html#the-evaluation-of-l)
#[serde_as(as = "o1_utils::serialization::SerdeAs")]
pub ft_eval1: G::ScalarField,

Expand Down Expand Up @@ -2225,9 +2225,9 @@ The prover then follows the following steps to create the proof:
1. Evaluate the same polynomials without chunking them
(so that each polynomial should correspond to a single value this time).
1. Compute the ft polynomial.
This is to implement [Maller's optimization](https://o1-labs.github.io/mina-book/kimchi/maller_15.html).
This is to implement [Maller's optimization](https://o1-labs.github.io/proof-systems/kimchi/maller_15.html).
1. construct the blinding part of the ft polynomial commitment
[see this section](https://o1-labs.github.io/mina-book/kimchi/maller_15.html#evaluation-proof-and-blinding-factors)
[see this section](https://o1-labs.github.io/proof-systems/kimchi/maller_15.html#evaluation-proof-and-blinding-factors)
1. Evaluate the ft polynomial at $\zeta\omega$ only.
1. Setup the Fr-Sponge
1. Squeeze the Fq-sponge and absorb the result with the Fr-Sponge.
Expand Down
2 changes: 1 addition & 1 deletion kimchi/src/proof.rs
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ pub struct ProverProof<G: AffineCurve, OpeningProof> {
/// Two evaluations over a number of committed polynomials
pub evals: ProofEvaluations<PointEvaluations<Vec<G::ScalarField>>>,

/// Required evaluation for [Maller's optimization](https://o1-labs.github.io/mina-book/crypto/plonk/maller_15.html#the-evaluation-of-l)
/// Required evaluation for [Maller's optimization](https://o1-labs.github.io/proof-systems/kimchi/maller_15.html#the-evaluation-of-l)
#[serde_as(as = "o1_utils::serialization::SerdeAs")]
pub ft_eval1: G::ScalarField,

Expand Down
6 changes: 3 additions & 3 deletions kimchi/src/prover.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1110,7 +1110,7 @@ where
};

//~ 1. Compute the ft polynomial.
//~ This is to implement [Maller's optimization](https://o1-labs.github.io/mina-book/kimchi/maller_15.html).
//~ This is to implement [Maller's optimization](https://o1-labs.github.io/proof-systems/kimchi/maller_15.html).
internal_tracing::checkpoint!(internal_traces; compute_ft_poly);
let ft: DensePolynomial<G::ScalarField> = {
let f_chunked = {
Expand All @@ -1133,7 +1133,7 @@ where

drop(env);

// see https://o1-labs.github.io/mina-book/kimchi/maller_15.html#the-prover-side
// see https://o1-labs.github.io/proof-systems/kimchi/maller_15.html#the-prover-side
f.to_chunked_polynomial(num_chunks, index.max_poly_size)
.linearize(zeta_to_srs_len)
};
Expand All @@ -1146,7 +1146,7 @@ where
};

//~ 1. construct the blinding part of the ft polynomial commitment
//~ [see this section](https://o1-labs.github.io/mina-book/kimchi/maller_15.html#evaluation-proof-and-blinding-factors)
//~ [see this section](https://o1-labs.github.io/proof-systems/kimchi/maller_15.html#evaluation-proof-and-blinding-factors)
let blinding_ft = {
let blinding_t = t_comm.blinders.chunk_blinding(zeta_to_srs_len);
let blinding_f = G::ScalarField::zero();
Expand Down

0 comments on commit 0dafa84

Please sign in to comment.