law full_step

bend-collections-laws-crypto@1.0.0.0 · proofs/crypto/blake/blake3/chunk.bend:96

import bend-collections-laws-crypto@1.0.0.0/proofs/crypto/blake/blake3/chunk.bend as Chunk
import Base
import bend-collections-laws-crypto@1.0.0.0/src/crypto/blake/blake3/types.bend as T
import bend-collections-laws-crypto@1.0.0.0/src/crypto/blake/blake3/blake3.bend as K
import bend-collections-laws-crypto@1.0.0.0/spec/crypto/blake/blake3.bend as S
import bend-collections-laws-crypto@1.0.0.0/proofs/crypto/blake/blake3/array.bend as A

96law full_step:
97  for +p: Nat
98  for +t: U32
99  for +index: U32
100  for +flags: U32
101  for +cv: T.CV
102  for -a: Array<U32>
103  for +b: T.Block
104  for view: Sigma<&2,&1,A.Tree,x => {a == A.thaw(x) : Array<U32>}>
105  for recurse: @c: T.CV -> @q: (Array<U32> & T.Block) -> {K.full_go(p,t,U32.add(index,16),0,c,q) == outcv(S.chunk_blocks(p,t,U32.add(index,16),0,64n,c,q)) : Array<U32> & T.CV}
106  {K.full_go(1n+p,t,index,flags,cv,(a,b)) == outcv(S.chunk_blocks(1n+p,t,index,flags,64n,cv,(a,b))) : Array<U32> & T.CV}

Uses (23)

Used by (1)