A Fragment of ML Decidable by Visibly Pushdown Automata

  • David Hopkins
  • Andrzej S. Murawski
  • C. -H. Luke Ong
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6756)


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, RML O − Str , consisting of terms-in-context x 1 : θ 1, ... , x n : θ n  ⊢ M : θ such that θ is short, and every argument type of every θ i is short. RML O − 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 RML O − 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.


Canonical Form Type Sequent Binary Tree Initial Move Tree Automaton 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abramsky, S., McCusker, G.: Call-by-value games. In: Nielsen, M. (ed.) CSL 1997. LNCS, vol. 1414. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  2. 2.
    Abramsky, S., McCusker, G.: Linearity, sharing and state: a fully abstract game semantics for Idealized Algol with active expressions. In: Algol-like Languages. Birkhäuser, Basel (1997)Google Scholar
  3. 3.
    Ahmed, A., Dreyer, D., Rossberg, A.: State-dependent representation independence. In: POPL (2009)Google Scholar
  4. 4.
    Alur, R., Madhusudan, P.: Visibly pushdown languages. In: STOC (2004)Google Scholar
  5. 5.
    Ghica, D.R.: Regular-language semantics for a call-by-value programming language. In: MFPS (2001)Google Scholar
  6. 6.
    Ghica, D.R., McCusker, G.: The regular-language semantics of second-order Idealized Algol. Theor. Comput. Sci. 309(1-3) (2003)Google Scholar
  7. 7.
    Honda, K., Yoshida, N.: Game theoretic analysis of call-by-value computation. In: Degano, P., Gorrieri, R., Marchetti-Spaccamela, A. (eds.) ICALP 1997. LNCS, vol. 1256. Springer, Heidelberg (1997)Google Scholar
  8. 8.
    Hopkins, D., Ong, C.-H.L.: Homer: A Higher-Order Observational Equivalence Model checkER. In: Bouajjani, A., Maler, O. (eds.) CAV 2009. LNCS, vol. 5643, pp. 654–660. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  9. 9.
    Hyland, J.M.E., Ong, C.-H.L.: On full abstraction for PCF: I, II, and III. Inf. Comput. 163(2) (2000)Google Scholar
  10. 10.
    Murawski, A.S.: About the undecidability of program equivalence in finitary languages with state. ACM Transactions on Computational Logic 6(4) (2005)Google Scholar
  11. 11.
    Murawski, A.S.: Functions with local state: regularity and undecidability. Theoretical Computer Science 338(1/3) (2005)Google Scholar
  12. 12.
    Murawski, A.S., Ong, C.-H.L., Walukiewicz, I.: Idealized algol with ground recursion, and DPDA equivalence. In: Caires, L., Italiano, G.F., Monteiro, L., Palamidessi, C., Yung, M. (eds.) ICALP 2005. LNCS, vol. 3580, pp. 917–929. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  13. 13.
    Murawski, A.S., Tzevelekos, N.: Block structure vs. Scope extrusion: Between innocence and omniscience. In: Ong, L. (ed.) FOSSACS 2010. LNCS, vol. 6014, pp. 33–47. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  14. 14.
    Murawski, A.S., Tzevelekos, N.: Algorithmic nominal game semantics. In: Barthe, G. (ed.) ESOP 2011. LNCS, vol. 6602, pp. 419–438. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  15. 15.
    Murawski, A.S., Walukiewicz, I.: Third-order idealized algol with iteration is decidable. In: Sassone, V. (ed.) FOSSACS 2005. LNCS, vol. 3441, pp. 202–218. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  16. 16.
    Pitts, A.M., Stark, I.D.B.: Operational reasoning for functions with local state. In: Higher Order Operational Techniques in Semantics (1998)Google Scholar
  17. 17.
    Reynolds, J.C.: The essence of Algol. In: de Bakker, J.W., van Vliet, J.C. (eds.) Algorithmic Languages, pp. 345–372. North Holland, Amsterdam (1978)Google Scholar
  18. 18.
    Seidl, H.: Deciding equivalence of finite tree automata. SIAM J. Comput. 19(3) (1990)Google Scholar
  19. 19.
    Stark, I.D.B.: Names and Higher-Order Functions. PhD thesis, Univ. of Cambridge (1995)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • David Hopkins
    • 1
  • Andrzej S. Murawski
    • 2
  • C. -H. Luke Ong
    • 1
  1. 1.Department of Computer ScienceUniversity of OxfordUK
  2. 2.Department of Computer ScienceUniversity of LeicesterUK

Personalised recommendations