artdag: optimize composition pass (fuse + dce) + 4 tests
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 1m4s
Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 1m4s
artdag/optimize entries outputs fusible? fuses the entry list then DCEs against the output names — sinks survive fusion (never absorbed), so output-equivalent with fewer nodes. optimize 22/22, total 132/132. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -30,7 +30,7 @@ edges.
|
||||
|
||||
## Status (rolling)
|
||||
|
||||
`bash lib/artdag/conformance.sh` → **128/128** (8 suites: dag, analyze, plan, execute, optimize, fed, cost, serialize)
|
||||
`bash lib/artdag/conformance.sh` → **132/132** (8 suites: dag, analyze, plan, execute, optimize, fed, cost, serialize)
|
||||
|
||||
Base roadmap (Phases 1–6) COMPLETE. Now extending.
|
||||
|
||||
@@ -138,6 +138,12 @@ lib/artdag/optimize.sx lib/artdag/federation.sx
|
||||
|
||||
## Progress log
|
||||
|
||||
- **Ext: optimize composition pass** (optimize suite 22/22, total 132/132).
|
||||
`artdag/optimize entries outputs fusible?` fuses the entry list then DCEs against
|
||||
the output names (sinks survive fusion since they're never absorbed) — fewer nodes,
|
||||
identical results. Verified: dead branch dropped + chain fused (4→2), an output that
|
||||
is itself "dead" is retained, no-fusible-set still DCEs.
|
||||
|
||||
- **Ext: DAG wire serialization** (serialize suite 13/13, total 128/128).
|
||||
`lib/artdag/serialize.sx`: `dag->wire` emits a topo-ordered list of
|
||||
`(id op inputs params commutative)` records — plain lists with keyword-keyed param
|
||||
|
||||
Reference in New Issue
Block a user