Formalizing Soundness of Contextual Effects

  • Authors:
  • Polyvios Pratikakis;Jeffrey S. Foster;Michael Hicks;Iulian Neamtiu

  • Affiliations:
  • University of Maryland, College Park, MD 20742;University of Maryland, College Park, MD 20742;University of Maryland, College Park, MD 20742;University of Maryland, College Park, MD 20742

  • Venue:
  • TPHOLs '08 Proceedings of the 21st International Conference on Theorem Proving in Higher Order Logics
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

A contextual effectsystem generalizes standard type and effect systems: where a standard effect system computes the effect of an expression e, a contextual effect system additionally computes the priorand futureeffect of e, which characterize the behavior of computation prior to and following, respectively, the evaluation of e. This paper describes the formalization and proof of soundness of contextual effects, which we mechanized using the Coq proof assistant. Contextual effect soundness is an unusual property because the prior and future effect of a term edepends not on eitself (or its evaluation), but rather on the evaluation of the context in which eappears. Therefore, to state and prove soundness we must "match up" a subterm in the original typing derivation with the possibly-many evaluations of that subterm during the evaluation of the program, in a way that is robust under substitution. We do this using a novel typed operational semantics. We conjecture that our approach could prove useful for reasoning about other properties of derivations that rely on the context in which that derivation appears.