sumcheck

Document barretenberg Sumcheck prover/verifier protocol invariants and ZK variants.

Updated May 14, 2026
One-click install
npx skills add https://github.com/HabibTorjmen/Blockchain --skill sumcheck
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: sumcheck
Source: https://github.com/HabibTorjmen/Blockchain/tree/main/aztec-packages/barretenberg/.claude/skills/sumcheck
Command: npx skills add https://github.com/HabibTorjmen/Blockchain --skill sumcheck

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It provides a comprehensive, developer-focused reference for correctly using and understanding the Sumcheck protocol implementation in barretenberg, including prover/verifier flow, ZK variants, and related sumcheck “flavors.”

Core Features & Use Cases

  • Protocol and architecture overview: Explains how barretenberg’s Sumcheck reduces multilinear polynomial identities and how the proving/verifying pipeline is organized (including Fiat-Shamir challenge derivation).
  • ZK-specific mechanisms: Documents Libra masking, row disabling (top-of-trace), and how disabled contributions affect the verifier and transcript.
  • Flavor- and subsystem-specific guidance: Covers committed sumcheck (Grumpkin/ECCVM), Ultra/HyperNova/Chonk integration points, relation batching behavior, and gate separator (pow_beta) details.

Quick Start

Ask an AI to explain how the verifier handles ZK row disabling and excluded_head_size for the MegaZK/Translator flavors using the sumcheck implementation notes.

Frequently Asked Questions about sumcheck

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How does the barretenberg sumcheck prover and verifier pipeline work?

The barretenberg sumcheck pipeline reduces multilinear polynomial identities through structured proving and verifying rounds, deriving Fiat-Shamir challenges via transcript updates to ensure prover and verifier consistency.

How do I implement ZK sumcheck variants with Libra masking and row disabling?

Implement ZK sumcheck variants by applying Libra masking and top-of-trace row disabling, ensuring disabled contributions are correctly excluded from verifier checks and transcript state.

What is the gate separator pow_beta in barretenberg sumcheck relations?

The gate separator pow_beta is a mechanism in barretenberg sumcheck used to batch relations, ensuring correct polynomial identity aggregation across different gate types during the proving workflow.

How does committed sumcheck differ for Grumpkin and ECCVM flavors?

Committed sumcheck for Grumpkin and ECCVM flavors involves specific subsystem integration points and flavor-specific dispatch logic, handling polynomial commitments differently than standard sumcheck paths.

Why does my sumcheck verifier fail Fiat-Shamir transcript lockstep checks?

Sumcheck verifier transcript failures occur when Fiat-Shamir challenge derivation falls out of sync, requiring strict adherence to round univariate submission order and transcript update invariants.

Can I integrate Ultra, HyperNova, or Chonk flavors with the sumcheck directory?

Yes, Ultra, HyperNova, and Chonk flavors integrate with the sumcheck directory through flavor-specific dispatch logic, managing relation batching behavior and distinct PCS-phase verification checks.