Interprocedural Dataflow Analysis over Weight Domains with Infinite Descending Chains

We study generalized fixed-point equations over idempotent semirings and provide an efficient algorithm for the detection whether a sequence of Kleene's iterations stabilizes after a finite number of steps. Previously known approaches considered only bounded semirings where there are no infinite descending chains. The main novelty of our work is that we deal with semirings without the boundedness restriction. Our study is motivated by several applications from interprocedural dataflow analysis. We demonstrate how the reachability problem for weighted pushdown automata can be reduced to solving equations in the framework mentioned above and we describe a few applications to demonstrate its usability.

[1]  Javier Esparza,et al.  Rewriting Models of Boolean Programs , 2006, RTA.

[2]  Michael Luttenberger,et al.  On Fixed Point Equations over Commutative Semirings , 2007, STACS.

[3]  Akihiko Tozawa,et al.  XML Validation for Context-Free Grammars , 2006, APLAS.

[4]  Neil D. Jones,et al.  Program flow analysis - theory and applications , 1981, Prentice Hall software series.

[5]  Flemming Nielson,et al.  Principles of Program Analysis , 1999, Springer Berlin Heidelberg.

[6]  Dexter Kozen,et al.  Parikh's theorem in commutative Kleene algebra , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[7]  Somesh Jha,et al.  Weighted pushdown systems and their application to interprocedural dataflow analysis , 2003, Sci. Comput. Program..

[8]  Hao Wang,et al.  Weighted Pushdown Systems and Trust-Management Systems , 2006, TACAS.

[9]  Grégoire Sutre,et al.  Accelerated Data-Flow Analysis , 2007, SAS.

[10]  Helmut Seidl,et al.  Precise Fixpoint Computation Through Strategy Iteration , 2007, ESOP.

[11]  Robert Love,et al.  Linux Kernel Development (2nd Edition) (Novell Press) , 2005 .

[12]  Akihiko Tozawa,et al.  Complexity Results on Balanced Context-Free Languages , 2007, FoSSaCS.

[13]  Christian Kirkegaard,et al.  Static Analysis for Java Servlets and JSP , 2006, SAS.

[14]  Neil D. Jones,et al.  Program Flow Analysis: Theory and Application , 1981 .

[15]  Akash Lal,et al.  Path Optimization in Programs and Its Application to Debugging , 2006, ESOP.

[16]  Simon S. Lam,et al.  A semantic model for authentication protocols , 1993, Proceedings 1993 IEEE Computer Society Symposium on Research in Security and Privacy.

[17]  J. Esparza,et al.  An Extension of Newton ’ s Method to ω-Continuous Semirings ? , 2007 .

[18]  Werner Kuich,et al.  Semirings and Formal Power Series: Their Relevance to Formal Languages and Automata , 1997, Handbook of Formal Languages.

[19]  Javier Esparza,et al.  jMoped: A Test Environment for Java Programs , 2007, CAV.

[20]  Javier Esparza,et al.  Abstraction Refinement with Craig Interpolation and Symbolic Pushdown Systems , 2006, J. Satisf. Boolean Model. Comput..

[21]  Robert Love,et al.  Linux Kernel Development , 2003 .

[22]  Jean Berstel,et al.  Formal properties of XML grammars and languages , 2000, Acta Informatica.

[23]  Javier Esparza,et al.  Efficient Algorithms for Model Checking Pushdown Systems , 2000, CAV.

[24]  Michael Luttenberger,et al.  Newton ’ s Method for ω-Continuous Semirings ⋆ , 2008 .

[25]  Thomas W. Reps,et al.  Program Analysis Using Weighted Pushdown Systems , 2007, FSTTCS.

[26]  Gilberto Filé,et al.  Static Analysis, 14th International Symposium, SAS 2007, Kongens Lyngby, Denmark, August 22-24, 2007, Proceedings , 2007, SAS.

[27]  Stefan Schwoon,et al.  Model checking pushdown systems , 2002 .