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
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
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 |
In term rewriting systems, pattern-matching is performed according to a prescribed traversal order. By adapting the traversal order to suit the patterns of the rewriting system, it is often possible to obtain better matching automata in the sense that they have a smaller size and allow term matching in shorter time, compared with the left-to-right automaton. They may improve termination properties too. Space requirement is reduced further using a directed acyclic graph automaton that shares all the equivalent subautomata. This is done without altering either the matching time or termination properties. Isomorphic subautomata are duplicated in the tree-based automata. We discuss and develop an efficient approach to space requirement optimisation, matching time and termination properties improvement.