巨大数探索スレッド7
■ このスレッドは過去ログ倉庫に格納されています
0085もやしっ子
2007/01/05(金) 01:41:45リストがなんなのかを踏まえたということで、f関数のルールいきましょう。
原文で「リストの列」と呼ばれる(*,…,*),…,(*,…,*)を短縮して[L]と表記してみます。
ちなみにこいつは1重リストですね。(n)も同じく1重リストですが、ちょいと区別しときます。
では2重リストのf関数のルールを。
f([L],(1))=f([L])
f([L],(1,b))=f([L])
f([L],(a,b))=f([L],(f([L],(a-1,b)),b-1))
f([L],(a,…,x,y,1))=f([L],(a,…,x,y))
f([L],(a,…,x,1,z))=f([L],(a,…,x))
f([L],(a,…,x,y,z))=f([L],(a,…,x,f([L],(a,…,x,y-1,z)),z-1))
f([L],(1),(n))=f([L])
f([L],(a),(n))=f([L],(a))
f([L],(1,b),(n))=f([L])
f([L],(a,b),(n))=f([L],(a,…,a),(n-1)) ただしaはb個
f([L],(a,…,x,y,1),(n))=f([L],(a,…,x,y),(n))
f([L],(a,…,x,1,z),(n))=f([L],(a,…,x),(n))
f([L],(a,…,x,y,z),(n))=f([L],(a,…,x,f([L],(a,…,x,y-1,z),(n)),z-1),(n))
最後の行、原文はf([L],(a,…,x,f([L],(a,…,x,y-1,z),n),z-1)とありましたが、
nに括弧がないのは誤植でしょうか。
括弧の展開は、例によって一番ケツから定義に従って開いていけばよいです。
こうしてみると、チェーンのお約束にリストがぶりぶりくっついた物体のように
見えないこともないかな、と。
■ このスレッドは過去ログ倉庫に格納されています