def AP.slots_le
import bend-osdev-array@0.1.0.1/PROOF.bend as PROOFimport Base
import bend-osdev-array@0.1.0.1/array.bend as A
797def AP.slots_le(d: Nat, n: Nat, h: {Nat.is_le(d, n) == True{} : Bool}) -> {Nat.is_le(A.Arrays.slots(d), A.Arrays.slots(n)) == True{} : Bool}:
798 match d n:
799 case 0n 0n:
800 {==}
801 case 0n 1n+ +q:
802 AP.dpos(A.Arrays.slots(q), AP.slots_pos(q))
803 case 1n+p 0n:
804 Empty.absurd({Nat.is_le(A.Arrays.slots(1n+p), A.Arrays.slots(0n)) == True{} : Bool}, AP.ft(h))
805 case 1n+ +p 1n+ +q:
806 AP.double_le(A.Arrays.slots(p), A.Arrays.slots(q), AP.slots_le(p, q, h))
Uses (9)
Used by (0)
No other definition uses this definition.