|
Download docs/INVARIANTS.md from Snapkitty/hcalc: direct link, hf CLI and curl.
- Browser
- Download file 3.89 kB
-
https://huggingface.co/Snapkitty/hcalc/resolve/main/docs/INVARIANTS.md
- Command line
-
hf download hf://Snapkitty/hcalc/docs/INVARIANTS.md
-
curl -L -o INVARIANTS.md https://huggingface.co/Snapkitty/hcalc/resolve/main/docs/INVARIANTS.md
3.89 kB
HCALC Invariant Inventory — Alloy ↔ Lean
Maps every Alloy assert / fact / sealed check to Lean status (theorem vs axiom vs deferred).
Sources: alloy/hcalc/**/*.als, spec/COHERENCE.md, spec/AXIOMS.md, spec/FOUNDRY_J_CROSSLINKS.md.
Provenance: source-claim | axiom-gap | derived.
| Alloy ID | Informal statement | Provenance | Lean status |
|---|---|---|---|
A1 A1_P64_cardinality_and_distinct |
#P_64=64, distinct indices |
source-claim | L1 theorem P64List_length (+ data) |
A1b A1b_P64_distinct_indices |
Distinct idx among carrier primes | derived | type-level Fin 64 + list data |
A2 A2_contractive_iff_gershgorin_bound |
contractive ↔ Gershgorin < 1-ε (+ power-iter) | source-claim | L2 abstract contractiveG ↔ GershgorinBelowMargin (no matrix arith) |
A3 A3_soft_project_when_q_over_margin |
soft-project when q > 1-ε | source-claim | L4 softProject control flow |
A4 A4_foundry_additive_only_if_Foundry_instance |
Foundry additive only if instance=Foundry | source-claim | L3 FoundryStep def; tagged StepForm |
A5 A5_PMAT_conservation_gated |
PMAT conservation if used | source-claim | not yet in Lean (optional surface) |
A6 A6_guardian_reject_spectral_or_nonfinite |
reject ρ≥1 or non-finite | source-claim | not yet in Lean |
A7 A7_gap_stub_definition_records |
definition-record presence for Λm, Ξ, C, Tp | axiom-gap | L6 axioms (named) |
INV_LambdaM_scalar_placeholder |
Λm lone scalar ≠ schedule vector | axiom-gap / G-Lm | L6 LambdaM : Nat vs ScheduleWeights |
INV_step_shape_bridge_axiom_gap |
no silent Foundry↔HCALC equation | axiom-gap / G-SHAPE | L7 deferred; StepForm tags |
INV_prime_index_bounded_to_P64 |
no unbounded prime stream | source-claim | Tp : Fin 64 → … |
INV_bounded_recursion_depth |
finite Time / lone next | derived | iterateNested on Nat |
INV_contract_measure_non_increase |
measure non-increase under Contract | axiom-gap / G-C | open (needs Gap-ContractAlg) |
INV_optimize_objective_axiom_gap |
objective underspecified | axiom-gap | open Gap-OptObj |
INV_converge_hyps_axiom_gap |
no Banach from narrative alone | axiom-gap | L5 hypothesis skeleton only |
INV_evolve_respects_active_instance |
evolve matches ActiveInstance | derived | instance via StepForm |
INV_evolution_total_on_State |
every State on some Time | source-claim | hcalcNestedStep_total / foundryStep_total |
INV_Tp_index_in_P64_or_extension |
Tp index honesty | source-claim / G-Tp | Fin 64 index |
INV_Tp_unique_per_index |
unique TpMap per index | derived | — |
INV_state_measure_functional |
lone measure per State | derived | — |
INV_stabilize_uses_LambdaM_scalar |
stabilize via Λm scalar | axiom-gap | nested uses LambdaM |
INV_time_linear_chain |
Time linear | derived | — |
INV_multimodal_tensor_wiring |
multimodal↔tensor wiring | derived | — |
INV_recursion_uses_prime_index |
recursion uses prime index | source-claim | Tp / P64 |
INV_evolve_total_State_reachable |
evolve total | source-claim | totals above |
INV_extension_disjoint_or_empty |
prime extension honesty | derived | — |
Invariant count (Alloy sealed asserts + facts listed): 25 rows above (A1–A7 + A1b + named INVs).
Alias GapIds (steering)
| Alias | Spec GapId | Role |
|---|---|---|
| G-SHAPE | Gap-ShapeMap | Nested ≠ additive; no silent identify |
| G-Lm | Gap-Λm-scalar | No scalar Λm verb; lambda_schedule is vector |
| G-C | Gap-C-wrapper | spectral_analyze classifies; not C[·] |
| G-Tp | Gap-Tp-from-P64 | No T_p from P64/PrimeMask yet |