Reflection in Rewriting Logic
Metalogical Foundations and Metaprogramming Applications
Distributed for Center for the Study of Language and Information
This book proposes a general theory of reflective logics and reflective declarative programming languages. This theory provides a conceptual foundation for judging the extent to which a computational system is reflective. Manuel Clavel presents a proof of the reflective nature of rewriting logic and provides examples of the potential for reflective programming in a number of novel computer applications. These applications are implemented in Maude, a reflective programming language and environment based on rewriting logic that can define, represent and execute a breadth of logics, languages and models of computation. A general method to easily build theorem-proving tools in Maude is also proposed and illustrated. The book goes on to promote the notion of a "universal theory" that can simulate the deductions of all representable theories within any given logic.