| n ≤ m, ∀ m0, n. m0 < m → n ≤ m0 → (∃ m1, n0. m0 * m1 + gcd(m0, n) = n * n0 ∨ n * n0 + gcd(m0, n) = m0 * m1) ⊦ m = n, n = 0, ∃ m0, n0. m * m0 + gcd(n, m % n) = n * n0 ∨ n * n0 + gcd(n, m % n) = m * m0 |
n < m, ∀ m0, n. m0 < m → n ≤ m0 → (∃ m1, n0. m0 * m1 + gcd(m0, n) = n * n0 ∨ n * n0 + gcd(m0, n) = m0 * m1) ⊦ n = 0, m = n, ∃ m0, n0. m * m0 + gcd(n, m % n) = n * n0 ∨ n * n0 + gcd(n, m % n) = m * m0
Used simplifier rules: f: ⊦ m < n → n ≠ 0; from specification nat-basic1%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic1%lels-02: ⊦ m ≠ n → (m ≤ n ↔ m < n); from specification nat