def represent_fold

stelliferous@0.0.2.0 · proofs/traversal_array_refinement.bend:86

import stelliferous@0.0.2.0/proofs/traversal_array_refinement.bend as TraversalArrayRefinement
import Base
import stelliferous@0.0.2.0/traversal_array.bend as Traversal

86# The accumulator is an observation, independent of its numeric interpretation.
87# In particular this theorem never rewrites or reassociates a floating sum.
88def represent_fold(~Reader: Type,~Model: Data,~Accumulator: Data,~Context: Data,~pack_reader: Model -> Reader,
89  state: Traversal.State<&2,&2,Model,Accumulator,Context>) -> Traversal.State<&1,&2,Reader,Accumulator,Context>:
90  Traversal.State{reader,accumulator,position,context} = state
91  Traversal.State{pack_reader(reader),accumulator,position,context}

Uses (1)

Used by (2)