def internal_succ_double_lt

bend-mathlib@0.8.1.0 · u32.bend:6

import bend-mathlib@0.8.1.0/u32.bend as U32
import Base
import bend-mathlib@0.8.1.0/nat.bend as MNat

6def internal_succ_double_lt(a: Nat, b: Nat, h: MNat.lt(a, b)) -> MNat.lt(1n+Nat.double(a), Nat.double(b)):
7  match a b:
8    case 0n 0n:
9      Empty.absurd(MNat.lt(1n, 0n), MNat.internal_false_ne_true(h))
10    case 0n 1n+q:
11      {==}
12    case 1n+p 0n:
13      Empty.absurd(MNat.lt(3n+Nat.double(p), 0n), MNat.internal_false_ne_true(h))
14    case 1n+p 1n+q:
15      internal_succ_double_lt(p, q, h)

Uses (5)

Used by (1)