FSTTCS 2004: Foundations of Software Technology and Theoretical Computer Science

Volume 3328 of the series Lecture Notes in Computer Science pp 311-323

Join Algorithms for the Theory of Uninterpreted Functions

  • Sumit GulwaniAffiliated withLancaster UniversityUniversity of California
  • , Ashish TiwariAffiliated withLancaster UniversitySRI International
  • , George C. NeculaAffiliated withLancaster UniversityUniversity of California

* Final gross prices may vary according to local VAT.

Get Access


The join of two sets of facts, E 1 and E 2, is defined as the set of all facts that are implied independently by both E 1 and E 2. Congruence closure is a widely used representation for sets of equational facts in the theory of uninterpreted function symbols (UFS). We present an optimal join algorithm for special classes of the theory of UFS using the abstract congruence closure framework. Several known join algorithms, which work on a strict subclass, can be cast as specific instantiations of our generic procedure. We demonstrate the limitations of any approach for computing joins that is based on the use of congruence closure. We also mention some interesting open problems in this area.