Skip to content

Motivic foundation: A_C, the C-motivic Steenrod algebra engine over F₂[τ]#266

Open
JoeyBF wants to merge 4 commits into
SpectralSequences:masterfrom
JoeyBF:claude/motivic-algebra-engine
Open

Motivic foundation: A_C, the C-motivic Steenrod algebra engine over F₂[τ]#266
JoeyBF wants to merge 4 commits into
SpectralSequences:masterfrom
JoeyBF:claude/motivic-algebra-engine

Conversation

@JoeyBF

@JoeyBF JoeyBF commented Jul 12, 2026

Copy link
Copy Markdown
Collaborator

This is the foundation layer of a larger effort to compute the C-motivic Adams E₂ page by deformation. The full work is being split into a stack of independently reviewable PRs; this one has no dependencies and touches only the algebra crate.

What it adds

  • motivic::tau — the coefficient ring F₂[τ] as a small homogeneous scalar (Tau). Everything in the motivic world is weight-homogeneous, so every structure constant is a single power of τ. Tau encodes that as a one-integer valuation (not a polynomial), and carries the whole τ-tower so it never has to be threaded through the resolution engine.

  • motivic::milnorMotivicMilnorAlgebra, i.e. A_C presented as a free F₂[τ]-module on the Milnor basis Q(E)P(R). The product is computed two independent ways:

    • a duality oracle — dualize the coproduct ψ of the dual algebra A_∗∗ (correctness-oriented, obviously-correct);
    • the closed-form product of Kong–Lin, Product formulas for motivic Milnor basis (arXiv:2411.12890), Theorem 5.1, specialized to the C-motivic point ρ = 0 (fast).

    The fast path is validated exhaustively against the oracle over a range. This is deliberately not an Algebra impl — that trait is over F_p; this is the F₂[τ] engine the rest of the deformation builds on.

What it deliberately does not do

Nothing here wires into the resolution engine. The mod-τ reduction A_C/τ (the connected finite-type F₂-algebra the engine actually resolves, giving the algebraic Novikov E₂) is a small Algebra impl layered on top of this engine in the next PR, so this one stays a self-contained, heavily-tested combinatorial core.

Docs

MOTIVIC_GPU_HANDOFF.md documents the product engine's batching boundary for a future GPU port.

Tests

rewrite_tau identities, product associativity, weight-homogeneity (product weight − τ-power is additive), and closed-form-vs-duality agreement across a bidegree range. cargo test -p algebra --lib motivic — 22 passing.

🤖 Generated with Claude Code


Generated by Claude Code

claude added 2 commits July 12, 2026 06:09
Foundation layer for computing the C-motivic Adams E₂ by deformation. Adds
the coefficient ring and the product engine, with no wiring into the
resolution engine yet — the mod-τ reduction that the engine resolves comes
in a follow-up.

- `tau`: F₂[τ] as a small homogeneous scalar (`Tau`). Every structure
  constant in the motivic world is a single power of τ, so coefficients are a
  one-integer valuation rather than a polynomial; this type carries the whole
  τ-tower.
- `milnor`: `MotivicMilnorAlgebra` = A_C as a free F₂[τ]-module on the Milnor
  basis Q(E)P(R). The product is computed two ways — a duality oracle
  (dualize the coproduct ψ) and the closed-form Kong–Lin Theorem 5.1
  (arXiv:2411.12890, ρ = 0) — and the fast path is validated exhaustively
  against the oracle. It is intentionally not an `Algebra` (that trait is over
  F_p); it is the F₂[τ] engine the deformation lift builds on.

`MOTIVIC_PLAN.md` documents the overall deformation approach;
`MOTIVIC_GPU_HANDOFF.md` documents the product engine's batching boundary.

Tests: rewrite_tau identities, product associativity, weight-homogeneity,
and closed-form-vs-duality agreement over a range.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013ePtYD7Bt4iPeCtmqtqvZE
The two [`super::ctau`] intra-doc links referenced a module that isn't part
of this foundation PR, breaking the docs build. Reword to plain prose.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013ePtYD7Bt4iPeCtmqtqvZE
@coderabbitai

coderabbitai Bot commented Jul 12, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@JoeyBF, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 17 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 16bb5c15-7c38-416f-b9b0-7e2a0a7d5189

📥 Commits

Reviewing files that changed from the base of the PR and between a3a63cb and 032123a.

📒 Files selected for processing (5)
  • ext/crates/algebra/MOTIVIC_GPU_HANDOFF.md
  • ext/crates/algebra/src/algebra/mod.rs
  • ext/crates/algebra/src/algebra/motivic/milnor.rs
  • ext/crates/algebra/src/algebra/motivic/mod.rs
  • ext/crates/algebra/src/algebra/motivic/tau.rs
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

claude added 2 commits July 12, 2026 06:32
Remove MOTIVIC_PLAN.md (a working design doc, not repo-durable) and cut the
GPU handoff from a branch-specific handoff brief down to the two engine facts
that actually inform a kernel port (F₂ atomic-XOR output with a host-side
τ-power lookup; the mod-τ product is odd-primary-Milnor structured) plus where
the batch boundary is (`fill_block` / `ProductBlock`). Drop the prose
reference to the removed plan doc.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013ePtYD7Bt4iPeCtmqtqvZE
- `tau.rs`: `[`fp`](fp)` is a redundant explicit link (the label `fp` already
  resolves to the crate), which `-D rustdoc::redundant-explicit-links` (implied
  by the docs job's `-D warnings`) rejects. Drop the explicit target.
- Run nightly `cargo fmt` for the `lint` job: the repo's rustfmt.toml enables
  unstable options (reorder_impl_items, group_imports, format_strings) that
  stable rustfmt silently skips, so the motivic files were never formatted the
  way CI checks.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013ePtYD7Bt4iPeCtmqtqvZE
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.

2 participants