Context unification with one context variable

The context unification problem is a generalization of standard term unification. It consists of finding a unifier for a set of term equations containing first-order variables and context variables. In this paper we analyze the special case of context unification where the use of at most one context variable is allowed and show that it is in NP. The motivation for investigating this subcase of context unification is interprocedural program analysis for programs described using arbitrary terms, generalizing the case where terms were restricted to using unary function symbols. Our results imply that the redundancy problem is in coNP, and that the finite redundancy property holds in this case. We also exhibit particular cases where one context unification is polynomial.

[1]  Alberto Martelli,et al.  An Efficient Unification Algorithm , 1982, TOPL.

[2]  Zohar Manna,et al.  Proving termination with multiset orderings , 1979, CACM.

[3]  Markus Müller-Olm,et al.  A Note on Karr's Algorithm , 2004, ICALP.

[4]  Joachim Niehren,et al.  Well-Nested Context Unification , 2005, CADE.

[5]  Sebastian Maneth,et al.  Efficient memory representation of XML document trees , 2008, Inf. Syst..

[6]  Manfred Schmidt-Schauß,et al.  A Decision Algorithm for Stratified Context Unification , 2002, J. Log. Comput..

[7]  Jordi Levy,et al.  Stratified Context Unification Is NP-Complete , 2006, IJCAR.

[8]  Klaus U. Schulz,et al.  On the Exponent of Periodicity of Minimal Solutions of Context Equation , 1998, RTA.

[9]  Jack Minker Foundations of deductive databases and logic programming , 1988 .

[10]  Michael Karr,et al.  Affine relationships among variables of a program , 1976, Acta Informatica.

[11]  Jordi Levy Linear Second-Order Unification , 1996, RTA.

[12]  Joachim Niehren,et al.  On Equality Up-to Constraints over Finite Trees, Context Unification, and One-Step Rewriting , 1997, CADE.

[13]  Mike Paterson,et al.  Linear unification , 1976, STOC '76.

[14]  Alan Robinson,et al.  Handbook of automated reasoning , 2001 .

[15]  Franz Baader,et al.  Unification theory , 1986, Decis. Support Syst..

[16]  Sumit Gulwani,et al.  A Polynomial-Time Algorithm for Global Value Numbering , 2004, SAS.

[17]  Sumit Gulwani,et al.  Computing Procedure Summaries for Interprocedural Analysis , 2007, ESOP.

[18]  G. Makanin The Problem of Solvability of Equations in a Free Semigroup , 1977 .

[19]  Robert Dabrowski,et al.  On Word Equations in One Variable , 2002, Algorithmica.

[20]  Michael J. Maher,et al.  Unification Revisited , 1988, Foundations of Deductive Databases and Logic Programming..

[21]  Helmut Seidl,et al.  Checking Herbrand Equalities and Beyond , 2005, VMCAI.

[22]  Hubert Comon-Lundh On unification of terms with integer exponents , 2005, Mathematical systems theory.

[23]  Sumit Gulwani,et al.  Assertion Checking Unified , 2007, VMCAI.

[24]  Joachim Niehren,et al.  A Uniform Approach to Underspecification and Parallelism , 1997, ACL.

[25]  Klaus U. Schulz,et al.  Solvability of Context Equations with Two Context Variables is Decidable , 1999, CADE.