Computer Science – Programming Languages
Scientific paper
2011-06-02
Computer Science
Programming Languages
91 pages including the full Twelf proof in the appendix. This paper is a full version of the conference paper (published in Eu
Scientific paper
This paper presents a semantics of self-adjusting computation and proves that the semantics are correct and consistent. The semantics integrate change propagation with the classic idea of memoization to enable reuse of computations under mutation to memory. During evaluation, reuse of a computation via memoization triggers a change propagation that adjusts the reused computation to reflect the mutated memory. Since the semantics integrate memoization and change-propagation, it involves both non-determinism (due to memoization) and mutation (due to change propagation). Our consistency theorem states that the non-determinism is not harmful: any two evaluations of the same program starting at the same state yield the same result. Our correctness theorem states that mutation is not harmful: self-adjusting programs are consistent with purely functional programming. We formalize the semantics and their meta-theory in the LF logical framework and machine check our proofs using Twelf.
Acar Umut A.
Blume Matthias
Donham Jacob
No associations
LandOfFree
A Consistent Semantics of Self-Adjusting Computation does not yet have a rating. At this time, there are no reviews or comments for this scientific paper.
If you have personal experience with A Consistent Semantics of Self-Adjusting Computation, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and A Consistent Semantics of Self-Adjusting Computation will most certainly appreciate the feedback.
Profile ID: LFWR-SCP-O-495597