def max_l
bend-collections-laws-math@1.0.0.0 · proofs/math/random/float.bend:166
import bend-collections-laws-math@1.0.0.0/proofs/math/random/float.bend as Float
import Base
import bend-collections-laws-math@1.0.0.0/proofs/lib/logic.bend as L
166def max_l(+a: Nat, +b: Nat, +h: {Nat.is_le(b, a) == True{} : Bool}) -> {Nat.max(a, b) == a : Nat}:
167 match a b:
168 case 0n 0n:
169 {==}
170 case 0n 1n+bp:
171 Empty.absurd({Nat.max(0n, 1n+bp) == 0n : Nat}, L.false_true(h))
172 case 1n+ap 0n:
173 {==}
174 case 1n+ap 1n+bp:
175 Equal.cong(Nat, Nat, z => 1n+z, Nat.max(ap, bp), ap, max_l(ap, bp, h))