Abstract
Kleene algebra is a great formalism for doing intraprocedural analysis and verification of programs, but it seems difficult to deal with interprocedural analysis where the power of context-free languages is often needed to represent both the program and the property. In the model checking framework, Alur and Madhusudan defined visibly pushdown automata, which accept a subclass of context-free languages called visibly pushdown languages, to do some interprocedural analyses of programs while remaining decidable. We present visibly pushdown Kleene algebra, an extension of Kleene algebra that axiomatises exactly the equational theory of visibly pushdown languages. The algebra is simply Kleene algebra along with a family of implicit least fixed point operators. Some interprocedural analyses of (mutually) recursive programs are possible in this formalism and it can deal with some non-regular properties.
This research is supported by NSERC and FQRNT.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Alur, R., Madhusudan, P.: Visibly pushdown languages. In: STOC 2004: Proc. of the 36th ACM symp. on Theory of computing, pp. 202–211. ACM, New York (2004)
Bloom, S.L., Ésik, Z.: Iteration theories: the equational logic of iterative processes. Springer, New York (1993)
Bolduc, C., Desharnais, J.: Static analysis of programs using omega algebra with tests. In: MacCaull, W., Winter, M., Düntsch, I. (eds.) RelMiCS 2005. LNCS, vol. 3929, pp. 60–72. Springer, Heidelberg (2006)
Bolduc, C., Ktari, B.: Visibly pushdown Kleene algebra. Technical Report DIUL-RR-0901, Laval university, QC, Canada (2009)
Bouajjani, A., Esparza, J., Maler, O.: Reachability analysis of pushdown automata: Application to model-checking. In: Mazurkiewicz, A., Winkowski, J. (eds.) CONCUR 1997. LNCS, vol. 1243, pp. 135–150. Springer, Heidelberg (1997)
Chaudhuri, S., Alur, R.: Instrumenting C programs with nested word monitors. In: Bošnački, D., Edelkamp, S. (eds.) SPIN 2007. LNCS, vol. 4595, pp. 279–283. Springer, Heidelberg (2007)
Kozen, D.: A completeness theorem for Kleene algebras and the algebra of regular events. Information and Computation 110(2), 366–390 (1994)
Kozen, D.: Kleene algebra with tests. Transactions on Programming Languages and Systems 19(3), 427–443 (1997)
Kozen, D.: Kleene algebras with tests and the static analysis of programs. Technical Report TR2003-1915, Cornell University, NY, USA (November 2003)
Leiß, H.: Kleene modules and linear languages. Journal of Logic and Algebraic Programming 66(2), 185–194 (2006)
Leiß, H.: Towards Kleene algebra with recursion. In: Kleine Büning, H., Jäger, G., Börger, E., Richter, M.M. (eds.) CSL 1991. LNCS, vol. 626, pp. 242–256. Springer, Heidelberg (1992)
Löding, C., Lutz, C., Serre, O.: Propositional dynamic logic with recursive programs. Journal of Logic and Algebraic Programming 73, 51–69 (2007)
Mathieu, V., Desharnais, J.: Verification of pushdown systems using omega algebra with domain. In: MacCaull, W., Winter, M., Düntsch, I. (eds.) RelMiCS 2005. LNCS, vol. 3929, pp. 188–199. Springer, Heidelberg (2006)
Schwoon, S.: Model-Checking Pushdown Systems. PhD thesis, Technische Universität München (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bolduc, C., Ktari, B. (2009). Visibly Pushdown Kleene Algebra and Its Use in Interprocedural Analysis of (Mutually) Recursive Programs. In: Berghammer, R., Jaoua, A.M., Möller, B. (eds) Relations and Kleene Algebra in Computer Science. RelMiCS 2009. Lecture Notes in Computer Science, vol 5827. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-04639-1_4
Download citation
DOI: https://doi.org/10.1007/978-3-642-04639-1_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-04638-4
Online ISBN: 978-3-642-04639-1
eBook Packages: Computer ScienceComputer Science (R0)