メタ項書き換え計算における
左辺正規性を持つ
メタ項の停止性について
名古屋大学大学院 情報科学研究科
蛸島 洋明 酒井 正彦 坂部 俊樹
1
項書き換え系(TRS)
関数型言語の計算モデル
左辺項と右辺項からなる書き換え規則の有限集合
(例)
f(x) → x
a → f(b)
出力項
入力項
a
f(b)
b
2
メタ項とその書き換え
[a [b c]d ]
[b c]
a
項
規則
メタ項の書き換えの特徴
•規則は上の規則で書き換えることができる
3
メタ項とその書き換え
[a [b c]d ]
[b c]
a
規則中に規則を
含むことが可能
メタ項の書き換えの特徴
•規則は上の規則で書き換えることができる
4
メタ項とその書き換え
[a [b c]d ]
[b c]
a
[a [b c]d ]
[b c]
[b c]
d
メタ項の書き換えの特徴
•規則は上の規則で書き換えることができる
5
メタ項とその書き換え
[a [b c]d ]
[b c]
a
[a [b c]d ]
[b c]
[b c]
d
[a [b c]d ]
[b c]
[c c ]
d
メタ項の書き換えの特徴
•規則は上の規則で書き換えることができる
6
メタ項書き換え計算(MRC)
TRSの記述・実行・検証を目的として提案さ
れた計算モデル
TRSの等価性証明の自動化などに応用可能
MRCの停止性が判定できると
・メタ項の書き換えの結果が確実に得られる
・他の性質を調べるときに容易になる
7
目的
メタ項の停止性判定法を明らかにする
8
研究内容
左辺正規性の定義
単純メタ項からTRSへの変換
単純メタ項の停止性の判定定理
左辺正規性に関する考察
9
単純メタ項[洪 ‘99]
規則の両辺に規則を含まないメタ項
単純ではないメタ項
[ x. f ( x) [ x.g ( x) h( x)] f (a )]
g (b)
右辺に規則が含まれている
単純メタ項
h( a )
[ x.h( x) f ( x)]
[ x. f ( x) g ( x)]
10
左辺正規性
規則の左辺が書き換え不可能
左辺正規性を持たないメタ項
[ x. f ( x) g ( x)][ x. f ( g ( x)) h( x)] g (a)
f ( g ( x)) が [ x. f ( x) g ( x)]によって書き換えられる
左辺正規性を持つメタ項
[ x. f ( x) g ( x)][ x.h( x) g ( x)]g (a)
11
単純メタ項の停止性判定法
1.単純メタ項
TRS
M
(M )
変換
2. (M ) の停止性を判定する
・TRSの停止性判定法を利用
(M ) に停止性がある
M に停止性がある
12
単純メタ項からTRSへの変換
M 0
・ M a Namesのとき
・ M f1 / ・・・f m / x1....xn .L RM' のとき
M x1...xn .L R M'
・ M M 0 M1,・・・,M k のとき
M M 0 M1 ・・・ M k
メタ項中の規則を取り出してTRSを生成
(例
) M [ x. f ( x) g ( x)]
[ x.g ( x ) h( x )]
f (a)
( M ) {x. f ( x) g ( x),
x.g ( x) h( x)}
13
定理
定理
単純メタ項Mが左辺正規であるとする。
このとき、TRS M が停止性を持つならば、
Mは停止する。
14
定理を証明するための補題
補題1 左辺正規性を持つ単純メタ項を
書き換えても左辺正規性は保たれる
補題2 M:左辺正規性を持つ単純メタ項
M → Nのとき L R N M
L * R
について
M
15
定理の証明
定理
単純メタ項Mが左辺正規であるとする。このとき、TRS
が停止性を持つならば、Mは停止する。
M
証明方法 Mの書き換えが停止しないならば、TRS
M
も停止しないことを示す。
t0 t1 ・・・ ti ti 1 ・・・
t0 t1 ti ti 1
任意の項a,bと任意のiについて
b
a b ならば a
ti 1
ti
16
単純メタ項の停止性判定例
M:左辺正規性を持つ単純メタ項
M [ x.g ( x) h( x)][ x. f ( x) g ( x)] f (a)について
M x.g x h x , x. f x g x
再帰経路順序[Dershowitz ‘82]を用いると M は停止す
る定理よりMは停止性を持つ
[ x.g ( x) h( x)][ x. f ( x) g ( x)] f (a)
↓
[ x.g ( x) h( x)][ x. f ( x) h( x)] f (a)
↓
[ x.g ( x) h( x)][ x. f ( x) h( x)]h(a)
17
予想
左辺正規性を保つ単純メタ項の停止性が判定可能
左辺正規性を保つメタ項についても
停止性を判定できると予想
考察
•メタ項が左辺正規性を保ち続ける条件とは?
18
左辺正規性を保つメタ項の調査
(1/2)
規則中に規則を持つメタ項
[a [b c]d ]
[b c]
a
[a [b c]d ]
[b c]
[b c]
d [b c] によって
書き換えられる
左辺正規性を保つことができない
19
左辺正規性を保つメタ項の調査
(1/2)
規則中に規則を持つメタ項
[a [b c]d ]
[b c]
a
このbが書き換え
られないようにす
ればよい
[a [b c]d ]
[b c]
[b c]
d
左辺正規性を保つことができない
20
左辺正規性を保つメタ項の調査
(2/2)
規則の中の規則の左辺を隠蔽したメタ項
[ x. f ( x) [b / b c]x]
f ([b c]b)
規則中のbは他の規則に
よって書き換えられない
全ての規則の左辺を隠蔽したメタ項
[ a / a b]
[a / a [b / b c]c]
b
21
左辺正規性を保つメタ項の調査
(2/2)
規則の中の規則の左辺を隠蔽したメタ項
[ x. f ( x) [b / b c]x]
[ x. f ( x) [b / b c]x]
f ([b c]b)
[b / b c] [b / b c] によって
書き換えられる
[b c]b
左辺正規性を保つことができない
全ての規則の左辺を隠蔽したメタ項
[ a / a b]
左辺正規性が
[a / a [b / b c]c]
保たれることは自明
b
22
まとめと今後の課題
まとめ
左辺正規性を持つ単純メタ項の停止性の判
定法を与えた
メタ項の左辺正規性について考察した
今後の課題
メタ項が左辺正規性を保つことができる非自
明な条件の発見
23
© Copyright 2026 ExpyDoc