項書き換え

del.icio.us del.icio.us
Digg Digg
Furl Furl
Reddit Reddit
Rojo Rojo
Add to OnlyWire

項書き換え(こうかきかえ、Term Rewriting)とは、数学計算機科学論理学において、式(数式、論理式)の項を別の項に置換する手法を総称する用語である。項書き換え系は、項の集合とその置換規則から構成される。

項書き換えは非決定論的である。ある項書き換え規則を項に適用する手法は様々である。項書き換え系では、項書き換えのためのアルゴリズムは提供されず、様々な代替置換規則が適用できる。しかし、適当なアルゴリズムと組み合わせれば、項書き換え系はプログラムのような働きをし、実際いくつかの宣言型プログラミング言語は項書き換えに基づいている。

目次

算術

一般的な算術の規則は、以下のような規則を含む項書き換え系とみなすことができる:

 \mathrm{plus}(a, b) \rightarrow a + b
 \mathrm{times}(a, b) \rightarrow a \times b

ここで a+bab の加算を意味し、a × bab の乗算を意味する。

以下では、plus(a, b) を a+b と記述し、times(a, b) を a × b と記述する。次のような式があるとする。

 (11 + 9) \times (2 + 4)

この式を書き換える方法は2種類ある。最初の括弧の中を単純化するか、2番目の括弧の中を単純化するかである。最初の括弧の中を先に項書き換えで単純化すると、次のようになる。

 20 \times (2 + 4) = 20 \times 6 = 120

2番目の括弧の中を先に単純化すると、次のようになる。

 (11 + 9) \times 6 = 20 \times 6 = 120.

初等代数学

項書き換え系は自動定理証明にとっても便利な手法である。いくつかの等式からなる仮説があったとき、それらが一種の項書き換え規則群として利用できる。簡単な代数学での項書き換え手法として「類似の項を一方の辺に集める」というやり方がある。その進め方は何通りもある。

P(x) = Q(x)

ここで、PQ多項式である。これに通常の規則を何度か適用すると次のような形の等式が得られる。

R(x) = 0.

これは一種の標準形であるが、書き換えの経路が違うと R の内容が異なることもある。R正規形であると言った場合、R(x)は x の次数の大きい項から順に次数が小さくなるように項が並んでいる。

論理学

論理学では、ある論理式が論理積標準形(CNF)であるかどうかを決定する手続きが項書き換え系として使われる。その系の規則は以下の通りである:

\neg\neg A \to A二重否定の消去
\neg(A \land B) \to \neg A \lor \neg Bド・モルガンの法則
\neg(A \lor B)  \to \neg A \land\neg B
 (A \land B) \lor C \to (A \lor C) \land (B \lor C)分配法則
 A \lor (B \land C) \to (A \lor B) \land (A \lor C)

ここで、矢印(\to)は規則の左辺が右辺に書き換え可能であることを示す(つまり「~ならば~」という条件文ではない)。

抽象項書き換え系

抽象的な項書き換え系もある。この場合、項の集合と置換規則を用意しなければならない。

項の集合 T = {a, b, c} と、置換規則 abbaacbc があるとする。これをよくみると ab も最終的に c に書き換えられることがわかる。このような特性が重要である。この場合、c はその系において最も基本的な項と考えられ、c を他の何かに書き換えることができない。

項書き換え系の特性

以上、例示した項書き換え系をみてみると、項を最も単純な項へと書き換えることができ、最終的に得られる項はその項書き換え系内では書き換えることができない。それ以上書き換えられない項の並び(式)を標準形と呼ぶ。標準形の存在可能性とユニーク性の観点で項書き換え系を分類することもできる。標準形のない項書き換え系もある。例えば、2つの項 ab があって、abba という規則がある場合である。

どういう置換規則を適用しても最終的に同じ標準形になる項書き換え系の性質を「合流性」と呼ぶ。これは、標準形のユニーク性と結びついた特性である。

関連項目

参考文献

  • Nachum Dershowitz and Jean-Pierre Jouannaud. Rewrite Systems (1990). Chapter 6 of Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics (B), pp.243–320.
  • Term Rewriting Systems, Terese, Cambridge Tracts in Theoretical Computer Science, 2003
  • Term Rewriting and All That, Franz Baader and Tobias Nipkow, Cambridge University Press, 1998

This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.


Giant Panda

Mercedes Car
James Bond Guide
This site monitored by SitePinger.net