By: ValentinHirschi <valentin.hirschi@gmail.com>
add rustred scalar reduction through two loops Implement the first Vakint integration milestone of the requested Stage 1 plan: ship the sealed K=1 and K=3 artifacts, consume the existing matcher/routing witness, lower exact scalar numerators, reduce to typed masters without FORM, and reuse Vakint's pure-Rust master finalization. Existing evaluation defaults and the FORM tensor prepass remain unchanged. Requested plan (verbatim): PLEASE IMPLEMENT THIS PLAN: # Stage 1: Closing IBPs through three loops and Vakint integration ## Summary - After the green light, create the currently absent tool-managed goal scoped to Stage 1, then revise GOAL.md, README, and stable technical docs so this staged directive supersedes the old active six-loop/tensor roadmap. - Treat the existing one-loop recurrence and two-loop sunset rule as useful foundations, not yet as closed artifacts: RustRed still lacks complete closure, artifact publication, and recursive application. - Freeze the existing experimental RustRed tensor code without removing or extending it. Stage 1 keeps Vakint’s FORM tensor prepass unchanged. - Stage 2—new tensor technology, extreme scaling work, and four- through six-loop closure—remains explicitly prohibited until new guidance and approval. ## Stage 1 implementation - Freeze a matcher-derived manifest containing all eight Vakint graph classes through three loops: one 1L class, the 2L sunset and its pinch, and the 3L K4/Mercedes parent plus four inequivalent contractions. - Produce three sector-complete unit-mass family artifacts: K=1, K=3, and K=6. The single K4 artifact must prove coverage of all five three-loop graph classes. - Complete the generic foundry with translated-source search, exact coefficient/guard applicability, exceptional-domain refinement, symmetry/zero/factorization handling, immutable lower-sector feedback, explicit master terminals, and deterministic fixed-point closure. Required ordinary-source counts are 1, 4, and 9. - Add versioned immutable artifact ownership and a deterministic, memoized, strictly descending rule applier. Validate artifacts once at the untrusted load boundary; do not repeat expensive authentication in the hot path. - Restore a general common mass after unit-scale reduction by dimensional homogeneity, including the coefficient factor (m²)^(Σmaster−Σtarget). - Extend the existing Rust library, campaign CLI, and import rustred Python API with closing-artifact generation, inspection, and reduction/application surfaces. Algorithms remain topology- and loop-count-generic despite the Stage 1 pressure targets. ## Vakint interface - On the existing vakint_rustred branch, add the opt-in scalar backend EvaluationMethod::RustRed(RustRedEvaluationOptions) and EvaluationOrder::rustred_only() without changing defaults or existing method behavior. - The adapter consumes Vakint’s existing topology match and simultaneous routing witness; it must not rematch graphs or dispatch on topology names. - RustRed returns exact coefficients of typed integral-key masters. Vakint maps these to the existing MATAD master basis and reuses only its pure-Rust master substitution/evaluation machinery—never its FORM reduction. - RustRedEvaluationOptions exposes master substitution control, defaulting to substitution enabled. The scalar backend reports no FORM dependency and never invokes or falls back to FORM. - Production artifacts are generated once, checked into and shipped with Vakint, loaded once, and never regenerated during ordinary evaluation. Local-path RustRed dependencies may be used during development; pushed GammaLoop milestones pin the corresponding RustRed Git revision. ## Validation and milestones 1. Commit and push the authoritative staged goal/documentation update. 2. Close and publish the 1L artifact together with the artifact/reducer spine. 3. Close 2L, cover its pinch, and expose the Rust/CLI/Python application APIs. 4. In parallel with 3L closure, integrate and validate Vakint RustRed reduction through 2L. 5. Close the K=6 family and prove coverage of all five registered 3L classes. 6. Pass all applicable single-scale Vakint tests through 3L, update documentation, commit and push both repositories, then pause. Acceptance requires: - exact regenerated-source replay, strict descent, explicit terminals, and zero uncovered branches for every artifact; - deterministic results across supported worker counts; - reducer tests for guard selection, termination, memoization, symmetry routing, master-only output, and non-unit-mass restoration; - exact raw master-coefficient comparison against AlphaLoop/MATAD oracles and matching existing Laurent-series references; - scalar RustRed tests with an invalid FORM path; - tensor-bearing acceptance tests using the unchanged FORM tensor prepass followed by the FORM-free RustRed scalar tail; - unchanged Vakint defaults and backward-compatibility tests; - optional PySecDec comparisons as non-gating supplemental checks. Every milestone receives delegated implementation and independent audit passes. Every Git operation uses the requested ValentinHirschi identity, and reference-only content is never committed to RustRed.
| Time to Start | Worker time | Duration | Time to finish | Idle | |
|---|---|---|---|---|---|
| Config | 2s | 8s | 8s | 10s | 2s |
| Eval | 7s | 48s | 48s | 56s | 0s |
| Build | 49s | 2h19m24s | - | - | 58s |
| Test | 9m16s | 12m54s | - | - | 38s |
| Deploy | - | - | - | - | 23h16m54s |
| Suite | 2s | 2h33m16s | - | - | 23h18m34s |