A complete axiomatization of strict equality

  • Authors:
  • Javier Álvez;Francisco J. López-Fraguas

  • Affiliations:
  • Universidad Complutense de Madrid;Universidad Complutense de Madrid

  • Venue:
  • FLOPS'10 Proceedings of the 10th international conference on Functional and Logic Programming
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Computing with data values that are some kind of trees —finite, infinite, rational— is at the core of declarative programming, either logic, functional, or functional-logic. Understanding the logic of trees is therefore a fundamental question with impact in different aspects, like language design, including constraint systems or constructive negation, or obtaining methods for verifying and reasoning about programs. The theory of true equality over finite or infinite trees is quite well-known. In particular, a seminal paper by Maher proved its decidability and gave a complete axiomatization of the theory. However, the sensible notion of equality for functional and functional-logic languages with a lazy evaluation regime is strict equality, a computable approximation of true equality for possibly infinite and partial trees. In this paper, we investigate the first-order theory of strict equality, arriving to remarkable and not obvious results: the theory is again decidable and admits a complete axiomatization, not requiring predicate symbols other than strict equality itself. Besides, the results stem from an effective —taking into account the intrinsic complexity of the problem— decision procedure that can be seen as a constraint solver for general strict equality constraints. As a side product of our results, we obtain that the theories of strict equality over finite and infinite partial trees, respectively, are elementarily equivalent.