scroll-tech / scroll-tech/ceno

sumcheck evaluation point set

Open
#1,270 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
153
Forks
43
Avg merge
3d 13h
Merged PRs (30d)
4

Description

We currently use the point set P = {0, 1, 2, ..., d} for proving sumcheck with max degree d.

  • tower sumcheck for logup spec
    The sumcheck expression is \sum_b eq(r,b) * (n[b,0] * d[b, 1] + n[b,1]*d[b,0]). The max degree is 3.

    We can borrow an optimization idea in sp1 hypercube to interpolate the univariate polynomials via another point set P' = {0, 1, 1/2, s}.

  • tower sumcheck for product spec: the sumcheck expression is \sum_b eq(r,b) * p[b,0] * p[b,1].

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the sumcheck implementation and the tower sumcheck expressions described in this issue, then compare the interpolation approach in the linked sp1 hypercube path. Determine the intended point sets for both logup and product specs; done means the optimization is implemented and its sumcheck behavior is validated.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cryptography
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.