Skip to content

Make eq polynomial helpers generic over SumcheckField#110

Open
Praz314159 wants to merge 1 commit into
compsec-epfl:mainfrom
Praz314159:portability/ungate-eq-helpers
Open

Make eq polynomial helpers generic over SumcheckField#110
Praz314159 wants to merge 1 commit into
compsec-epfl:mainfrom
Praz314159:portability/ungate-eq-helpers

Conversation

@Praz314159

Copy link
Copy Markdown

Summary

Makes the eq polynomial helpers usable without the arkworks feature by porting them from ark_ff::Field to the crate's SumcheckField trait. Feature gate gets removed.

Continued direction of #107. Non-arkworks fields can now use the eq primitives, which were previously unavailable outside the arkworks build.

Changes

  • src/hypercube/eq_evals.rs: compute_hypercube_eq_evals, eq_poly, and eq_poly_non_binary are now generic over SumcheckField instead of ark_ff::Field (F::one()/F::zero() → F::ONE/F::ZERO).
  • src/hypercube/mod.rs: dropped the #[cfg(feature = "arkworks")] gate on the eq_evals module and its re-exports.

The unit tests remain gated on feature = "arkworks" (#[cfg(all(test, feature = "arkworks"))]) because they exercise the arkworks-only F64 test field.

Verification

All pass: cargo build, cargo build --no-default-features, cargo clippy -- -D warnings (both feature configs), cargo fmt --check, and cargo test --all-features (full suite, incl. the 12 hypercube tests).

Port compute_hypercube_eq_evals, eq_poly, and eq_poly_non_binary from
ark_ff::Field to the portable SumcheckField trait and drop the arkworks
feature gate, so non-arkworks fields can use these eq primitives.
@Praz314159

Praz314159 commented Jul 3, 2026

Copy link
Copy Markdown
Author

@z-tech :)

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.

1 participant