Abstract Interpretation of Indexed Grammars

Indexed grammars are a generalization of context-free grammars and recognize a proper subset of context-sensitive languages. The class of languages recognized by indexed grammars are called indexed languages and they correspond to the languages recognized by nested stack automata. For example indexed grammars can recognize the language Open image in new window which is not context-free, but they cannot recognize Open image in new window which is context-sensitive. Indexed grammars identify a set of languages that are more expressive than context-free languages, while having decidability results that lie in between the ones of context-free and context-sensitive languages. In this work we study indexed grammars in order to formalize the relation between indexed languages and the other classes of languages in the Chomsky hierarchy. To this end, we provide a fixpoint characterization of the languages recognized by an indexed grammar and we study possible ways to abstract, in the abstract interpretation sense, these languages and their grammars into context-free and regular languages.

[1]  Sorin Istrail,et al.  Generalization of the Ginsburg-Rice Schützenberger Fixed-Point Theorem for Context-Sensitive and Recursive-Enumerable Languages , 1982, Theor. Comput. Sci..

[2]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[3]  Patrick Cousot,et al.  Systematic design of program analysis frameworks , 1979, POPL.

[4]  Nicolas Halbwachs,et al.  Automatic discovery of linear restraints among variables of a program , 1978, POPL.

[5]  Alain Deutsch,et al.  Interprocedural may-alias analysis for pointers: beyond k-limiting , 1994, PLDI '94.

[6]  Noam Chomsky,et al.  On Certain Formal Properties of Grammars , 1959, Inf. Control..

[7]  Patrick Cousot,et al.  Grammar semantics, analysis and parsing by abstract interpretation , 2011, Theor. Comput. Sci..

[8]  Roberto Giacobazzi,et al.  Unveiling metamorphism by abstract interpretation of code properties , 2015, Theor. Comput. Sci..

[9]  Patrick Cousot,et al.  Abstract Interpretation Frameworks , 1992, J. Log. Comput..

[10]  Alfred V. Aho Indexed Grammars-An Extension of Context Free Grammars , 1967, SWAT.

[11]  Roberto Giacobazzi,et al.  Modelling Metamorphism by Abstract Interpretation , 2010, SAS.

[12]  Robert A. Ballance,et al.  Grammatical abstraction and incremental syntax analysis in a language-based editor , 1988, PLDI '88.

[13]  Gerald Gazdar,et al.  Applicability of Indexed Grammars to Natural Languages , 1988 .

[14]  Alfred V. Aho,et al.  Nested Stack Automata , 1969, Journal of the ACM.

[15]  Roberto Giacobazzi,et al.  Making abstract interpretations complete , 2000, JACM.

[16]  Marni Mishna,et al.  From indexed grammars to generating functions , 2011, RAIRO Theor. Informatics Appl..

[17]  Patrick Cousot,et al.  The calculational design of a generic abstract interpreter , 1999 .

[18]  Patrick Cousot,et al.  Abstract interpretation: past, present and future , 2014, CSL-LICS.

[19]  Somesh Jha,et al.  Verifying parameterized networks , 1997, TOPL.

[20]  Patrick Cousot,et al.  Compositional and Inductive Semantic Definitions in Fixpoint, Equational, Constraint, Closure-condition, Rule-based and Game-Theoretic Form , 1995, CAV.

[21]  Eberhard Bertsch,et al.  On the Relationship between Indexed Grammars and Logic Programs , 1994, J. Log. Program..

[22]  B. Partee,et al.  Mathematical Methods in Linguistics , 1990 .

[23]  Seymour Ginsburg,et al.  The mathematical theory of context free languages , 1966 .

[24]  Patrick Cousot,et al.  Constructive design of a hierarchy of semantics of a transition system by abstract interpretation , 2002, MFPS.