kernel-Int.gcd_eq_gcd_ab_witnesses
- Kind
- kernel-term
- Status
- checked
Supports: The proposition declared as `Int.gcd_eq_gcd_ab` in the pinned Mathlib v4.30 source, at the named computable witnesses.
cargo test -p axeyum-lean-kernel --lib int_prelude:: Evidence notes
`Int.gcd_eq_gcd_ab_witnesses` in `crates/axeyum-lean-kernel/src/int_prelude/bezout_witnesses.rs`. The name differs from Mathlib's `Int.gcd_eq_gcd_ab` only because THIS prelude already owned that name for the strictly weaker EXISTENTIAL form (`∀ a b, ∃ u v, ofNat (gcd a b) = a*u + b*v`, `int_prelude/gcd.rs`), which `crt.rs` and `modinv.rs` consume; the statement here is Mathlib's verbatim. The witnesses are genuine `Definition`s that return data: `Nat.xgcdAux` is the extended Euclidean recursion, structural on a FUEL argument rather than `WellFounded` (whose equation-compiler route carries `propext`/`Quot.sound`), with a trailing `Bool` selecting which coefficient to return so one recursion carries the pair. `Nat.xgcdAux_sound` is the induction on the fuel with both `m` and `n` generalized in the motive; `Int.gcdA`/`Int.gcdB` are Mathlib's signed definitions and the lift is a four-branch `Int.rec` case split.