A theoretical framework for reasoning about program construction based on extensions of rewrite systems - Loria-Saenz, Carlos A. (1993)