A fragment of ML decidable by visibly pushdown automata

  • Authors:
  • David Hopkins;Andrzej S. Murawski;C.-H. Luke Ong

  • Affiliations:
  • Department of Computer Science, University of Oxford, UK;Department of Computer Science, University of Leicester, UK;Department of Computer Science, University of Oxford, UK

  • Venue:
  • ICALP'11 Proceedings of the 38th international conference on Automata, languages and programming - Volume Part II
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

The simply-typed, call-by-value language, RML, may be viewed as a canonical restriction of Standard ML to ground-type references, augmented by a "bad variable" construct in the sense of Reynolds. By a short type, we mean a type of order at most 2 and arity at most 1. We consider the O-strict fragment of (finitary) RML, RMLO-Str, consisting of terms-in-context x1 : θ1, ..., xn : θn ⊢ M : θ such that θ is short, and every argument type of every θi is short. RMLO-Str is surprisingly expressive; it includes several instances of (in)equivalence in the literature that are challenging to prove using methods based on (state-based) logical relations. We show that it is decidable whether a given pair of RMLO-Str terms-in-context is observationally equivalent. Using the fully abstract game semantics of RML, our algorithm reduces the problem to the language equivalence of visibly pushdown automata. When restricted to terms in canonical form, the problem is EXPTIME-complete.