def lt_asym

bendtorch-core@0.1.0.0 · src/tensor/contracts/build_facts.bend:59

import bendtorch-core@0.1.0.0/src/tensor/contracts/build_facts.bend as BuildFacts
import Base
import bendtorch-core@0.1.0.0/src/storage/arith.bend as Arith

59def lt_asym(+k: Nat, +b: Nat, h: {Nat.is_lt(k, b) == True{} : Bool}) -> {Nat.is_lt(b, k) == False{} : Bool}:
60  match k b:
61    case 0n 0n:
62      {==}
63    case 0n 1n+q:
64      {==}
65    case 1n+p 0n:
66      Empty.absurd({Nat.is_lt(0n, 1n+p) == False{} : Bool}, Arith.clash(h))
67    case 1n+p 1n+q:
68      lt_asym(p, q, h)

Uses (5)

Used by (2)