Reducing simple grammars: exponential against highly-polynomial time in practice

  • Authors:
  • Cédric Bastien;Jurek Czyzowicz;Wojciech Fraczak;Wojciech Rytter

  • Affiliations:
  • Dépt d’informatique, Université du Québec en Outaouais, Gatineau, PQ, Canada;Dépt d’informatique, Université du Québec en Outaouais, Gatineau, PQ, Canada;Dépt d’informatique, Université du Québec en Outaouais, Gatineau, PQ, Canada;Inst. of Informatics, Warsaw University, Warsaw, Poland

  • Venue:
  • CIAA'06 Proceedings of the 11th international conference on Implementation and Application of Automata
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

The simple grammar reduction is an important component in the implementation of Concatenation State Machines (a hardware version of stateless pushdown automata designed for wire-speed network packet classification). We present a comparison and experimental analysis of the best-known algorithms for the grammar reduction. There are two classes of algorithms: the ones that process compressed strings without decompression (polynomial time) and the ones which process strings explicitely. The second category, though exponential time in pessimistic case, is more efficient in the considered practical scenario. There are two approaches to this problem: one processing compressed strings without decompression and another one which processes strings explicitely. It turns out that the second approach is more efficient in the considered practical scenario despite having worst-case exponential time complexity (while the first one is polynomial). The study has been conducted in the context of network packet classification, where simple grammars are used for representing the classification policies.