Advertisement

Journal of Automated Reasoning

, Volume 45, Issue 3, pp 267–300 | Cite as

Equivariant Unification

  • James Cheney
Article

Abstract

Nominal logic is a variant of first-order logic with special facilities for reasoning about names and binding based on the underlying concepts of swapping and freshness. It serves as the basis of logic programming, term rewriting, and automated theorem proving techniques that support reasoning about languages with name-binding. These applications often require nominal unification, or equational reasoning and constraint solving in nominal logic. Urban, Pitts and Gabbay developed an algorithm for a broadly applicable class of nominal unification problems. However, because of nominal logic’s equivariance property, these applications also require a different form of unification, which we call equivariant unification. In this article, we first study the complexity of the decision problem for equivariant unification and equivariant matching. We show that these problems are NP-hard in general, as is nominal unification without the ground-name restrictions employed in previous work on nominal unification. Moreover, we present an exponential-time algorithm for equivariant unification that can be used to decide satisfiability, or produce a complete finite set of solutions. We also study special cases that can be solved efficiently. In particular, we present a polynomial time algorithm for swapping-free equivariant matching, that is, for matching problems in which the swapping operation does not appear.

Keywords

Nominal logic Nominal unification Equivariance 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Calvès, C., Fernández, M.: A polynomial nominal unification algorithm. Theor. Comput. Sci. 403(2–3), 285–306 (2008)MATHCrossRefGoogle Scholar
  2. 2.
    Cheney, J.: The complexity of equivariant unification. In: Proceedings of the 31st International Colloquium on Automata, Languages and Programming (ICALP 2004), LNCS, vol. 3142, pp. 332–344, Turku, Finland. Springer, New York (2004)Google Scholar
  3. 3.
    Cheney, J.: Equivariant unification. In: Proceedings of the 2005 Conference on Rewriting Techniques and Applications (RTA 2005), number 3467 in LNCS, pp. 74–89, Nara, Japan. Springer, New York (2005)Google Scholar
  4. 4.
    Cheney, J.: Completeness and Herbrand theorems for nominal logic. J. Symb. Log. 71(1), 299–320 (2006)MATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Cheney, J., Urban, C.: Nominal logic programming. ACM Trans. Program. Lang. Syst. 30(5), 26 (2008)CrossRefGoogle Scholar
  6. 6.
    Cheney, J.R.: Nominal logic programming. PhD thesis, Cornell University, Ithaca (2004)Google Scholar
  7. 7.
    Clouston, R.A., Pitts, A.M.: Nominal equational logic. Electron. Notes Theor. Comput. Sci. 172, 223–257 (2007)CrossRefMathSciNetGoogle Scholar
  8. 8.
    Courcelle, B.: Graph rewriting: An algebraic and logic approach. In: Handbook of Theoretical Computer Science, vol. B: Formal Models and Semantics (B), pp. 193–242. MIT, Cambridge (1990)Google Scholar
  9. 9.
    Engebretsen, L., Holmerin, J., Russell, A.: Inapproximability results for equations over finite groups. Theor. Comp. Sci. 312(1), 17–45 (2004)MATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Fernández, M., Gabbay, M.J.: Nominal rewriting. Inf. Comput. 205, 917–965 (2007)MATHCrossRefGoogle Scholar
  11. 11.
    Gabbay, M.J., Mathijssen, A.: Nominal (universal) algebra: equational logic with names and binding. J. Log. Comput. 19(6), 1455–1508 (2009)MATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Gabbay, M.J., Pitts, A.M.: A new approach to abstract syntax with variable binding. Form. Asp. Comput. 13, 341–363 (2002)MATHCrossRefGoogle Scholar
  13. 13.
    Garey, M.R., Johnson, D.S.: Computers and Intractability: A Guide to the Theory of NP-Completeness. W. H. Freeman, San Francisco (1979)MATHGoogle Scholar
  14. 14.
    Goldmann, M., Russell, A.: The complexity of solving equations over finite groups. Inf. Comput. 178, 253–262 (2002)MATHMathSciNetGoogle Scholar
  15. 15.
    Guo, Q., Narendran, P., Shukla, S.K.: Unification and matching in process algebras. In: Nipkow, T. (ed.) RTA. Lecture Notes in Computer Science, vol. 1379, pp. 91–105. Springer, New York (1998)Google Scholar
  16. 16.
    Lakin, M.R., Pitts, A.M.: Resolving inductive definitions with binders in higher-order typed functional programming. In: Castagna, G. (ed.) ESOP. Lecture Notes in Computer Science, vol. 5502, pp. 47–61. Springer, New York (2009)Google Scholar
  17. 17.
    Levy, J., Villaret, M.: Nominal unification from a higher-order perspective. In: Voronkov, A. (ed.) RTA. Lecture Notes in Computer Science, vol. 5117, pp. 246–260. Springer, New York (2008)Google Scholar
  18. 18.
    Libkin, L.: Elements of Finite Model Theory. Springer, New York (2004)MATHGoogle Scholar
  19. 19.
    Pitts, A.M.: Nominal logic, a first order theory of names and binding. Inf. Comput. 183, 165–193 (2003)CrossRefMathSciNetGoogle Scholar
  20. 20.
    Snyder, W.: A Proof Theory for General Unification. Progress in Computer Science and Applied Logic, vol. 11. Birkhäuser, Boston (1991)Google Scholar
  21. 21.
    Urban, C.: Nominal techniques in Isabelle/HOL. J. Autom. Reason. 40(4), 327–356 (2008)MATHCrossRefMathSciNetGoogle Scholar
  22. 22.
    Urban, C., Cheney, J.: Avoiding equivariace in Alpha-Prolog. In: Proceedings of the 2005 Conference on Typed Lambda Calculus and Applications (TLCA 2005), no. 3461 in LNCS, pp. 74–89, Nara, Japan. Springer, New York (2005)Google Scholar
  23. 23.
    Urban, C., Pitts, A.M., Gabbay, M.J.: Nominal unification. Theor. Comp. Sci. 323(1–3), 473–497 (2004)MATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer Science+Business Media B.V. 2009

Authors and Affiliations

  1. 1.Laboratory for Foundations of Computer ScienceUniversity of EdinburghEdinburghUK

Personalised recommendations