Reducibility and ⊤⊤-lifting for computation types

  • Authors:
  • Sam Lindley;Ian Stark

  • Affiliations:
  • Laboratory for Foundations of Computer Science, School of Informatics, The University of Edinburgh, Scotland;Laboratory for Foundations of Computer Science, School of Informatics, The University of Edinburgh, Scotland

  • Venue:
  • TLCA'05 Proceedings of the 7th international conference on Typed Lambda Calculi and Applications
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

We propose ⊤⊤-lifting as a technique for extending operational predicates to Moggi's monadic computation types, independent of the choice of monad. We demonstrate the method with an application to Girard-Tait reducibility, using this to prove strong normalisation for the computational metalanguage λml. The particular challenge with reducibility is to apply this semantic notion at computation types when the exact meaning of “computation” (stateful, side-effecting, nondeterministic, etc.) is left unspecified. Our solution is to define reducibility for continuations and use that to support the jump from value types to computation types. The method appears robust: we apply it to show strong normalisation for the computational metalanguage extended with sums, and with exceptions. Based on these results, as well as previous work with local state, we suggest that this “leap-frog” approach offers a general method for raising concepts defined at value types up to observable properties of computations.