More Efficient Bottom-Up Multi-Pattern Matching in Trees

Abstract

Pattern matching in trees is fundamental to a variety of programming language systems. However, progress has been slow in satisfying a pressing need for general purpose pattern matching algorithms that are efficient in both time and space. We offer asymptotic improvements in both time and space to Chase's bottom-up algorithm for pattern preprocessing. A preliminary implementation of our algorithm runs ten times faster than Chase's implementation on the hardest problem instances. Our preprocessing algorithm has the advantage of being online with respect to pattern additions and deletions. It also adapts to favorable input instances, and on Hoffmann and O'Donnell's class of Simple Patterns, it performs better than their special purpose algorithm tailored to this class. We show how to modify our algorithm using a new decomposition method to obtain a space/time tradeoff. Finally, we trade a log factor in time for a linear space bottom-up pattern matching algorithm that handles a wide subclass of Hoffmann and O'Donnell's Simple Patterns.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Apr 01, 1992
Accession Number
ADA608560

Entities

People

  • J. Cai
  • R. Paige
  • R. Tarjan

Organizations

  • New York University

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Abstracts
  • Algorithms
  • Batch Processing
  • Coding
  • Computations
  • Computer Programming
  • Computer Science
  • Computers
  • Conversion
  • Equations
  • Language
  • Lists (Data Structures)
  • New York
  • Notation
  • Preprocessing
  • Symbols
  • Trees (Data Structures)

Fields of Study

  • Computer science

Readers

  • Computer Vision.
  • Distributed Systems and Data Platform Development
  • Regression Analysis.

Technology Areas

  • Space