Repository navigation
Share fusion and autodiff programs and make numeric domains explicit - #141
Merged
Merged
Conversation
…r operands, ⍠ fill options, #⁻¹ expand primitive, under predicates
… wrap machine-integer overflow, and keep host iteration as ordinary calls
All suites pass except 3 reference cases (core 3392, 3737, 9564) and the explain suite's dec∂ timeout; pytest and notebooks pass.
Reuse structured writes and folds, accumulate window gradients through shifted reads, and retain Boolean scan results. Build distributed artifacts with explicit ThinLTO and preserve WASM target features until Bindgen. Document the timing policy in DEV.md.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Replace the separate linear autodiff tape with typed Program steps shared by deferred execution, fusion and differentiated-function replay. Keep eager evaluation as the general path and use rustymath’s numerical formulas and kernel facts. Admit primitive-equivalent dfns to primitive fold and product machinery.
Make ᵣ the explicit unbounded integer/rational domain, retain machine-width integer arithmetic, and make integer division floor. Add the general real-float mark ₐ, minimum-width weak literals and weak symbolic infinities. Preserve complex storage and use real floats for differentiation. Invalid numeric reads use fill; invalid writes skip their positions.
Treat function-valued call and selection results as data. Provide direct regex matching and replacement with cached patterns, and give random draws independent counter-based streams. Align Python indexing and composition with BPL operations and update the language documentation and examples.
Expand local validation, case-and-mode accounting, worker isolation and profiling tools. Update build profiles and remove performance-budget testing from CI.