Equational logic as a programming language
Equational logic as a programming language
Miranda: a non-strict functional language with polymorphic types
Proc. of a conference on Functional programming languages and computer architecture
Rule-based programming under OPS5
Rule-based programming under OPS5
Comparison of priority rules in pattern matching and term rewriting
Journal of Symbolic Computation
Handbook of theoretical computer science (vol. B)
Report on the programming language Haskell: a non-strict, purely functional language version 1.2
ACM SIGPLAN Notices - Haskell special issue
SIAM Journal on Computing
Journal of the ACM (JACM)
Efficient automata-driven pattern-matching for equational programs
Software—Practice & Experience
Improving Space, Time, and Termination in Rewriting-Based Programming
Proceedings of the 14th International conference on Industrial and engineering applications of artificial intelligence and expert systems: engineering of intelligent systems
Optimal Adaptive Pattern Matching
IEA/AIE '02 Proceedings of the 15th international conference on Industrial and engineering applications of artificial intelligence and expert systems: developments in applied artificial intelligence
Left-to-Right Tree Pattern Matching
RTA '91 Proceedings of the 4th International Conference on Rewriting Techniques and Applications
Optimal Left-to-Right Pattern-Matching Automata
ALP '97-HOA '97 Proceedings of the 6th International Joint Conference on Algebraic and Logic Programming
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
Hi-index | 0.00 |
Pattern matching is a fundamental feature in many applications such as rule-based expert systems. Usually, patterns are pre-processed into a deterministic finite automaton. With ambiguous patterns a subject term may be an instance of more than one pattern and so a priority rule is usually engaged to select the matched pattern. The pre-processing of the patterns adds new patterns, which are instances of the original ones. When the original patterns are ambiguous, some of the instances supplied may be irrelevant. Their introduction causes unnecessary increase of space requirements. Furthermore, they slow down the matching process. Here, we devise a new pre-processing operation that identifies and avoids including such irrelevant instances and hence improves space and time requirements for the matching automaton and process.