The placement-independent identity: the rule and the input sequence, not
how the samples are split among owners. State saved under one split is a
state of the same learner under any other split of the same sequence.
453def dataParallelLearnerIdentity =
454 (lambda unrestricted contribution : Nat .
455 (lambda unrestricted update : Nat .
456 (lambda unrestricted system : (family DataParallelSystem contribution update) .
457 (let unrestricted samples =
458 (dataParallelAllSamples contribution update system)
459 in
460 (bytes-append
461 b"alpha-data-parallel-learner-v1;"
462 (bytes-append
463 (dataParallelRuleIdentity contribution update system)
464 (bytes-append
465 (pointwiseIdentityWord (stdListLength (family StdList StdU64) samples))
466 (dataParallelSamplesIdentity samples))))))))The compiler supplied declaration spans and resolved links from this source snapshot. This page does not assert that this file belongs to a checked closure.