Conformance.kr64_correct: law of bend-collections@1.0.0.0 Import: import bend-collections@1.0.0.0/proofs/crypto/sha/packed/conformance.bend as Conformance Lines 660-667 of bend-collections@1.0.0.0/proofs/crypto/sha/packed/conformance.bend: https://jend.leeeet.dev/read.txt?path=bend-collections@1.0.0.0/proofs/crypto/sha/packed/conformance.bend&start_line=660&end_line=667 import Base import bend-collections@1.0.0.0/src/crypto/sha/packed/core.bend as Runtime import bend-collections@1.0.0.0/src/crypto/sha/state.bend as S import bend-collections@1.0.0.0/proofs/crypto/sha/packed/core_model.bend as C # Each literal-constant round refines one step of window_rounds over the # remaining FIPS constants; the window variables stay abstract, so every proof # is one unfolding followed by the next round's lemma. law kr64_correct: for +q: Nat for +win: Runtime.ShaWindow for +s: S.State {Runtime.kr64(q, win, s) == C.window_rounds(q, win, Nil{}, s) : S.State} Uses (6): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/proofs/crypto/sha/packed/core_model.bend&name=window_rounds https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/crypto/sha/packed/core.bend&name=ShaWindow https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/crypto/sha/packed/core.bend&name=kr64 https://jend.leeeet.dev/definition.txt?path=bend-collections@1.0.0.0/src/crypto/sha/state.bend&name=State