Zigzag engine: cubical/string-diagram constructions in Rust. Reference for topolei.
Find a file
Maximus Gorog 951f86a74f Implement slice computation methods in diagram.rs
Add the core slice computation functionality for n-diagrams:

- Rewrite::apply_forward/apply_backward: Apply rewrites to transform
  diagrams in either direction
- RewriteN::apply_forward/apply_backward: Handle n-dimensional rewrites
  by modifying cospan structure via cone contraction/expansion
- DiagramN::regular_slice(h): Compute regular slice at height h by
  traversing cospans, applying forward then backward rewrites
- DiagramN::singular_slice(h): Compute singular slice (cospan apex)
  by applying forward rewrite to the corresponding regular slice
- DiagramN::target(): Now properly computes the last regular slice
- DiagramN::slices(): Iterator yielding all slices in order r0,s0,r1,...
- DiagramN::regular_slices()/singular_slices(): Filtered iterators

All 48 tests pass.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-04-07 02:56:31 -06:00
src Implement slice computation methods in diagram.rs 2026-04-07 02:56:31 -06:00
.gitignore Scaffold zigzag-engine library 2026-04-07 02:42:06 -06:00
Cargo.lock Scaffold zigzag-engine library 2026-04-07 02:42:06 -06:00
Cargo.toml Scaffold zigzag-engine library 2026-04-07 02:42:06 -06:00