表現系工学特論 項書換え系(3) 再帰的経路順序と停止性 homeomorphic embedding 1.同相的埋込み (1/4) は 項 f (s(a), g(b,c)) に同相的に埋め込まれる 項 f (a, c) emb f a c f s a g b c 1.同相的埋込み (2/4) 同相的埋込み つぎの3つのいずれかの条件を満たすときに, 項 s は項 t に同相的に埋め込まれるといい, s emb t と書く. (1) s t (2) t f (t1 , 1つの引数への埋込み , tn ) かつ s emb ti (for some i ) 各引数毎の埋込み (3) s f ( s1, , sn ), t f (t1, , tn ) でかつ si emb ti (for all i ) 1.同相的埋込み (3/4) emb は,項の集合 T ( F ,V ) 上の半順序となる. 半順序 推移性 (s emb t t emb u s emb u) 反射性 (t emb t ) 反対称性 (s emb t t emb s s t ) 【例1】 f (a, c) emb f (a, g (b, c)) (∵ a emb a , c emb g (b, c) より) 1.同相的埋込み (4/4) 定理1(Kruskal の木の定理) F と V は有限集合であるとする. T ( F ,V ) に対して, このとき,任意の項の無限列 t0 , t1 , ti emb t j となる i, j (i j ) が必ず存在する. そういう i < j が存在しない そういう 無限列はない simplification order 2.単純化順序 (1/4) 単純化順序 部分項性を満たす項の集合 T ( F ,V ) 上の書換え順序 部分項性 任意の f F , x V について, f ( , x, ) 書換え順序 T ( F , V ) 上の厳格半順序 推移性: s t t 非反射性: (t x で,単調性と安定性を満たすもののこと. us u 単調性: s t) t f ( , s, ) 安定性: s t (s) (t ) f ( , t, ) 2.単純化順序 (2/4) 単純化順序の性質 性質1:任意の f , t について, f ( , t , ) t. (∵安定性より) 性質2:任意の項 s と s の任意の真部分項 t について, s t. (∵推移性より) 【例2】 f (a, g (b, c)) 性質3: s emb t ならば s g (b, c) b より, f (a, g (b, c)) b . t .( s t はt s または s t のこと) (∵ t のサイズに関する帰納法より) 【例3】例1より f (a, c) (確認: c f (a, g (b, c)) g (b, c) および の単調性より) 2.単純化順序 (3/4) 定理2(単純化順序は簡約順序) F が有限集合ならば,任意の単純化順序 は簡約順序である. 簡約順序 整礎な(すなわち,無限下降列 t 0 t1 の存在しない)書換え順序. 項書換え系 R が停止性をもつ必要十分条件は,すべての書換え規則 l r R について l r となる簡約順序 が存在することである. 2.単純化順序 (4/4) 定理2(単純化順序は簡約順序) F が有限集合ならば,任意の単純化順序 は簡約順序である. (証明)単純化順序は書換え順序なので,残っている条件「整礎であること」を 背理法で証明する. もし が整礎でなければ,項の無限下降列 t 0 ある i , j について ti t1 が存在し,定理1より, emb t j (i j ) . このとき性質3より, t i t j .これは, ti t j であることと矛盾する. recursive path order 3.再帰的経路順序 RPO 優先順位 関数記号の有限集合 F の上で定義された厳格半順序 再帰的経路順序 (RPO) これを項の集合 T ( F ,V ) の上で定義された半順序 rpo に拡張 本講義では,その特殊ケースのみ扱う. 辞書式経路順序 (LPO) lexicographic path order 4.辞書式経路順序 LPO(1/6) 優先順位 関数記号の有限集合 F の上で定義された厳格半順序 辞書式経路順序 lpo 項 s, t について以下のいずれかの条件が成り立つとき, s lpo t と書く.ただし,(2)~(4)では, s f ( s1 , , sm ), t g (t1 , , tn ) . 3.辞書式経路順序 LPO (2/6) 辞書式経路順序 (続き) s f (s1 , , sm ) lpo , tn ) t g (t1 , (1) t は s の中に出現している変数である. (2) si (3) f lpo t (for some i ) g かつ s lpo t j (for all j ) (4) f g かつ,ある k が存在して si ti ( 1 i k ), sk lpo tk , s lpo t j ( k j n ) 3.辞書式経路順序 LPO (3/6) 定理3(RPO は単純化順序) 再帰的経路順序は単純化順序である. 系4(RPO による停止性証明) ある優先順位 から誘導された再帰的経路順序 rpo のもとで, 項書換え系 R に含まれるすべての書換え規則 l r について l rpo r ならば, R は停止性を持つ. 3.辞書式経路順序 LPO (4/6) 【例4】 f ( x, e) x i (e) e R i ( f ( x, y )) f (i ( y ), i ( x)) f ( f ( x, y ), z ) f ( x, f ( y, z )) 優先順位 i f e 3.辞書式経路順序 LPO (5/6) 優先順位 i f 1. f ( x, e) lpo 2. i (e) e lpo 3. i( f ( x, y)) e x by (1). by (2). f (i( y), i( x)) by (3) because i f and i( f ( x, y)) lpo and i( f ( x, y)) lpo lpo i( y) by (4) i( x) by (4). LPOの定義 3.辞書式経路順序 LPO (6/6) 優先順位 i f e 4. f ( f ( x, y), z ) lpo f ( x, f ( y, z )) by (4) because f ( x, y) lpo x by (1) and f ( f ( x, y), z ) lpo because f ( x, y ) f ( y, z ) by (4) lpo y by (1) and f ( f ( x, y), z ) lpo z by (1). LPOの定義 演習問題 LPO を用いて,つぎの項書換え系の停止性を証明せよ. not (or ( x, y )) and (not ( x), not ( y )) R or ( x, and ( y, z )) and (or ( x, y ), or ( x, z )) and (and ( x, y ), z ) and ( x, and ( y, z ))
© Copyright 2024 ExpyDoc