LAWS.byte_pack4: law of lawful-words@0.1.0.0 Import: import lawful-words@0.1.0.0/LAWS.bend as LAWS Lines 360-373 of lawful-words@0.1.0.0/LAWS.bend: https://jend.leeeet.dev/read.txt?path=lawful-words@0.1.0.0/LAWS.bend&start_line=360&end_line=373 import Base import lawful-words@0.1.0.0/defs.bend as D # Unpacking a packed word gives its bytes back. j is any index below 4 (in # code it is i & 3, not a literal). law byte_pack4: for b0: U32 for b1: U32 for b2: U32 for b3: U32 for j: Nat for h0: {U32.is_lt(b0, 256) == True{} : Bool} for h1: {U32.is_lt(b1, 256) == True{} : Bool} for h2: {U32.is_lt(b2, 256) == True{} : Bool} for h3: {U32.is_lt(b3, 256) == True{} : Bool} for hj: {Nat.is_lt(j, 4n) == True{} : Bool} {D.byte(D.pack4(b0, b1, b2, b3), j) == D.nth4(j, b0, b1, b2, b3) : U32} Uses (9): 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_lt https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.is_lt https://jend.leeeet.dev/definition.txt?path=lawful-words@0.1.0.0/defs.bend&name=byte https://jend.leeeet.dev/definition.txt?path=lawful-words@0.1.0.0/defs.bend&name=nth4 https://jend.leeeet.dev/definition.txt?path=lawful-words@0.1.0.0/defs.bend&name=pack4 https://jend.leeeet.dev/definition.txt?path=lawful-words@0.1.0.0/proof_bytes.bend&name=byte_pack4