LAWS.u32_wit: law of bend-osdev-u32@0.1.0.0 Import: import bend-osdev-u32@0.1.0.0/LAWS.bend as LAWS Lines 217-220 of bend-osdev-u32@0.1.0.0/LAWS.bend: https://jend.leeeet.dev/read.txt?path=bend-osdev-u32@0.1.0.0/LAWS.bend&start_line=217&end_line=220 import Base # the bounds can hold, and the wrapping cases happen: 2^32 - 1 + 1 wraps to # 0, below the first operand; 0 - 1 borrows law u32_wit: {(Nat.is_le(Nat.add(U32.to_nat(3), U32.to_nat(4)), U32.to_nat(7)), U32.is_lt(U32.add(4294967295, 1), 4294967295), U32.is_lt(0, 1), U32.add(4294967295, 1), U32.sub(0, 1)) == (True{}, True{}, True{}, 0, 4294967295) : Bool & Bool & Bool & U32 & U32} Uses (10): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.add https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.is_le https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Sigma https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.add https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.is_lt https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.sub https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.to_nat