@article{1c2cfa551f9949dfb359d0adafb2a313,
title = "Code generation based on formal BURS theory and heuristic search",
abstract = "BURS theory provides a powerful mechanism to efficiently generate pattern matches in a given expression tree. BURS, which stands for bottom-up rewrite system, is based on term rewrite systems, to which costs are added. We formalise the underlying theory, and derive an algorithm that computes all pattern matches. This algorithm terminates if the term rewrite system is finite. We couple this algorithm with the well-known search algorithm A* that carries out pattern selection. The search algorithm is directed by a cost heuristic that estimates the minimum cost of code that has yet to be generated. The advantage of using a search algorithm is that we need to compute only those costs that may be part of an optimal rewrite sequence (and not the costs of all possible rewrite sequences as in dynamic programming). A system that implements the algorithms presented in this work has been built.",
keywords = "FMT-CC: COMPILER CONSTRUCTION, Search algorithms, Dynamic programming, Code generation, Minimum cost, Heuristic search",
author = "A. Nymeyer and J.-P. Katoen",
year = "1997",
month = aug,
doi = "10.1007/s002360050099",
language = "English",
volume = "34",
pages = "597--635",
journal = "Acta informatica",
issn = "0001-5903",
publisher = "Springer",
number = "8",
}