Title
Generic Encodings of Constructor Rewriting Systems.
Abstract
Rewriting is a formalism widely used in computer science and mathematical logic. The classical formalism has been extended, in the context of functional languages, with an order over the rules and, in the context of rewrite based languages, with the negation over patterns. We propose in this paper a concise and clear algorithm computing the difference over patterns which can be used to define generic encodings of constructor term rewriting systems with negation and order into classical term rewriting systems. As a direct consequence, established methods used for term rewriting systems can be applied to analyze properties of the extended systems. The approach can also be seen as a generic compiler which targets any language providing basic pattern matching primitives. The formalism provides also a new method for deciding if a set of patterns subsumes a given pattern and thus, for checking the presence of useless patterns or the completeness of a set of patterns.
Year
DOI
Venue
2019
10.1145/3354166.3354173
Proceedings of the 21st International Symposium on Principles and Practice of Programming Languages 2019
Keywords
Field
DocType
compilation, pattern matching, term rewriting
Programming language,Functional programming,Negation,Algorithm,Compiler,Rewriting,Formalism (philosophy),Pattern matching,Completeness (statistics),Mathematics,Mathematical logic
Journal
Volume
ISBN
Citations 
abs/1905.06233
978-1-4503-7249-7
0
PageRank 
References 
Authors
0.34
0
2
Name
Order
Citations
PageRank
Horatiu Cirstea116415.93
Pierre-etienne Moreau259840.40