def h.wcmp_sound
bend-kit-collections@0.1.4.1 · PROOF.bend:1798
import bend-kit-collections@0.1.4.1/PROOF.bend as PROOF
import Base
1798def h.wcmp_sound(+n: Nat, a: Word(n), b: Word(n), +e: {Cmp.is_eq(Word.cmp(n, a, b)) == True{} : Bool})
1799 -> {a == b : Word(n)}:
1800 match n:
1801 case 0n:
1802 match a b:
1803 case WNil{} WNil{}:
1804 {==}
1805 case 1n+p:
1806 match a b:
1807 case WCon{+x, +at} WCon{+y, +bt}:
1808 +e1 = h.fin_hd(Word.cmp(p, at, bt), x, y, e)
1809 +e2 = h.wcmp_sound(p, at, bt, h.fin_eq(Word.cmp(p, at, bt), x, y, e))
1810 %e1 : {WCon{x, at} == WCon{_, bt} : Word(1n+p)}
1811 %e2 : {WCon{x, at} == WCon{x, _} : Word(1n+p)}
1812 {==}