Skip to content

Conversation

@kunxian-xia
Copy link
Collaborator

@kunxian-xia kunxian-xia commented Oct 31, 2025

Items

  • enforce is_ram_register is boolean.
  • if it's global read, enforce shard < cur_shard.
  • if it's global write, then enforce shard = cur_shard where cur_shard is fetched from public values.

hero78119 and others added 23 commits October 20, 2025 21:12
- simplify index computation of affine_add(left, right)
- allocate buffer once and parallel initialization
#1061 Cleanup

- [x] clippy fixes
- [x] remove old unused routines for generating witness for the ecc
summation tower tree. Note this approach is abandoned. We prefer to pack
$log_2(N)$ layers in one layer using the relation `p[1, b] =
ec_add(p[0,b], p[1,b])` (first proposed in Quark paper.
@kunxian-xia kunxian-xia changed the base branch from master to feat/septic_global_chip October 31, 2025 16:10
cb.condition_require_zero(
|| "global_write = true => shard = instance.shard",
is_global_write.expr(),
shard.expr() - Expression::Instance(cur_shard),
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

main sumcheck does not support public inputs now.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please try this way

let cur_shard = cb.query_shard_id();
cur_shard.expr() // this return `Expression::InstanceScalar()` which make thing work in sumcheck

}

#[inline(always)]
pub fn cur_shard(&self) -> usize {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nitpick: cur_shard_id() or shard_id() better

cb.condition_require_zero(
|| "global_write = true => shard = instance.shard",
is_global_write.expr(),
shard.expr() - Expression::Instance(cur_shard),
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please try this way

let cur_shard = cb.query_shard_id();
cur_shard.expr() // this return `Expression::InstanceScalar()` which make thing work in sumcheck

Base automatically changed from feat/septic_global_chip to feat/multi_shard November 3, 2025 04:46
Base automatically changed from feat/multi_shard to master November 6, 2025 07:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants