kernel-Int.gcd_div
- Kind
- kernel-term
- Status
- checked
Supports: The proposition declared as `Int.gcd_div` in the pinned Mathlib v4.30 source.
cargo test -p axeyum-lean-kernel --lib int_prelude:: Evidence notes
`Int.gcd_div` in `crates/axeyum-lean-kernel/src/int_prelude/gcd.rs` (`declare_gcd_div`). Mirrors Mathlib v4.30's `Int.gcd_div` (`alias gcd_div := gcd_ediv`, `Mathlib/Data/Int/GCD.lean`) exactly: Lean 4 core's `Int.gcd_ediv` (`Init.Data.Int.Gcd`) states the same proposition over `/`, and core's own `instance : Div Int` binds `/` to `Int.ediv` "for compatibility with SMT-LIB" (`Init.Data.Int.DivMod.Basic`) -- the SAME division this development's `Int.ediv` matches bit for bit (verified against the pinned toolchain source, not inferred). This is a same-definition mirror (honest flip), not a restatement of a different proposition, and it carries NO restriction on `c`'s sign or `c = 0`, matching Mathlib's own unrestricted hypotheses (`c ∣ a`, `c ∣ b`) exactly -- `c = 0` is proved here as a genuine degenerate case, not excluded. Proved by mutual divisibility (Bezout on `a,b` and on `a/c,b/c`, entirely through `natAbs` identities with no case split on `c`'s sign needed for the algebra itself), NOT via Lean core's own route through `Nat.gcd_div`/`Nat.gcd_mul_left` -- neither exists in this development and either would need a fresh strong-induction principle over `Nat.gcd`'s well-founded recursion. `int_prelude::` sweep: 45 -> 47 (one bridge lemma `Int.emod_eq_zero_iff_dvd_general` plus this theorem).