Laws.sha256_array_correct: law of bend-collections@1.0.0.0 Import: import bend-collections@1.0.0.0/proofs/crypto/sha/packed/laws.bend as Laws Lines 35-39 of bend-collections@1.0.0.0/proofs/crypto/sha/packed/laws.bend: https://jend.leeeet.dev/read.txt?path=bend-collections@1.0.0.0/proofs/crypto/sha/packed/laws.bend&start_line=35&end_line=39 import Base import bend-collections@1.0.0.0/src/crypto/sha/packed/sha256.bend as Runtime import bend-collections@1.0.0.0/src/crypto/sha/packed/buffer.bend as Buffer import bend-collections@1.0.0.0/spec/crypto/sha/packed.bend as PackedSpec # Actual production array API; historical list laws above concern only its model. law sha256_array_correct: for words: Array for +byte_length: Nat {Runtime.sha256(words,byte_length) == Buffer.result(PackedSpec.hash(words,byte_length)) : Maybe<&1,Array>} Uses (8): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Array https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Maybe https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/proofs/crypto/sha/packed/buffer_proof.bend&name=correct https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/spec/crypto/sha/packed.bend&name=hash https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/crypto/sha/packed/buffer.bend&name=result https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/crypto/sha/packed/sha256.bend&name=sha256