Verification of the Completeness of Unification Algorithms à la Robinson

  • Andréia B. Avelar
  • Flávio L. C. de Moura
  • André Luiz Galdino
  • Mauricio Ayala-Rincón
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6188)


This work presents a general methodology for verification of the completeness of first-order unification algorithms à la Robinson developed in the higher-order proof assistant PVS. The methodology is based on a previously developed formalization of the theorem of existence of most general unifiers for unifiable terms over first-order signatures. Termination and soundness proofs of any unification algorithm are proved by reusing the formalization of this theorem and completeness should be proved according to the specific way in that non unifiable inputs are treated by the algorithm.


Propositional Calculus Function Symbol General Methodology Unification Algorithm Proof Assistant 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Avelar, A.B., de Moura, F.L.C., Ayala-Rincón, M., Galdino, A.: A Formalization of The Existence of Most General Unifiers. Universidade de Brasília (2010),
  2. 2.
    Baader, F., Nipkow, T.: Term Rewriting and All That. CUP (1998)Google Scholar
  3. 3.
    Bezem, M., Klop, J.W., de Vrijer, R. (eds.): Term Rewriting Systems by TeReSe. Cambridge Tracts in Theor. Comput. Sci., CUP, vol. 55 (2003)Google Scholar
  4. 4.
    Burris, S.N.: Logic for Mathematics and Computer Science. Prentice Hall, Englewood Cliffs (1998)zbMATHGoogle Scholar
  5. 5.
    Constable, R., Moczydlowski, W.: Extracting the resolution algorithm from a completeness proof for the propositional calculus. Annals of Pure and Applied Logic 161(3), 337–348 (2009)CrossRefMathSciNetGoogle Scholar
  6. 6.
    Corbin, J., Bidoit, M.: A Rehabilitation of Robinson’s Unification Algorithm. In: IFIP Congress, pp. 909–914 (1983)Google Scholar
  7. 7.
    Ebbinghaus, H.D., Flum, J., Thomas, W.: Mathematical Logic. Springer, Heidelberg (1984)zbMATHGoogle Scholar
  8. 8.
    Galdino, A.L., Ayala-Rincón, M.: A Formalization of Newman’s and Yokouchi Lemmas in a Higher-Order Language. J. of Form. Reasoning 1(1), 39–50 (2008)zbMATHGoogle Scholar
  9. 9.
    Galdino, A.L., Ayala-Rincón, M.: A PVS Theory for Term Rewriting Systems. In: Proceedings of the 3rd Workshop on Logical and Semantic Frameworks, with Applications (LSFA). Electr. Notes Theor. Comput. Sci., vol. 247, pp. 67–83. Elsevier, Amsterdam (2009)Google Scholar
  10. 10.
    Galdino, A.L., Ayala-Rincón, M.: A Formalization of the Knuth-Bendix(-Huet) Critical Pair Theorem. J. of Automated Reasoning, doi: 10.1007/s10817-010-9165-2 (2010)Google Scholar
  11. 11.
    Jacobs, B., Smetsers, S., Schreur, R.W.: Code-carrying theories. Formal Asp. Comput. 19(2), 191–203 (2007)zbMATHCrossRefGoogle Scholar
  12. 12.
    Knuth, D.E., Bendix, P.B.: Simple Words Problems in Universal Algebras. In: Leech, J. (ed.) Computational Problems in Abstract Algebra, pp. 263–297. Pergamon Press, Oxford (1970)Google Scholar
  13. 13.
    Lensink, L., Muñoz, C., Goodloe, A.: From verified models to verifiable code. Technical Memorandum NASA/TM-2009-215943, NASA, Langley Research Center, Hampton VA 23681-2199, USA (June 2009)Google Scholar
  14. 14.
    Lloyd, J.W.: Foundations of Logic Programming. In: Symbolic Computation – Artificial Intelligence, 2nd edn., Springer, Heidelberg (1987)Google Scholar
  15. 15.
    Owre, S., Rushby, J.M., Shankar, N.: PVS: A Prototype Verification System. In: Kapur, D. (ed.) CADE 1992. LNCS (LNAI), vol. 607, pp. 748–752. Springer, Heidelberg (1992)Google Scholar
  16. 16.
    Paulson, L.C.: Verifying the Unification Algorithm in LCF. Science of Computer Programming 5(2), 143–169 (1985)zbMATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Robinson, J.A.: A Machine-oriented Logic Based on the Resolution Principle. Journal of the ACM 12(1), 23–41 (1965)zbMATHCrossRefGoogle Scholar
  18. 18.
    Rouyer, J.: Développement de l’algorithme d’unification dans le calcul des constructions. Technical Report 1795, INRIA (1992)Google Scholar
  19. 19.
    Ruiz-Reina, J.-L., Martín-Mateos, F.-J., Alonso, J.-A., Hidalgo, M.-J.: Formal Correctness of a Quadratic Unification Algorithm. J. of Automated Reasoning 37(1-2), 67–92 (2006)zbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Andréia B. Avelar
    • 1
  • Flávio L. C. de Moura
    • 2
  • André Luiz Galdino
    • 3
  • Mauricio Ayala-Rincón
    • 1
    • 2
  1. 1.Departamentos de MatemáticaUniversidade de BrasíliaBrasíliaBrazil
  2. 2.Ciência da ComputaçãoUniversidade de BrasíliaBrasíliaBrazil
  3. 3.Departamento de MatemáticaUniversidade Federal de GoiásCatalãoBrazil

Personalised recommendations