Contextual Rewriting in Automated Reasoning

Contextual rewriting as a generalization of conditional rewriting has been found in different forms in the papers whose major subject is not contextual rewriting. Here, we put the scattered information together and give it a systematic study. Among various properties of contextual rewriting, we show that contextual rewriting is a powerful simplification rule for the first-order theorem proving with equality and preserves the refutational completeness of many reasoning systems. We compare definitions of contextual rewriting by Boyer-Moore, Remy, Zhang-Remy, Ganzinger, Zhang-Kapur, and Bouhoula-Rusinowitch in regard to its efficiency and power. We provide a detailed procedure for simplifying clauses using contextual rewriting and a solution on how to handle variables which appear only in the condition of a conditional rewrite rule.