Expand description
Self-substrate - vyre using its own primitives to compile/dispatch vyre.
These modules realize the recursion thesis (#30): every Tier-2.5
primitive shipped in vyre-primitives also has a vyre-self consumer
here that uses the same Program at compile / dispatch time.
§Layering (audit cleanup A10, 2026-04-30)
Extracted from vyre-driver/src/self_substrate/ into a dedicated
crate so the substrate-self-uses live at a layer that depends only
on vyre-foundation + vyre-primitives - eliminating the layering
muddle where backend-specific dispatch code and substrate self-uses
shared one home in vyre-driver.
vyre-foundation
↑
vyre-primitives
↑
vyre-self-substrate ← THIS CRATE (no driver deps)
↑
vyre-driver / vyre-runtime / vyre-libs / vyre-driver-{cuda,wgpu}No cycles. Every consumer above this crate reaches the substrate
via vyre_self_substrate::* directly.
vyre-foundation cannot consume self_substrate from here because
self_substrate depends on vyre-primitives which depends on
vyre-foundation - that’s the cycle that justifies the dedicated
crate. Foundation has its own smaller substrate at
vyre_foundation::pass_substrate (with the math kernels it needs
inlined locally - same pattern Linux uses for arch-local libs vs
lib/).
§Module list
dataflow_fixpoint(#26) - Region-graph dataflow fixpoint viavyre-primitives::math::semiring_gemmover the Region adjacency.cost_model(#28) - probabilistic dispatch cost model viavyre-primitives::graph::sum_product_circuit+ conformal intervals fromvyre-primitives::math::conformal.vsa_fingerprint(#29) - VSA op-cache key viavyre-primitives::hash::hypervector.spectral_schedule(#23) - spectral clustering of dispatch graph viavyre-primitives::graph::chebyshev_filter+vyre-primitives::math::spectral_shape.differentiable_autotune(#27) - differentiable autotuner viavyre-primitives::math::differentiable.polyhedral_fusion(#19) - polyhedral / affine fusion viavyre-primitives::math::semiring_gemmon the affine-dependency adjacency.megakernel_schedule(#22) - megakernel ILP relaxation viavyre-primitives::opt::homotopycontinuation.tensor_train_chain_fusion(#6) - chain-shaped Region fusion viavyre-primitives::math::tensor_train::tt_contract_stepcontraction.do_calculus_change_impact(#36) - rule-graph change-impact analysis viavyre-primitives::graph::do_calculusgraph surgery.scallop_provenance(#39) - GPU-resident rule provenance closure viavyre-primitives::math::scallop_joinDatalog fixpoint.matroid_megakernel_scheduler(#46) - discrete fusion-grouping via matroid intersection augmenting paths. Complementsmegakernel_schedule(#22 homotopy continuous solver) with the exact combinatorial selection.mori_zwanzig_region_coarsen(#58) - Region-tree coarse-graining via Mori-Zwanzig projection. Reduces O(N²) all-pairs analyses to O(K²) at workspace scale with quantified projection error.fmm_polyhedral_compress(#51) - FMM hierarchical compression of #19 polyhedral fusion’s all-pairs affinity. Drops cost from O(N²) to O(N log N) at workspace scale.submodular_cache_eviction(#45) - pipeline-cache eviction via submodular maximization. Replaces LRU’s heuristic with the provably-(1-1/e) greedy approximation.qsvt_matrix_function_fusion(#34) - transport-based fusion analysis via QSVT-applied matrix functions. Computes Wasserstein distances on dispatch graphs in O(K·N²) instead of O(N³).persistent_homology_loop_signature(#15) - Region-tree loop topology via Vietoris-Rips filtration. Fusion-vs-fission decision informed by H₁ persistent features.adjustment_set_pass_dependency(#37) - optimizer pass-ordering validity via causal back-door analysis on the rewrite-precondition graph.functorial_pass_composition(#52) - IR transform passes as categorical functors. Compositionality, equational reasoning, free adjoint pairs - pass framework moves from hand-managed DAG to a typed functor-category.string_diagram_ir_rewrite(#53) - Vyre IR Region tree IS a string diagram in Cat(GPU buffers, Programs). Optimizer rewrites become string-diagram rewrites; coherence theorems give free correctness proofs.planar_rewrite_pass_scheduler(#11) - schedule batch IR rewrites onto disjoint sub-trees via planar non-overlapping selection. Drops dispatch count from O(N) sequential to O(log N) batched.
Re-exports§
pub use analysis::cost_model;pub use analysis::dataflow_fixpoint;pub use analysis::decision_telemetry;pub use analysis::diagnostic_aggregation;pub use analysis::diagnostic_comparison;pub use analysis::effect_signature_check;pub use analysis::incremental_invalidation;pub use analysis::knowledge_compile_pass_precondition;pub use analysis::linear_type_check;pub use analysis::persistent_fixpoint_program;pub use analysis::shape_smt_check;pub use logic::adjustment_set_pass_dependency;pub use logic::categorical_check;pub use logic::dnnf_compile;pub use logic::do_calculus_change_impact;pub use logic::functorial_pass_composition;pub use logic::string_diagram_ir_rewrite;pub use logic::zx_rewrite;pub use data::bitset_compression;pub use data::bitset_summary;pub use data::matroid_exact_megakernel;pub use data::matroid_megakernel_scheduler;pub use data::parsing_dispatch_pipeline;pub use data::scallop_provenance;pub use data::scallop_provenance_wide;pub use data::vsa_fingerprint;pub use telemetry::observability;pub use scheduling::branch_compaction;pub use scheduling::frontier_partitioning;pub use scheduling::frontier_typed_ir;pub use scheduling::megakernel_schedule;pub use scheduling::multi_corpus_batching;pub use scheduling::planar_rewrite_pass_scheduler;pub use scheduling::polyhedral_fusion;pub use scheduling::spectral_schedule;pub use scheduling::submodular_cache_eviction;pub use integration::evidence::benchmark_baselines;pub use integration::evidence::c_parser_benchmark_evidence;pub use integration::evidence::cuda_ptx_pattern_evidence;pub use integration::evidence::optimization_release_evidence;pub use integration::coverage;pub use integration::evidence;pub use integration::quality;pub use integration::release;pub use optimizer::contracts::cross_crate_perf_contracts;pub use optimizer::contracts::optimization_composition_contracts;pub use optimizer::contracts::optimization_pass_selection;pub use optimizer::contracts::optimization_registry;pub use optimizer::contracts::optimization_release_passes;pub use integration::quality::allocation_regression;pub use integration::quality::architecture_boundary_map;pub use integration::quality::contributor_module_map;pub use integration::quality::crate_metadata_readiness;pub use integration::quality::deep_review_gate;pub use integration::quality::paradigm_shift_plan_audit;pub use integration::quality::public_api_boundary;pub use integration::quality::public_api_doctest_gate;pub use integration::coverage::analysis_coverage;pub use integration::coverage::c_dialect_matrix;pub use integration::coverage::clang_parity_dashboard;pub use integration::coverage::graph_layout_coverage;pub use integration::coverage::hostile_input_coverage;pub use integration::coverage::linux_corpus_parity;pub use integration::coverage::parser_semantic_safety;pub use integration::coverage::semantic_parity_coverage;pub use integration::coverage::test_taxonomy_coverage;pub use graph::adaptive_traverse;pub use graph::alias_registry;pub use graph::csr_bidirectional;pub use graph::csr_forward_or_changed;pub use graph::csr_frontier_queue_batch_memory;pub use graph::csr_frontier_queue_batch_resident;pub use graph::csr_frontier_queue_resident;pub use graph::dominator_frontier;pub use graph::exploded;pub use graph::level_wave_pass;pub use graph::motif;pub use graph::path_reconstruct;pub use graph::persistent_bfs;pub use graph::structural_kernel_pipeline;pub use graph::toposort;pub use graph::traversal_dispatch_pipeline;pub use graph::union_find_emit;pub use graph::vast_tree_walk;pub use math::amg_pass_solver;pub use math::bellman_tn_order;pub use math::differentiable_autotune;pub use math::fmm_polyhedral_compress;pub use math::kfac_autotune_step;pub use math::mori_zwanzig_region_coarsen;pub use math::multigrid_matroid_solver;pub use math::natural_gradient_autotuner;pub use math::persistent_homology_loop_signature;pub use math::qsvt_matrix_function_fusion;pub use math::sheaf_heterophilic_dispatch;pub use math::sheaf_spectral_clustering;pub use math::sinkhorn_dispatch_clustering;pub use math::sinkhorn_full_clustering;pub use math::tensor_network_fusion_order;pub use math::tensor_train_chain_fusion;pub use math::tensor_train_compression;pub use hardware::device_resident_token_fact_graph;pub use hardware::gpu_preprocessing_coverage;pub use hardware::gpu_probe_contract;pub use hardware::memory_ownership_contract;pub use integration::release::release_checklist_gate;pub use integration::release::release_completion_audit;pub use integration::release::release_gap_findings;pub use integration::release::release_gpu_evidence;pub use integration::release::release_launch_sequence;pub use integration::release::release_scope_docs;pub use integration::release::release_validation_matrix;
Modules§
- analysis
- Static-analysis, fixpoint, diagnostics, and verification substrate modules.
- data
- Data-structure, provenance, and substrate encoding modules.
- graph
- Graph-dispatch substrate wrappers.
- hardware
- Hardware dispatch, GPU residency, and device-bound evidence contracts.
- integration
- Integration-only substrate modules.
- logic
- Logic, causal reasoning, categorical rewrites, and knowledge-compilation substrate modules.
- math
- Advanced mathematical substrate passes and optimizer-theory kernels.
- optimization
- Backward-compatible facade for the optimizer contract modules. Compatibility facade for optimizer contract modules.
- optimizer
- Self-hosted optimizer keystone - the encoder + GPU passes that run
the compiler against its own substrate. Exposed at the lib root so
external consumers (driver-cuda parity tests, conform runners) can
reach
OptimizerDispatcher, the per-pass*_via_encodedentry points, and optimizer contract metadata without descending into private module paths. Self-hosted optimizer keystone. - scheduling
- Scheduling, fusion, batching, and dispatch-strategy substrate modules.
- telemetry
- Runtime counters and substrate telemetry.