Proving Operational Termination of Membership Equational Programs
Authors
Francisco Durán, Salvador Lucas, Claude Marché,
José Meseguer and Xavier Urbain
Abstract
Reasoning about the termination of equational programs
in sophisticated equational languages such as Elan,
Maude, OBJ, CafeOBJ, Haskell, and so on,
requires support for advanced features such as evaluation
strategies, rewriting modulo, use of extra variables in conditions,
partiality, and expressive type systems (possibly including
polymorphism and higher-order). However, many of those
features are, at best, only partially supported by current
term rewriting termination tools (for instance MU-TERM, CiME, AProVE, TTT,
Termptation, etc.) while they may be essential to ensure
termination.
We present a sequence of theory transformations that can be used to
bridge the gap between expressive membership equational programs and
such termination tools, and prove the correctness of such transformations.
We also discuss a prototype tool performing the transformations
on Maude equational programs and sending the resulting
transformed theories to some of the aforementioned standard
termination tools.
Keywords
Program analysis, term rewriting, termination.