Fast Term Indexing with Coded Context Trees

  • Authors:
  • Harald Ganzinger;Robert Nieuwenhuis;Pilar Nivela

  • Affiliations:
  • Max-Planck-Institut für Informatik, Stuhlsatzenhausweg 85, 66123 Saarbrücken, Germany. e-mail: hg@mpi-sb.mpg.de;Technical University of Catalonia, Dept. LSI, Jordi Girona 1, 08034 Barcelona, Spain. e-mail: roberto@lsi.upc.es;Technical University of Catalonia, Dept. LSI, Jordi Girona 1, 08034 Barcelona, Spain. e-mail: nivela@lsi.upc.es

  • Venue:
  • Journal of Automated Reasoning
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Indexing data structures have a crucial impact on the performance of automated theorem provers. Examples are discrimination trees, which are like tries where terms are seen as strings and common prefixes are shared, and substitution trees, where terms keep their tree structure and all common contexts can be shared. Here we describe a new indexing data structure, called context trees, where, by means of a limited kind of context variables, common subterms also can be shared, even if they occur below different function symbols. Apart from introducing the concept, we also provide evidence for its practical value. We show how context trees can be implemented by means of abstract machine instructions. Experiments with benchmarks for forward matching show that our implementation is competitive with tightly coded current state-of-the-art implementations of the other main techniques. In particular, space consumption of context trees is significantly less than for other index structures.