def sub_zero_le
bendtorch-core@0.1.0.0 · src/tensor/slice_PROOF.bend:131
import bendtorch-core@0.1.0.0/src/tensor/slice_PROOF.bend as SlicePROOF
import Base
import bendtorch-core@0.1.0.0/src/storage/arith.bend as Arith
131
132def sub_zero_le(+stop: Nat, +low: Nat, e: {Nat.sub(stop, low) == 0n : Nat}) -> {Nat.is_le(stop, low) == True{} : Bool}:
133 match stop low:
134 case 0n _:
135 Arith.le_zero(low)
136 case 1n+ap 0n:
137 Empty.absurd({Nat.is_le(1n+ap, 0n) == True{} : Bool}, nat_clash(ap, e))
138 case 1n+ap 1n+lp:
139 sub_zero_le(ap, lp, e)