Visibly pushdown languages (2004)
Cached
Download Links
- [www-faculty.cs.uiuc.edu]
- [www.cis.upenn.edu]
- [www.cis.upenn.edu]
- [www.cis.upenn.edu]
- DBLP
Other Repositories/Bibliography
| Citations: | 99 - 14 self |
BibTeX
@INPROCEEDINGS{Alur04visiblypushdown,
author = {Rajeev Alur and Viraj Kumar and P. Madhusudan and Mahesh Viswanathan},
title = {Visibly pushdown languages},
booktitle = {},
year = {2004},
pages = {202--211},
publisher = {ACM Press}
}
Years of Citing Articles
OpenURL
Abstract
Abstract. We study congruences on words in order to characterize the class of visibly pushdown languages (Vpl), a subclass of context-free languages. For any language L, we define a natural congruence on words that resembles the syntactic congruence for regular languages, such that this congruence is of finite index if, and only if, L is a Vpl. We then study the problem of finding canonical minimal deterministic automata for Vpls. Though Vpls in general do not have unique minimal automata, we consider a subclass of VPAs called k-module single-entry VPAs that correspond to programs with recursive procedures without input parameters, and show that the class of well-matched Vpls do indeed have unique minimal k-module single-entry automata. We also give a polynomial time algorithm that minimizes such k-module single-entry VPAs. 1 Introduction The class of visibly pushdown languages (Vpl), introduced in [1], is a subclassof context-free languages accepted by pushdown automata in which the input letter determines the type of operation permitted on the stack. Visibly push-down languages are closed under all boolean operations, and problems such as inclusion, that are undecidable for context-free languages, are decidable for Vpl. Vpls are relevant to several applications that use context-free languages suchas the model-checking of software programs using their pushdown models [1-3]. Recent work has shown applications in other contexts: in modeling semanticsof effects in processing XML streams [4], in game semantics for programming languages [5], and in identifying larger classes of pushdown specifications thatadmit decidable problems for infinite games on pushdown graphs [6].







