law window_rounds_correct

bend-collections-laws-crypto@1.0.0.0 · proofs/crypto/sha512/conformance.bend:60

import bend-collections-laws-crypto@1.0.0.0/proofs/crypto/sha512/conformance.bend as Conformance
import Base
import bend-collections-laws-crypto@1.0.0.0/src/crypto/sha512/types.bend as T
import bend-collections-laws-crypto@1.0.0.0/src/crypto/sha512/core.bend as C
import bend-collections-laws-crypto@1.0.0.0/spec/crypto/sha512.bend as F

60law window_rounds_correct:
61  for +q: Nat
62  for +a: T.Lane
63  for +b: T.Lane
64  for +c: T.Lane
65  for +d: T.Lane
66  for +e: T.Lane
67  for +f: T.Lane
68  for +g: T.Lane
69  for +h: T.Lane
70  for +i: T.Lane
71  for +j: T.Lane
72  for +k: T.Lane
73  for +l: T.Lane
74  for +m: T.Lane
75  for +n: T.Lane
76  for +o: T.Lane
77  for +p: T.Lane
78  for +rest: List<&2, T.Lane>
79  for +ks: List<&2, T.Lane>
80  for +s: T.State
81  {C.window_rounds(q, C.Win{a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p}, ks, s) == F.rounds(ks, F.extension(q, a <> b <> c <> d <> e <> f <> g <> h <> i <> j <> k <> l <> m <> n <> o <> p <> rest))(s) : T.State}

Uses (13)

Used by (1)