228
7
章 至るところにある万能性
7.5
タグシステム
タグシステム(tag system)とは、単純化したチューリングマシンのように動く計算モデルです。タ
グシステムでは、テープ上でヘッドをあちこち動かす代わりに、文字列の末尾への新しい文字の追加
と、文字列の先頭からの文字の削除とを繰り返すことによって、文字列を操作します。タグシステムの
文字列は、ある意味でチューリングマシンのテープと似ていますが、文字列の両端しか操作できず、
終端に向かって一方向にしか動けないという制約があります。
タグシステムの記述は2 つの部分から構成されます。1つは規則の集合で、各規則は特定の文字が先
頭に現れたときに追記すべき文字を規定します。たとえば「文字
a
が文字列の先頭にあるとき、文字
bcd
を追記する」という形になります。もう1つは削除数(deletion number)と呼ばれる数で、規則に
したがった後、文字列の先頭から何文字削除するかを規定します。
タグシステムの一例を、以下に示します。
●
文字列が
a
で始まるとき、文字
bc
を追記する。
●
文字列が
b
で始まるとき、文字
caad
を追記する。
●
文字列が
c
で始まるとき、文字
ccd
を追記する。
●
以上の規則のいずれかにしたがった後、文字列の先頭から3文字削除する。すなわち、削除数は3。
タグシステム計算は、文字列の先頭にある文字に適用できる規則がなくなるまで、もしくは文字列の
長さが削除数よりも小さくなるまで、規則にしたがいながら文字の削除を繰り返すことで実行されま ...