def seeded

bend-collections-laws-math@1.0.0.0 · proofs/math/random/chacha8/seed.bend:163

import bend-collections-laws-math@1.0.0.0/proofs/math/random/chacha8/seed.bend as Seed
import Base
import bend-collections-laws-math@1.0.0.0/src/math/u64.bend as W
import bend-collections-laws-math@1.0.0.0/src/math/random/chacha8.bend as C8
import bend-collections-laws-math@1.0.0.0/spec/math/random/chacha8rand.bend as S
import bend-collections-laws-math@1.0.0.0/spec/math/random.bend as SRM

163# THEOREM (ChaCha8.seeded)
164def seeded(+n: Nat, +seed: List<&2, U32>) -> SRM.ChaCha8.seeded(n, seed):
165  %Equal.sym(Bool, C8.all_bytes(seed), S.bytes_ok(seed), bytes_eq(seed)) : {SRM.map_outputs(n, C8.seed_ok(seed, _)) == SRM.map_stream(n, S.key_if(seed, Bool.and(S.bytes_ok(seed), Nat.is_eq(S.length(seed), 32n)))) : Maybe<&2, List<&2, W.U64>>}
166  seeded_c(n, seed, S.bytes_ok(seed))

Uses (19)

Used by (1)