def lt_not_eq

bendtorch-core@0.1.0.0 · src/autograd/reduce_replayed_proof.bend:89

import bendtorch-core@0.1.0.0/src/autograd/reduce_replayed_proof.bend as ReduceReplayedProof
import Base
import bendtorch-core@0.1.0.0/src/storage/arith.bend as Arith

89def lt_not_eq(+a: Nat, +b: Nat, below: {Nat.is_lt(a, b) == True{} : Bool}) -> {Nat.is_eq(a, b) == False{} : Bool}:
90  match a b:
91    case 0n 0n:
92      Empty.absurd({Nat.is_eq(0n, 0n) == False{} : Bool}, Arith.clash(below))
93    case 0n 1n+q:
94      {==}
95    case 1n+p 0n:
96      {==}
97    case 1n+p 1n+q:
98      lt_not_eq(p, q, below)

Uses (6)

Used by (1)