def le_add.k

minebender-game@1.0.0.0 · proof_base.bend:695

import minebender-game@1.0.0.0/proof_base.bend as ProofBase
import Base

695def le_add.k(+a: Nat, +b: Nat, +c: Nat, +d: Nat, r1: LeW(a, b), r2: LeW(c, d)) ->
696  {Nat.is_le(Nat.add(a, c), Nat.add(b, d)) == True{} : Bool}:
697  match r1:
698    case (+k1, e1):
699      match r2:
700        case (+k2, e2):
701          %Equal.sym(Nat, b, Nat.add(a, k1), e1) : {Nat.is_le(Nat.add(a, c), Nat.add(_, d)) == True{} : Bool}
702          %Equal.sym(Nat, d, Nat.add(c, k2), e2) : {Nat.is_le(Nat.add(a, c), Nat.add(Nat.add(a, k1), _)) == True{} : Bool}
703          %Equal.sym(Nat, Nat.add(Nat.add(a, k1), Nat.add(c, k2)), Nat.add(Nat.add(a, c), Nat.add(k1, k2)), add_swap(a, k1, c, k2)) :
704            {Nat.is_le(Nat.add(a, c), _) == True{} : Bool}
705          le_of_add(Nat.add(a, c), Nat.add(k1, k2))

Uses (9)

Used by (1)