PROOF.pk.le_trans: def of bend-osdev-pkcs7@0.1.0.0 Import: import bend-osdev-pkcs7@0.1.0.0/PROOF.bend as PROOF Lines 88-99 of bend-osdev-pkcs7@0.1.0.0/PROOF.bend: https://jend.leeeet.dev/read.txt?path=bend-osdev-pkcs7@0.1.0.0/PROOF.bend&start_line=88&end_line=99 import Base def pk.le_trans(+a: Nat, +b: Nat, +c: Nat) -> {Nat.is_le(a, b) == True{} : Bool} -> {Nat.is_le(b, c) == True{} : Bool} -> {Nat.is_le(a, c) == True{} : Bool}: match a b c: case 0n _ 0n: h1 => h2 => {==} case 0n _ 1n+cp: h1 => h2 => {==} case 1n+ap 0n _: h1 => h2 => pk.absurd({Nat.is_le(1n+ap, c) == True{} : Bool}, h1) case 1n+ap 1n+bp 0n: h1 => h2 => pk.absurd({Nat.is_le(1n+ap, 0n) == True{} : Bool}, h2) case 1n+ap 1n+bp 1n+cp: h1 => h2 => pk.le_trans(ap, bp, cp)(h1)(h2) Uses (4): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.is_le https://jend.leeeet.dev/definition.txt?path=bend-osdev-pkcs7@0.1.0.0/PROOF.bend&name=pk.absurd