Rewriting as a Unified Specification Tool for Logic and Control: The ELAN Language
Abstract
We have introduced computational systems as the notion of rewriting directed by user defined strategies. This provides a semantics for \elan, an environment dedicated to prototype, experiment and study the combination of different deduction systems for constraint solving, theorem proving and logic programming paradigms. Formally, a computational system can be represented as a rewrite theory in rewriting logic together with a notion of strategy to select relevant computations. We show how conveniently the strategies can also be specified using again computational systems. Several non-trivial exemples of strategy description are described including a search space library and its use for solving problems like game winning strategies.