Skip to content

Bind constructive null states to prepared native tree programs - #25

Draft
huashengshao wants to merge 2 commits into
codex/native-python-host-compatfrom
codex/native-future-null-states
Draft

huashengshao wants to merge 2 commits into
codex/native-python-host-compatfrom
codex/native-future-null-states

Conversation

@huashengshao

Copy link
Copy Markdown

Native tree programs can now own constructive massless external states whose coefficient momenta and wavefunctions come from the same immutable FeynKit values. Preparation retains the model namespace, occurrence roles and exactly specialized external masses. The additive domain constructor admits programs only when every external mass is identically zero after preparation bindings; numerical defaults do not establish this property.

A bound batch consumes complete labelled rows, validates the label bijection and carrier/working-bit policy, and retains the program Arc. Coefficients, helicity sums and every existing color insertion reuse the existing evaluator traversal and exact contraction machinery. Separate preparations cannot exchange admitted batches, including empty batches. Existing raw-vector factories and behavior are preserved.

The two commits separate the coherent dependency update from the implementation. This PR is stacked on #24; prerequisites are FeynKit's future-null owner (alphal00p/gammaloop#217) and the corresponding Ninja dependency update (alphal00p/ninjars#6 at 084e466bd464bf4cf847fe5708503d62bc835ca9).

This source association is not an original-input accuracy certificate, an event-conservation certificate, a gauge-completeness claim or complete Born admission. Mixed massive/massless owned legs require a later additive domain; the existing raw path remains available within its declared capabilities. Fresh source reconstruction remains the caller's responsibility when changing precision.

Validation: all 109 library tests pass on both the standalone Symbolica 9cdc graph and a separate coherent e93 consumer graph using the exact same source files. This includes all 100 existing regressions plus nine new groups covering exact mass admission (including scalar spectators), program/row/leg association, full state tuples, dynamic parameters, typed precision failures, color identities and analytic QCD crossings at 53, 113, 137, 233, 256, 512 and 1024 bits. The nine new groups also pass as a prebuilt executable with PATH=/nonexistent; the immutable-owner compile-fail documentation test passes. Independent production-source review found no blocking issue.

The e93 check validates the provider source against ROULETTE's numerical family; it does not claim full ROULETTE or optional Python-host adoption. Source snapshots, dependency manifests, commands and logs are retained in the ROULETTE validation evidence.

This branch has not been deployed

No deployments
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