Skip to content

Commit 0999b1f

Browse files
authored
Merge pull request #190 from o1-labs/reorder-polynomials
reorder polynomials in opening and add selectors
2 parents 629a5ab + 6def243 commit 0999b1f

File tree

2 files changed

+26
-25
lines changed

2 files changed

+26
-25
lines changed

dlog/plonk-15-wires/src/prover.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -631,20 +631,22 @@ where
631631
.map(|(p, n)| (p, None, non_hiding(*n)))
632632
.collect::<Vec<_>>();
633633
polynomials.extend(vec![(&p, None, non_hiding(1))]);
634+
polynomials.extend(vec![(&ft, None, blinding_ft)]);
635+
polynomials.extend(vec![(&z, None, z_comm.1)]);
636+
polynomials.extend(vec![(&index.cs.genericm, None, non_hiding(1))]);
637+
polynomials.extend(vec![(&index.cs.psm, None, non_hiding(1))]);
634638
polynomials.extend(
635639
w.iter()
636640
.zip(w_comm.iter())
637641
.map(|(w, c)| (w, None, c.1.clone()))
638642
.collect::<Vec<_>>(),
639643
);
640-
polynomials.extend(vec![(&z, None, z_comm.1)]);
641644
polynomials.extend(
642645
index.cs.sigmam[0..PERMUTS - 1]
643646
.iter()
644647
.map(|w| (w, None, non_hiding(1)))
645648
.collect::<Vec<_>>(),
646649
);
647-
polynomials.extend(vec![(&ft, None, blinding_ft)]);
648650

649651
Ok(Self {
650652
commitments: ProverCommitments {

dlog/plonk-15-wires/src/verifier.rs

Lines changed: 22 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -538,20 +538,29 @@ where
538538
// public input commitment
539539
polynomials.push((p_comm, p_eval.iter().map(|e| e).collect::<Vec<_>>(), None));
540540

541+
// ft commitment (chunks of it)
542+
polynomials.push((&ft_comm, vec![ft_eval0, ft_eval1], None));
543+
544+
// permutation commitment
545+
polynomials.push((
546+
&proof.commitments.z_comm,
547+
proof.evals.iter().map(|e| &e.z).collect::<Vec<_>>(),
548+
None,
549+
));
550+
551+
// index commitments that use the coefficients
552+
polynomials.push((
553+
&index.generic_comm,
554+
proof.evals.iter().map(|e| &e.generic_selector).collect::<Vec<_>>(),
555+
None,
556+
));
557+
polynomials.push((
558+
&index.psm_comm,
559+
proof.evals.iter().map(|e| &e.poseidon_selector).collect::<Vec<_>>(),
560+
None,
561+
));
562+
541563
// witness commitments
542-
/*
543-
let mut w_comm = vec![];
544-
for w in proof.commitments.w_comm.iter() {
545-
let mut ee = vec![];
546-
for i in 0..COLUMNS {
547-
for e in proof.evals {
548-
ee.push(e.w[i])
549-
}
550-
}
551-
let ee = e.
552-
w_comm.push((w, ee, None));
553-
}
554-
*/
555564
polynomials.extend(
556565
proof
557566
.commitments
@@ -567,13 +576,6 @@ where
567576
.collect::<Vec<_>>(),
568577
);
569578

570-
// permutation commitment
571-
polynomials.push((
572-
&proof.commitments.z_comm,
573-
proof.evals.iter().map(|e| &e.z).collect::<Vec<_>>(),
574-
None,
575-
));
576-
577579
// sigma commitments
578580
polynomials.extend(
579581
index
@@ -589,9 +591,6 @@ where
589591
.collect::<Vec<_>>(),
590592
);
591593

592-
// ft commitment (chunks of it)
593-
polynomials.push((&ft_comm, vec![ft_eval0, ft_eval1], None));
594-
595594
// prepare for the opening proof verification
596595
let omega = index.domain.group_gen;
597596
batch.push((

0 commit comments

Comments
 (0)