U32.Word.sub_add: law of bend-lawful-stdlib@0.1.0.0 Import: import bend-lawful-stdlib@0.1.0.0/src/u32.bend as U32 Lines 213-220 of bend-lawful-stdlib@0.1.0.0/src/u32.bend: https://jend.leeeet.dev/read.txt?path=bend-lawful-stdlib@0.1.0.0/src/u32.bend&start_line=213&end_line=220 import Base # (a + b + c) - b, with carry not(c), is a. Each case passes the carry # out of its bit. law Word.sub_add: for +n: Nat for a: Word(n) for +b: Word(n) for c: Bool {a == Word.adc(n, Word.adc(n, a, b, False{}, c), b, True{}, Bool.not(c)) : Word(n)} Uses (8): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool.not https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Word https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Word.Con https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Word.Nil https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Word.adc https://jend.leeeet.dev/definition.txt?path=bend-lawful-stdlib@0.1.0.0/src/u32.bend&name=Word.sub_add.arm