| n0 | m, n0 | n2, ∀ n1, m0, n0. n1 < n2 + m → m0 < n1 ∧ n0 | n1 ∧ n0 | m0 → n0 | gcd(m0, n1) ⊦ n2 + m = 0, n2 = 0, n0 | gcd(m, n2) |
n0 | m, n0 | n2, ∀ n1, m0, n0. n1 < n2 + m → m0 < n1 ∧ n0 | n1 ∧ n0 | m0 → n0 | gcd(m0, n1) ⊦ m < n2 ∧ n0 | n2 ∧ n0 | m, n2 + m = 0, n2 = 0, n0 | gcd(m, n2)
Used simplifier rules: divi-zero: ⊦ m | 0;%gcd-zero: ⊦ gcd(0, n) = n;%lels: ⊦ ¬ m < n ↔ n ≤ m; from specification nat%le-add: ⊦ m + m0 ≤ m ↔ m0 = 0; from specification nat%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic2%c: ⊦ m + n = n + m; from specification nat-basic2%z-01: ⊦ m + n = 0 ↔ m = 0 ∧ n = 0; from specification nat-basic2 Used terms: n2, m, n0