トップページ⇒math
1001コメント580KB

巨大数探索スレッド7

■ このスレッドは過去ログ倉庫に格納されています
0001132人目の素数さん2006/11/19(日) 23:44:01
巨大数研究室
http://www.geocities.co.jp/Technopolis/9946/

前スレ、過去スレ、避難所はこのページからどうぞ。

「前の数+1」
「1/x x→0」
「∞」
「9を延々と書き続けるプログラム」
「本日からこのスレでは、いっさいの数学的ではない話を禁止する。
私以外で検証する能力を持っている人間はいないようなので、
数学的に明確に証明できた場合以外は反論しないように。
特に今日のような低俗な煽りには徹底して放置で対応すること。」

という類の投稿は放置推奨。
0348たろう2007/09/08(土) 07:53:24
集合TはC0で生成する順序数と対応しています。

"0" => 0
"(0)" => 1
"((0))" => 2
"(((0)))" => 3
"((0)0)" => C0(1,0) => ω
"(((0))0)" => C0(2,0) => ω^2
"((0)00)" => C0(C0(0),0,0) => ε_0
"((0)000)" => C0(C0(0),0,0,0,0) => Γ_0

Seq(s, i) は、順序数が極限の場合はその収束列を返し、
順序数がa+1の形の場合はaを返します。

H[a] はaが後続順序数と極限順序数の時の定義をくっつけた
ハーディー関数になります。
0349132人目の素数さん2007/09/08(土) 07:59:56
>>341 間違ってました。訂正。
H[((((0))0)0)] = H[ω^ω^2] ≒ F[ω^2](n)
H[((((0)0)0)0)] = H[ω^ω^ω] ≒ F[ω^ω](n)
0350たろう2007/09/08(土) 08:06:53
>>348
× "((0)000)" => C0(C0(0),0,0,0,0) => Γ_0
○ "((0)000)" => C0(C0(0),0,0,0) => Γ_0

ミスが多くてすいません。

Seq の定義は、定義式の数を減らすため、>>347 の定義と微妙に変えてあります。
0351ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/09(日) 01:17:49
>>350
> Seq の定義は、定義式の数を減らすため、>>347 の定義と微妙に変えてあります。

C0(X, B, □, a) = lim { 初項 a / 2項目以降 C0(X, B_n, 1個前の項, □) }

といった感じですか?

どうしてこれが順序数の収束列になるのかがまだよく分かりませんが、
もう少しよく考えてみます。
0352132人目の素数さん2007/09/09(日) 22:45:32
>>336
F_ω^ω(x)はx重帰納的関数に相当するとたいていのHardy functionに
関する論文には書いてあるようです。x重帰納的関数は詳しくは知りませんが
たしか前スレにそれらしいものが載ってたと思います。

このようなこともあってF_ε_0(x)に相当する関数を順序数なしで定義するのは
不可能だと思っていたのですがふぃっしゅ数ver5がそれに到達している
というのは本当でしょうか?
Snakeやver5はまだ理解していないので理解できたらそれらとHardyの比較も
やりたいと思っています。
0353ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/10(月) 01:39:12
>>352
ふぃっしゅ数ver5がF[ε_0](n)に達しているかどうかは、
よく分かりません。>>292では、達しているとされていますが、
その計算内容が十分にまだ分かっていません。

「F[ω^ω](x)はx重帰納的関数に相当する」ということから
「F[ε_0](x)に相当する関数を順序数なしで定義するのは不可能」
という帰結になるのはなぜでしょうか?「x重帰納的関数よりも
大きな関数は順序数なしでは定義できない」というようなことでも
あるのでしょうか?

「定義できない」ということが、もしも「TMで構成できない」と
いうことになればF[ε_0](x)がBB級の大きさになる可能性もありますが、
そんなことはないですよね。Hardy関数が計算可能である、という
ことに関しては特に問題ないようですし。

逆に、F[ε_0](x)等のHardy関数をTMで構成できるのであれば、
それはつまり帰納的に定義できるという意味だと感じますが、
甘いでしょうか。

Provably recursive という言葉も出てきましたが、そのあたりの
言葉との関係でしょうか…。
0354132人目の素数さん2007/09/10(月) 17:28:44
ふぃっしゅ氏キテター
>>352
よく考えたら順序数と対応付けられる集合とかリストとかを
しらみつぶしに禁止するつもりですか?
Peano Arithmeticの中では任意のm(x)を構成することが
不可能ってことになるんじゃないでしょうか。
0355ルート412007/09/10(月) 18:59:48
新参者です。最近このスレを知った物で。
僕が前から考えていた巨大数の表記方法を失礼ながら書かせてもらいます。
A〜・Bという表記をするんですが、(〜・で一つの記号です)定義として
A〜・1=A
A〜・2=A^A
A〜・3=A↑↑A
A〜・4=A→→A
としています。つまり、〜・の後の数字が一つ増えるごとに→→と同じこと
前の記号に行うという事です。
次にA〜・〜・B=A〜・(A〜・B)と定義します。
次にabcdの自然数において
n=a〜・b>(a^b)〜・(c^d)>b>d>c>a
が成り立つ時のnの最小数を◎と表示します。
〜・だとふた文字に見えるので♪を代用します。
◎♪♪♪♪♪♪♪♪◎という表記は10文字以内では大きい表示になるんでしょうか?
0356132人目の素数さん2007/09/10(月) 20:08:54
定義を含め10文字にしなきゃいかんがな。
0357ルート412007/09/10(月) 20:19:23
>>355一番大切な事書くの忘れてました。
A〜・Bの表記のBは何種類目の記号が使われたかを表しています。
B=100なら100種類目の記号という意味です。巨大数を表す場合、
なんらかの記号を使って標記すので、最終的にはその記号の数を数える
のが最も大きな数になるという考えから〜・を考案したのです。
ただこのままだと、ほとんど反則なので>>355では一番解りやすい
→→の法則で次の記号を定義しました。(もともとA〜・Bは絶対
に表記出来ない数がある事の証明で作ったので、B=100なら100種類
の記号を必ず使います)  説明下手ですいません。
あと途中の式ですが、これは
abcdの自然数において
n=a→→b>(a^b)→→(c^d)>b>d>c>a
が成り立つ時のnは少なくとも3→→1025より大きい数のとき
であるの応用で作りました(nの最小値がいくらは、僕にわ
解らないです。誰か計算できるひといませんかね)
0358ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/10(月) 20:48:34
ちなみに、>>338 のプログラムでは、F[ε_0](n)を超える
F[φ_ω(0)](n)やF[ψ(Ω^(Ω+ω))](n)がいとも簡単にコーディング
されていますが、このプログラムを理解できる人はいますか?

おそらく、基本的には>>347のアイデアを使っているのだと
思います。私としては、順序数の収束列をこのように多重帰納
関数の様な形で定義できる、ということが驚きで、いまだ理解に
至っていないのですが…。

http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm

こちらのページを見ても、C(X, B, □, a)を導く一般式、のような
ものは書かれていないように見えますし。やはり、なぜ>>347の
式で順序数の収束列を定義できるか、という点については解説
していただかないと、私だけではなく皆さん理解できないのでは
ないでしょうか?
0359ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/10(月) 20:59:32
ふぃっしゅ数の大きさについては、
http://www.geocities.co.jp/Technopolis/9946/log/ln051.html
ここの58で、m(3)がF(x,y,z)=F(x-1,F(x,y-1,z),F(x,y-1,z)) で
あらわされました。この関数が真の三重帰納か、それとも実は
二重帰納か、という議論があったとは思いますが、いずれにしても、
m(n)は良くて多重帰納、もしかすると二重帰納になる気がします。
F[ε_0](n)になるというのは、落ち着いて考えると過大評価しすぎ
なような…。

また、m(3)が三重帰納であれば、s(n)はm(3)で生成される程度の
関数ですから、それよりも小さく、二重帰納程度です。
0360ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/10(月) 21:00:03
そうすると、チェーンはs(2)程度、チェーン回転、バードはs(3)程度
であることが分かっているので、いずれも二重帰納で、
m(n)が多重帰納であるとすれば、

Knuthの上矢印 3(↑^n)3 ≒ F[ω](n)
Ak(n, 3) ≒ F[ω](n)
ふぃっしゅ数バージョン1のSS変換:F[ω^2](n)
n個のnからなるConwayのチェーン ≒ F[ω^2](n)
ふぃっしゅ数バージョン2のSS変換:F[ω^2](n)
チェーンの回転 ↑n (3,3,3) ≒ F[ω^2](n)
バード数の定義の X_n(a) の入れ子操作n回 ≒ F[ω^2](n)
ふぃっしゅ数バージョン3のs(n)変換:F[ω^2](n)
ふぃっしゅ数バージョン5のm(3) ≒ F[ω^3](n)
真の三重帰納関数 ≒ F[ω^3](n)
例: A(x+1,y+1,z+1) = A(x,A(x+1,y,A(x+1,y+1,z)),A(x+1,y+1,z)))
真の四重帰納関数 ≒ F[ω^4](n)
例: A(w+1,x+1,y+1,z+1)=
 A(w,A(w+1,x,A(w+1,x+1,y,A(w+1,x+1,y+1,z)),A(w+1,x+1,y+1,z)),A(w+1,x+1,y,A(w+1,x+1,y+1,z)),A(w+1,x+1,y+1,z))
真のn重帰納関数 ≒ F[ω^ω](n)
ふぃっしゅ数バージョン5のf5(n) ≒ F[ω^ω](n)

こんな感じになるのではないでしょうか。
0361ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/10(月) 21:01:03
もし、m(n)が二重帰納だよ、ということになれば、>>360で
真の○重帰納関数以外は、すべてF[ω^2](n)でした、という話に
なると思います。

>>311が正しいのか、それとも本当は>>360のような感じなのか。
そして、それはHardy関数を正確に計算することではっきりする
ものなのか。

Hardy で関数の大きさが整理できるといっても、正確に計算
しようとするとけっこう大変ですね。
0362ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/10(月) 21:50:11
さてさて、順序数の議論は高度でなかなかついていけずにいますが、
議論の雰囲気を読むと、Hardy + 順序数による巨大数の定義は、
canonical sequence の取り方が1つに保証されないε_0以上の
世界は、関数が1つに定まるかどうか不明という点で、きっちりと
定義された関数、あるいは数の仲間入りをさせていいかどうかと
いう疑問がまだ残っています。

そんなこんなで色々と昔を思い出していると、やはり多重帰納は
強力なので、なんとかして多重帰納を本質的に強める方法はないか、
と考えてしまうわけですが…。

http://www.geocities.co.jp/Technopolis/9946/log/ln051.html
ここの184によって、n重帰納関数 A_n(a_n,...,a_1) を定義する。
ただし、A_1(x)=f(x)、g(x)=A_x(a_x,...,a_1)とすることで、
関数 f(x) から 関数 g(x) への写像が定義される。
この写像は、f(x)=x+1という関数をF[ω^ω]クラスに持って行く
だけの力を持った写像である。

この時に、生成された多重帰納関数に対してこの写像の適用を
繰り返すとどうなるか。
0363ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/10(月) 21:51:37
>>362
(1) F[ω^ω] のまま変わらない
(2) F[ω^(ω+1)], F[ω^(ω+2)], ... F[ω^(ω*2)]
(3) F[ω^(ω*2)], F[ω^(ω*3)], ... F[ω^(ω^2)]
(4) F[ω^(ω^2)], F[ω^(ω^3)], ... F[ω^ω^ω]
(5) F[ω^ω], F[ω^ω^ω)], ... F[ε_0]

良くて(3)あたりだと思うのですが…どうでしょう。

この写像をM2変換としたふぃっしゅ数V5を考えたところで、
F[ε_0] までは到底到達しない…のでしょうね。本質的に強める
ためには、更なる工夫が必要かな。
0364ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/10(月) 23:29:14
>>362
> ただし、A_1(x)=f(x)、g(x)=A_x(a_x,...,a_1)とすることで、

ただし、A_1(x)=f(x)、g(x)=A_x(x,x,...,x)とすることで、

でした。
0365132人目の素数さん2007/09/11(火) 06:44:31
>>353
すいません、書き方がまずかったです。
Hardy Functionはもちろん計算可能ですのでもちろんF[ε_0](x)はBB以下になります。
単にPAではProvably recursiveでない最小のものということですね。
過去スレに(一般的な?)多重帰納関数の例がでてきたときに順序数なしでは
これが最強だと思っていたのでF[ε_0](x)レベルのものは無理なんじゃないかと
勝手に思っていたので、ふぃっしゅ関数ver5がこれに至っているということに懐疑的に
なっていました。
しかし、ふぃっしゅ関数ver5がF[ω^ω](x)(=H[ω^ω^ω](x))に至っているというだけ
でも個人的にはすごいことだと思います。

>>362
>ε_0以上の世界は、関数が1つに定まるかどうか不明
http://www.geocities.co.jp/Technopolis/9946/log/thread6.html
ここの>>655に定義の例が書かれています。
03663662007/09/11(火) 19:36:39
√(36)=6
0367ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/11(火) 20:53:22
http://www.geocities.co.jp/Technopolis/9946/log/ln051.html
このスレッドを読み直しているところですが、ふぃっしゅ数バージョン5
(F5)は多重帰納関数以上、ということでどうやら良さそうです。

まず、58の式はm(3)1回で生成されるs(1)に相当するm(2)がアッカーマン
であることを示している式です。それは当たり前のことで、
>>359のようにm(n)が二重帰納ということにはならないわけですが、
そのあたりで本人が錯誤をしていました。

m(n)の威力はm(3)からではなくm(4)からはじまりますが、
m(4)の計算をした63を見ただけでは、まだ2重帰納か多重帰納かは
よく分からない。
0368ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/11(火) 20:54:41
そこでまず、3重帰納の定義は、76,155,182をまとめて

3重帰納関数
f(x+1,y+1,z+1) = f(x,f(x+1,y,f(x+1,y+1,z)),f(x+1,y+1,z)))
が3重帰納である所以は、
f(x+1,y+1,z+1) が 3-term でそのなかに現われる f は
f(x,*,*), f(x+1,y,*), f(x+1,y+1,z) という形であり、
ただし、f(0,y,z) はこの定義で 2-term の形で定義される。

ということです。ここで、f(x,*,*), f(x+1,y,*), f(x+1,y+1,z) とは
(1) f(x,*,*) の * に f(x+1,y,*) を入れる
 → f(x,f(x+1,y,*),f(x+1,y,*))
(2) この式の * に f(x+1,y+1,z) を入れる
 → f(x,f(x+1,y,f(x+1,y+1,z)),f(x+1,y+1,z)))

という意味です。
0369ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/11(火) 20:59:50
これがなぜ、どの2重帰納よりも大きい3重帰納となるか。
それは、157に書かれている通り、
f(x,*,*), f(x+1,y,*), f(x+1,y+1,z) からxを落とすと
f(y,*), f(y+1,z) 、すなわち f(y, f(y+1,z)) の2重帰納が出てくる。
つまり、f(x,y,z) は、xを1つ増加させる毎に、y,zに関する
2重帰納をしている。したがって、2重帰納を有限回(n回)施して
得られるどんな2重帰納関数よりも、x>nの時点で大きくなるが
ために、3重帰納関数はいかなる2重帰納関数よりも大きくなります。

これは、アッカーマン関数がいかなる原始帰納関数よりも大きい
ことの説明と同じで、アッカーマン関数が原始帰納関数を枚挙
するがごとく、3重帰納関数が2重帰納関数を「枚挙している」
ということです。

Hardy 関数では、2重帰納の操作 ω^2 を枚挙することで、
ω^2, ω^2+ω^2, ω^2+ω^2+ω^2, ..., ω^3
の収束列が得られる、ということに相当するのでしょう。
0370ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/11(火) 21:03:54
さて、ここで多重帰納の本質を理解する必要があります。
そこで、あらためて自分が書いた 146-147 を読み直してみると、
どうやらそんなに間違ったことを書いてないです。

s(2)が2重帰納である、というところまでは良しとして
(F5のs(n)はF3のs(n-1)に相当する)、この説明の中でキーと
なるのは、「s(3)が2重帰納の操作を荒い意味で枚挙する」
という表現です。

s(3)の定義は
s(3)f(x)=(s(2)^x)f(x)
となりますが、
s2(n,x)=(s(2)^n)f(x)
と書いた時に、s(2)は2重帰納の操作をあらわしているので、
2重帰帰納をm回施して得られるどんな2重帰納関数よりも、
n>mの時点で大きくなります。このように、s2(x,x)は
2重帰納を枚挙する3重帰納となります。
したがって、s(3)は3重帰納の操作となります。

そうすると、s(n)は同様にn重帰納となります。

いやはや、皆様(分かる人には)分かっていたことを、
ようやくもって本人が理解できた、というところでしょうか。
0371ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/11(火) 21:06:02
>>367->>369の考察により、>>360は撤回します。

>>311の前半にふぃっしゅ数Fを加えて

Knuthの上矢印 3(↑^n)3 ≒ F[ω](n)
Ak(n, 3) ≒ F[ω](n)
n個のnからなるConwayのチェーン ≒ F[ω^2](n)
F5のm(2)n回 ≒ F5のs(1)n回 ≒ F[ω^2](n)
チェーンの回転 ↑n (3,3,3) ≒ F[ω^3](n)
F5のs(2)n回 ≒ F3のs(1)n回 ≒ F1,F2のS変換n回 ≒ F[ω^3](n)
バード数の定義の X_n(a) の入れ子操作n回 ≒ F[ω^3+ω+1](n)
F5のs(3)n回 ≒ F3のs(2)n回 ≒ F2のSS変換n回 ≒ F[ω^4](n)
5変数Ak ≒ F[ω^4](n)
多変数Ak Ak(n個のn) ≒ F[ω^ω](n)
F5のs(n) ≒ F3のs(n) ≒ F[ω^ω](n)
F5のm(4) = F5のm(3)n回 ≒ F[ω^ω](n)

ここまでは理解できました。
0372ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/11(火) 21:14:50
>>311の後半は、まだ理解できていません。

ふぃっしゅ数考案者の希望的観測としては、>>292のように

Ak を2重リストに拡張、Ak([n個のn], [n]) ≒ F[ω^ω^ω](n)
F5のm(5) ≒ F[ω^ω^ω](n)
F5のm(6) ≒ F[ω^ω^ω^ω](n)
F5のf5(n) ≒ F[ε_0](n)

となればいいかな、と思いますが、はたしてそうなるかどうか。
考案した本人も、その大きさを評価できずにいます。
0373ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/11(火) 21:33:46
>>365
なるほど。スレッド6の655におけるα<Γ_0 が φ_β(γ) (β,γ<α)の
定義を見ると、このような形できれいに記述できるのであれば、
>>347-350のように順序数の定義を帰納的に記述できて、
http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm
ここのordinal, stronger ordinal といった表現を簡潔に与える
ことができるとしても、不思議はないような気がしてきました。

とはいえ、>>338のプログラムを見ると、本当にこんなに短い
プログラムでF[ψ(Ω^(Ω+ω))](n) を生成できるのかと、驚くばかり
ですが。それが、計算可能の意味するところといえばそうですね。
0374ルート412007/09/12(水) 20:26:43
稚拙な質問で申し訳ないですが・・
BB関数の定義が計算出来るどんな関数より大きな関数という事
らしんですが。無限大に増加する関数以外は全て計算出来る関数
だとしたBB関数は存在しない関数、もしくは大きい事が証明出
来ない関数になると思うんですが。
実際のところBB関数はそこらへんの事はどうクリアーしてるんですか?
0375ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/12(水) 21:33:18
>>374
> 無限大に増加する関数以外は全て計算出来る関数
無限大に増加する関数y=xは計算できます。
「ある値を代入したときに無限大になる」という
意味でしょうか?だとしたら、BB関数の値は有限
ですが有限時間内に計算できません。

> BB関数は存在しない関数
BB関数は存在します。しかし、その値を有限時間内に
計算ができません。

> 大きい事が証明出来ない関数
「あらゆる計算可能な関数よりも大きい」という
「大きい事」に関しては、証明ができます。
「どのくらい大きいか」を具体的に計算は出来ません。

さて、

自分の中で、曖昧だった多重帰納の概念がようやくはっきり
したので、これまでのまとめの文章を作ろうと考えていますが、
しっかり作るとかなりの大作になりそう…。

その次の段階ですが、ハーディーを使って、バージョン5よりも
大きな関数がどんどん構成されるようになってきたので、
いよいよバージョン6を考えてみようかという気にもなって
きました。ふぃっしゅ数の特徴である高階集合の定義で、
ハーディーでいうところのどのあたりまで到達できるだ
ろうか、というのが目標です。
0376ルート412007/09/12(水) 22:21:43
>>375 解答ありがとうございます。
無限大に増加する関数とは、例えばf(0)=0 F(1)=1 f(2)=∞
という意味で書きました。極端にすればf(0)=0 f(極限に小さい数)=∞
僕的には∞=∞^∞=∞↑↑∞と考え、∞になるものは大小の比較は出来ないと
考えていたもので。
BB関数の定義は有限時間で計算すると理解します(あと、人間の能力で
も入るかもしれませんが)
0377ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/12(水) 23:32:11
BB関数の定義は、有限時間内で計算できない定義です。
ただし、定義によって有限の数が定まる事が保証されています。
人間の能力は無関係です。

ここから先は、BBの定義そのものを理解しないとどうしようも
ないといえばないのですが、たとえばBB(10)を計算したいとします。
定義にしたがって計算すると、BB(10)の値となる候補が次々と
計算されます。その候補の値は、計算時間がたてばたつほど
大きくなります。真の値BB(10)は必ず存在しますので、
その値に到達する時も来るでしょう。ただ、その計算された値が
BB(10)であるという保証が出ません。保証が出ないという事は、
計算が終了しないということです。計算時間が増えるにつれて、
どんどん候補の値が大きくなるけれど、どこで「本当のBB(10)」
に到達したかを知り得ることができないので、有限時間内に
計算が終了しない、つまり計算できない、ということになります。
0378132人目の素数さん2007/09/13(木) 00:33:55
いまさらなんですが、ふぃっしゅ数ver.5の最終的な定義はどれなんでしょうか?
過去スレを見ても何度も変更されているし、途中で話がそれてしまっていて
わからないのですが・・・
0379ルート412007/09/13(木) 18:23:59
>>377
BB関数が存在するという事は今の所理解出来ませんが、僕がBB関数を
理解してないという事は理解しました。(BB関数の公式てあるのかな?)
ちなみに>>376の様になる関数には
Y=N^∞や Y=N^Y(N≠1なら単に成り立たないともいえるが)
が有ります。
あと、ふぃっしゅ数については、僕はまだ理解していませんが、存在して
いる事はわかります。
0380ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/13(木) 19:46:14
>>378
そうですね、まずはふぃっしゅ数ver.5の定義をはっきりさせる
ところからはじめようと思います。おおまかな原案は書きましたが、
きちんとこれが定義だという形にはまだしていなかったので。
ちょうどその頃に、色々な議論があってうやむやになってしまって
いました。

>>379
BB関数は、計算理論の勉強をしないと理解できません。
計算理論の専門書を読んで理解するのが、一番いいのだと思います。
私は、英語のホームページを読んで理解しましたが、日本語の
ホームページで分かりやすく解説してあるところは、はたして
あるかどうか。
0381ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/13(木) 19:59:46
BBを英語で理解するとすれば、たとえばWikipediaですが
http://en.wikipedia.org/wiki/Busy_beaver

ここの2-state S(n,m)の値を見ると、

BB(2) = 6
BB(3) = 21
BB(4) = 107
BB(5) ≥ 47,176,870
BB(6) ≥ 3.0 x 10^1730

となっています。BB(4)までは「=」で、正確な値が分かって
います。BB(5)以降は「≥」となっています。つまり、
BB(5)の値は47,176,870 かもしれないし、それよりも
大きいかもしれない。

我々は、まだBB(5)の正確な値を知り得ていない、という
ことになります。BB(6)の正確な値は、どんなに計算機の
速度が向上しても、どんなに長い年月をかけても
(たとえばふぃっしゅ数年とか)、計算できないでしょう。
0382ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/13(木) 20:09:03
今までの話の流れだとBB(n)はS(n,m)ではなくてΣ(n,m)の
方でしたね。訂正しておきます。

BB(2) = 4
BB(3) = 6
BB(4) = 13
BB(5) ≥ 4098
BB(6) ≥ 1.2 x 10^865
0383ルート412007/09/13(木) 20:28:13
BB関数がなんとなくですが解ってきました。とりあえず計算理論の勉強からします。
丁寧な解答ありがとうございます。
0384たろう2007/09/13(木) 20:35:35
計算可能な関数とは、>>260 のようなプログラムで書ける関数のこと。
ビジービーバー関数とは、プログラムn文字で作り出せる最大の数。(※)
だからプログラムで書けるどんな関数よりも増大度が大きい。

※実際はBBはチューリングマシンという非常に単純なマシンでの定義となる

ただ、
すべての値に対してBB(n)を返すプログラムがかけないというだけであって、
BB(10)やBB(100)を返すプログラムの存在を否定するものではない。
0385たろう2007/09/13(木) 20:49:16
>>351
微妙にちがう。初項は a+1。

----- >>338 のプログラムの解説 ------
>>266 のプログラムを色々変えて小さくしたもの。

117語のものは、C0の変数を3つに限定し、一番左のは整数に限定したもので順序数を作り出している
132語のものは、C0を多変数のまま使っている。
(コメントに F[ψ(Ω^(Ω+ω))](n) と書いてあるのはF[ψ(Ω^ω)](n) の間違い)

プログラムでは F[ψ(Ω^ω)](9) 程度の数を返すが、
プログラム上の数値のいくつかを変えることで 9 を大きく出来る。

○小さくする工夫
φよりも定義が簡単で加算の定義も不要なC0を用いている
ハーディー関数を再帰ではなくループで表現している
F[ψ(Ω^ω)](9) = F[ψ(Ω^9)](9) なので、F[ψ(Ω^9)](9) を計算している
収束列を微妙に変えている
C言語上の色々な工夫でサイズを小さくしている
など
0386たろう2007/09/13(木) 20:52:16
>>363
F[ω^ω*2], F[ω^ω*3], ... F[ω^(ω+1)]
0387たろう2007/09/13(木) 21:04:29
>>372
ふぃっしゅ数V5のm(5)の大きさは力ずくでもわかる。

(m(2) = m2, m(3) = m3, m(4) = m4, ...)
aは自然数

m2 ===> +1   (f ≒ F[a] の時、 m2 f ≒ F[a+1] という意味)
m2 m2 ===> +2  (f ≒ F[a] の時、 m2 f ≒ F[a+2] という意味)
m2^a ===> +a
m3 m2 ===> +ω
m3 m2 m3 m2 ===> +ω*2
m3 m2 m3 m2 m3 m2 ===> +ω*3
(m3 m2)^a ===> ω*a
m3 m3 m2 ===> ω^2
m3 m3 m3 m2 ===> ω^3
m3^a m2 ===> ω^a
m4 m3 m2 ===> ω^ω
m3 m4 m3 m2 ===> ω^ω*ω
m3 m3 m4 m3 m2 ===> ω^ω*ω^2
m3^a m4 m3 m2 ===> ω^ω*ω^a
m4 m3 m4 m3 m2 ===> ω^(ω*2)
(m4 m3)^a m2 ===> ω^(ω*a)
(m4 m3)^a m2 ===> ω^(ω*a)
m4 m4 m3 m2 ===> ω^ω^2
0388132人目の素数さん2007/09/13(木) 21:05:21
(m4 m3)^a m2 ===> ω^(ω*a)
(m4 m3)^a m2 ===> ω^(ω*a)
m4 m4 m3 m2 ===> ω^ω^2
m3 m4 m4 m3 m2 ===> ω^(ω^2+1)
m3^a m4 m4 m3 m2 ===> ω^(ω^2+a)
m4 m3 m4 m4 m3 m2 ===> ω^(ω^2+ω)
m4 m4 m3 m4 m4 m3 m2 ===> ω^(ω^2*2)
(m4 m4 m3)^a m2 ===> ω^(ω^2*a)
m4 m4 m4 m3 m2 ===> ω^ω^3
m4^a m3 m2 ===> ω^ω^a
m5 m4 m3 m2 ===> ω^ω^ω
0389たろう2007/09/13(木) 21:33:42
http://web.mit.edu/dmytro/www/other/OrdinalNotation.htm
ここのたろう的理解です。

●C0
[A General Notation] のCのΩ導入前を多変数化

C0(..., a5, a4, a3, a2, a1, a0) = C(..., Ω^4 * a5 + Ω^3 * a4 + Ω^2 * a3 + Ω * a2 + a1, a0)
C0(..., a4, a3, a2, 0, 0) = φ(..., a4, a3, a2, 0)

>>190 のψ(Ω^ω) 未満の順序数をすべて表現可能。

●C1
[An Ordinal NOtation] の多変数化

C1(1,0,0) を、帰納的でない最小の順序数、
C1(2,0,0) を、C1(1,0,0) と帰納的定義で表現できない最小の順序数、
......
C1(1,0,0,0) を、C1(a2, 0, 0) と帰納的定義で表現できない最小の順序数、
....
というような解釈で良いかと。

C1([C1で生成される順序数], 0) は帰納的な順序数となる。

C1(1,0,0) は 上のΩや >>190 のΩとほぼ同じ意味。
C1(C1(1,0,0),0) = C0(1,0,0)
C1(C1(1,0,0)^2,0) = C0(1,0,0,0)
C1(C1(1,0,0)^3,0) = C0(1,0,0,0,0)

>>202 のψ_a(0) が C1(a,0,0) とほぼ同じ意味。
3変数で >>202 の ψ_0(Ψ) 未満の順序数をすべて表現可能。
0390132人目の素数さん2007/09/13(木) 21:38:44
●C2
[Beyond Second Order Arithmetic] の C の多変数化

C0 => C1 の進化を繰り返したもの。

C2(C2(1,0,0),0) = C1(1,0,0)
C2(C2(1,0,0)^2,0) = C1(1,0,0,0)
C2(C2(1,0,0)^3,0) = C1(1,0,0,0,0)

C2([C2で作り出す順序数], 0) はC1でつくり出せる順序数となり、
C2(C2([C2で作り出す順序数], 0)) で帰納的な順序数となる。
0391たろう2007/09/13(木) 21:51:46
C0 の収束列は >>347 で定義。
多変数veblen + 加算 と同等の表現が可能。

C1 の収束列は、>>202 のような方法で定義できる。
だいたい8個くらいに場合分けした定義となる。
3変数で、veblen + 添字付ψ + 加算 と同等の表現か可能。
プログラムで書けば、>>266よりずいぶん小さくできそう。

C2 の収束列はかなり複雑で途中で挫折。

C3, C4.... と拡張できそうな気がする。
さらには、C_n(c, b, a) ==> C_[順序数](c, b, a) ==> C(d, c, b, a) => 多変数化 => さらに大きなΩでの表現 => ...

でも、順序数の専門家がもっと大きな帰納的順序数を見つけてそう。
0392たろう2007/09/13(木) 21:56:14
>>390
> C2([C2で作り出す順序数], 0) はC1でつくり出せる順序数となり、
ここは間違いで、以下に訂正。

C2([C2で作り出す順序数], 0) はC2(1,0,0) 未満の順序数となり、
0393たろう2007/09/13(木) 22:13:35
>>355
定義がよくわからないけど
◎ = 2♪(3^4+2) かな?
0394ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/14(金) 01:54:20
>>389-392
その定義を見ていると、ナゴヤ数(スレッド6の510-511)も
どこかのクラスに入りそうですね。

まだ、雰囲気だけしかつかめませんが。
0395たろう2007/09/14(金) 19:46:19
>>390
まだまちがってた。

C2([C2で作り出す順序数], 0) はC2(1,0,0) 未満の順序数となり、
C2(C2([C2で作り出す順序数], 0),0) で帰納的な順序数となる。

>>394
>>135 が正しければ大きさは、
多変数veblenの極限 = ψ(Ω^ω) = C0の極限 = C1(C1(1,0,0)^ω, 0) 程度

>>125 のveblenの極限はψ(Ω^Ω) = C1(C1(1,0,0)^C1(1,0,0), 0)
同じように拡張していきn重リストにするとその極限は、ψ(ε_(Ω+1)) となって
Howard ordinal に到達。
0396ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/14(金) 20:18:53
ふぃっしゅ数バージョン5 (F5) の定義

[1] 集合Mn (n=0,1,2,...)を以下のように定める。
M0=自然数の集合
M{n+1}=写像Mn→Mn全体の集合
Mnの元をMn変換と呼ぶ

[2] Mn変換 m(n) (n≧1) を以下のように定める。
f_n∈M(n)に対して、m(n+1)(f_n)=g_nを以下で定める。
 f_{n-1}∈M(n-1)に対して、g_n(f_{n-1})=g_{n-1}を以下で定める。
  f_{n-2}∈M(n-2)に対して、g_{n-1}(f_{n-2})=g_{n-2}を以下で定める。
   ……
   f_0∈M(0)に対して、g_1(f_0)=g_0を以下で定める。
    g_0=(..((f_n^{f_0}f_{n-1})f_{n-2})...f_1)f_0

すなわち
m(1)(f_0)=f_0^f_0
(m(2)f_1)f_0=(f_1^f_0)(f_0)
(..((m(n+1)f_n)f_{n-1})...f_1)f_0:=(..(f_n^{f_0}f_{n-1})...f_1)f_0

[3] ふぃっしゅ関数 F5(x) を以下のように定める。
 F5(x):=((..((m(x)m(x-1))m(x-2))...m(2))m(1))(x)

[4] ふぃっしゅ数 F5:=F5^63(3) とする。
0397ルート412007/09/14(金) 20:25:12
>>393
僕の作った式に解答ありがとうございます。
〜・Nの定義はN×N<N〜N<N↑↑NならNが増える毎に表記方法も上位の物を使用して
行く関数を作れば大きな関数を作れると考えて作りました。
よく考えればN^NからN↑↑Nへ変化するのとN↑↑NからN→→Nに変化するのは
意味が違うため関数としてはなりたったなかったですね。
考えてる途中にN=1なら1 N=2なら22 N=3なら333×333 N=4なら4444^4444
にしないといけないかと思ったくらいですから。
(見た目が面白いので1.22.333となる関数を作ろうとしているんですが上手くいかないですね。)
◎を導く式のほうは、大きくなる関数を作る事を、ある巨大数を入れないと成り立たない式を作る
ことで抜けないか考えて挫折したときの残骸です。>>357の→の方が実際に作っやつですが。
それでもA→→BにおいてBの数が大きいほうがAの数が大きいときより大きな数になる事を
証明できれる最小の数であれば、グラハム数や現在最も大きい素数2^32582657-1の様に
意味のある数として使えるかなと思い使いました。これもよく考えてみれば
N=A→→B>B→→A>B>A
と書いた方が適切でしたね。
さらにN=3→→4>4→→3が成り立つことを正確に計算できても、グラハム数>4→→3
が計算されたらグラハム数より大きい意味のある数にはならないですよね。
3→→4>グラハム数は当たり前ですから。
もし↓や←を使った場合の計算が膨大すぎて、現在まだ正確な計算が出来ていないなら、
正確に計算することに意味が出てくるんでしょうが。
N=A^B>B^A>B>AならNの最小値は32
N=A↑↑B>B↑↑A>B>AならNの最小値は16
なら僕にも計算できるんですけどね。
僕の様な素人の書き込みでも、大きな数を見つけるヒントでも転がってれば良いんですが。
0398ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/14(金) 23:30:10
今となってはとても小さい数であるF1やF2あたりから見直しています。

それで気づいたのですが、今まではふぃっしゅ関数バージョン1 F1(x)
が2重帰納かと思っていましたが、違いました。3重帰納です。
F1(x) ≒ F[ω^3](x) (3重帰納)
なぜかというと、F1(x)は2重帰納のS変換を繰り返す回数が変数のx以上に
なるので、S変換をちゃんと数え上げているんですね。

一方、F2(x)は3重帰納のSS変換を63回繰り返しているので、
F2(x) ≒ F[63*ω^3](x) (3重帰納)
となります。F1(x)もF2(x)も、同じ3重帰納のクラスで、チェーンよりも
強くバードと同じ程度でした。

今まで、F1(x)の強さを過小評価していたようです。
0399たろう2007/09/15(土) 00:23:14
2重帰納 ≒ F[ω](n)
3重帰納 ≒ F[ω^2](n)
じゃないの?

F1(x), F2(x) の定義はどこにありますか?
0400たろう2007/09/15(土) 00:41:46
http://www.geocities.co.jp/Technopolis/9946/log/ln023.html

ここの >>320 で定義されているふぃっしゅ関数が F2(x) だとすると、
F2(x) ≒ F[ω*大きな整数](x) な気がする。
f(x) = x+1 に対してS変換を整数回行う操作を63回繰り返すだけですよね?
0401ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/15(土) 00:58:27
ええと、>>398は大きな勘違いでした。
F1(x)は2重帰納です。

>>399
そうでした。
F1(x) ≒ F[ω*大きな整数](x)
F1(x) ≒ F[ω^2*63](x)
です。

>>400
そちらはF1(x)の定義です。
F2(x)の定義は
http://www.geocities.co.jp/Technopolis/9946/log/ln032.html#R47
ここにありますが、F1(x)のSS変換の定義において、
S変換をx回繰り返すものです。
0402ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/15(土) 00:59:26
訂正

F1(x) ≒ F[ω*大きな整数](x)
F2(x) ≒ F[ω^2*63](x)
0403ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/15(土) 03:05:56
3変数アッカーマン関数
A(x+1,y+1,z+1) = A(x,A(x+1,y,A(x+1,y+1,z)),A(x+1,y+1,z)))
が3重帰納 F[ω^2] であることの証明

A(x+1,y+1,z) からAへの代入(合成)2回で A(x+1,y+1,z+1)ができる
→ zに+1する操作は合成の操作

Z=A(x+1,y+1,z)-a (Z > z+1) とすると、
f=A(x+1,y,Z) からg=A(x+1,y+1,Z)を合成と原始帰納で生成できる。
(1) Zをa増やす → A(x+1,y,A(x+1,y+1,z))
(2) A(x,y,A(x+1,y+1,z))のyに代入 → A(x+1,y+1,z+1)
(3) zをZ-(z+1)増やす (zを増やす操作を数え上げるので原始帰納)
したがって、yに+1するのは原始帰納

Y=A(x+1,y,Z)-bとすると、
f=A(x,Y,Z)からg=A(x+1,Y,Z)を3番目の引数を増やす原始帰納と
2番目の引数を増やす2重帰納で生成できるので、xへの+1は2重帰納

A(x,y,z)はxへの+1を数え上げるので3重帰納
0404132人目の素数さん2007/09/15(土) 04:25:11
大野菜協会、長期間の研究の末「3mの巨大サツマイモ」の栽培に成功。しかし、ちんこに似ていたため非公開に。【画像あり】

日本大野菜協会が2002年に特別チームを発足し、5年の歳月を費やし、3mもの巨大サツマイモの栽培に成功した。
しかし、それが一般に発表される事はなかった。
その理由は栽培された巨大サツマイモがあまりにも男性器に酷似していたためである。
大野菜協会会長は「5年の歳月と沢山の経費をかけて作り出した大作といえるものだし、一般の方々にも見てもらいたい…が、ここまで酷似していてはコレを発表することは出来ない。我々にも恥がある。」
と、肩を落として語った。
長い歳月に渡り研究に研究を重ね、苦労の末栽培された世紀の大サツマイモは性器に似た大サツマイモになるという悲しい結末で幕を閉じた。

http://society6.2ch.net/test/read.cgi/river/1188899832/

0405たろう2007/09/15(土) 07:18:19
>>403
> A(x+1,y+1,z+1) = A(x,A(x+1,y,A(x+1,y+1,z)),A(x+1,y+1,z)))
3変数アッカーマン関数の定義はこれに決まってるの?
それとも、単なる拡張方法の1つ?
このスレでの合意?

単なる拡張方法の1つなら、
>>323 の方が簡単で良いと思うんだけど。

------アッカーマンの多変数への拡張の案------
●定義
 Ak(□, a) = a+1
 Ak(X, b+1, 0, □, a) = Ak(X, b, a, □, a)
 Ak(X, b+1, 0) = Ak(X, b, 1)
 Ak(X, b+1, a+1) = Ak(X, b, Ak(X, b+1, a))

 ただし、
  a, b : 0以上の整数
  □ : 0個以上の0
  X : 0個以上の0以上の整数

●大きさ
 Ak(..., a2, a1, a0, n) ≒ F[...+ ω^2*a2 + ω*a1 + a0](n)
 Ak(1がn個) ≒ F[ω^ω](n)
0406ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/15(土) 16:49:58
>>405
多重帰納の定義については、
http://www.geocities.co.jp/Technopolis/9946/log/ln051.html
ここで色々議論されています。
76,77,155,181-184 あたりです。ここで提案されている
3変数アッカーマンについて検証したのが>>403で、2重帰納を
数え上げていることが分かりました。

>>323の方が簡単なので、これでω^2になっていればその方が
いいと思います。どういうしくみになっているのでしょう…。
0407ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/15(土) 17:30:30
3,4から、xを定数と見てy,zが2変数アッカーマンになっているから、
ack(x+1,y,z) = ack(x+1,0,z(y)) = ack(x,z(y),z(y))
とすると、z(y)が2重帰納関数になる。

なので、2重帰納をx回繰り返す3重帰納になる、ということか。
0408ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/16(日) 00:04:09
>>407
ちょっと書き方が変だったかな。
ack(x+1,y,z) ≒ ack(x+1,0,A(y,z)) ≒ ack(x,A(y,z),A(y,z))
といったところか。

>>405
この場合は
Ak(X, b+1, 0) = Ak(X, b, 1)
Ak(X, b+1, a+1) = Ak(X, b, Ak(X, b+1, a))
この箇所で、a0とnの計算について
Ak(..., a0, n) ≒ F[... + ω*a1 + a0](n)
という関係を作って、
Ak(X, b+1, 0, □, a) = Ak(X, b, a, □, a)
この箇所で、a=ak, b=a{k+1}として、
Ak(X, b+1, a, □, a) ≒ Ak(X, b+1, 0, □, F[ω^k])
= Ak(X, b, F[ω^k], □, F[ω^k])
≒ Ak(X, b-1, F[ω^k*2],...)
≒ Ak(X, b-2, F[ω^k*3],...)
...
≒ F[ω^(k+1)]
といった関係を作るわけですね。


0409ルート412007/09/16(日) 11:49:45
ふぃっしゅしゅ氏へ質問なんですがBB関数を理解するため計算理論について調べていたらμ作用素関数というのが出てきました。
(参照) http://ja.wikipedia.org/wiki/%CE%9C%E5%86%8D%E5%B8%B0%E9%96%A2%E6%95%B0

これは、
基本関数 N→→N>N→N→N
次にバートの回転記号を○で表す
2○2=2(2回転目←)(2回転目←)2
3○3=3(3回転目←)(3回転目←)3
N○N>N→→N
N○○N>N○N○N

クラウ1 ステプ1
次に○の数を○ー○で表す(−は繋げること表しています)
2○ー○2=2○○2
3○ー○3=3○○○3
N○ー○ー○N>N○ー○ ○ー○N

ステプ2
次に○ー○の繋がる数を○(=)○で表す(=はーの本数が2本の意味です)
2○(=)○2=2○ー○2
3○(=)○3=3○ー○ー○3
N○(Ξ)○N>N○(=)○(=)○N

ステプ3
次に・・

0410ルート412007/09/16(日) 11:51:12
クラス2 ステプ1
クラス1のステプの数を(あ)で表す
2(あ)2=2(=)2
3(あ)3=3(クラス1ステップ3の表記)3
N(い)N>N(クラス1ステプNの表記の(あ))N

ステプ2
(あ)から(い)の変化を(ド)で表す
(ド)の次は(レ)・・・

�@ここでクラスの数を数える記号を作ればさらに巨大な関数が作れる
�A更にステプ、クラス、(クラスを数える数)と段階が上がる事を数えると更に巨大な関数が作れる
このアルゴリズム(手順)を繰り返すことで大きな関数を作れる事が出来る。(�@�Aを関数にして・・・)

このアルゴリズムその物を関数化した物みたいなんですが。この考えで行くと

�@1帰納関数→2帰納関数→3帰納関数
�A1重帰納関数→2重帰納関数→3重帰納関数
�B1重帰納関数→2重重帰納関数→3重重重
�C�@→�A→�Bをさらに関数にする。
このアルゴリズムその物を関数にする(その方法が全然判らないんですが)と、
ふぃっしゅ数バージョン5より大きな関数になると思うんですが?
それとも、ふぃっしゅう数ではμ作用素関数は折込済みなんですかね?
(この説明で伝わると良いんですが)
0411132人目の素数さん2007/09/16(日) 19:11:17
・いわゆる最小化じゃん
・ふぃっしゅ数はアッカーマン関数を折込済みです

そういえばアッカーマン関数を最小化を使って表すと
どうなるんでしょう。
0412132人目の素数さん2007/09/16(日) 19:53:40
>>396
バージョン5の定義ありがとうございます。
自分で計算してないのですが>>387-388を見るとやっぱりF_(ε_0)(x)に到達して
そうな感じですねぇ・・・。
ヴァージョン6楽しみにしています(笑)

>>405
なるほど。おそらくその定義がn重帰納関数の最低ラインっぽいですね。
前に言われていた所謂「正規形」ってやつかもしれません。
0413132人目の素数さん2007/09/16(日) 21:02:03
>>411
ハァ?
04145-6822007/09/17(月) 02:00:15
8ヶ月ぶりです。
ふいっしゅさんも戻って驚きです。

さて、前から放置してたナゴヤ関数について。(以後L[ω]→F[ω]に表記変更)
順序数ですが、F[F[ω](ω)](ω)ではφ_(φ_ω)(ω)になってしまうようです。
そこで、ここで取り上げているωとは別の非加算(?)順序数Ωを使って
ωで表す順序数を変換する写像を定義できるようにします。
さらに順序数Ω以降(以後Ω_1と表記)についても同様に
その順序数(式)を変換する写像はΩ_2、Ω_3、・・・の順序数を使えばいいです。
このことを踏まえて、ナゴヤ関数Ver1.1を定義し直していきます。

それぞれの写像Fについて以下のように定義します。
F[Ω_1]:ωからなる順序数α1→β1への写像
F[Ω_2]:Ω_1、ωからなる順序数α2→β2への写像
F[Ω_n]:Ω_n-1以下からなる順序数αn→βnへの写像

F[Ω_1](λ) = F[λ](λ) (λはωで表す可算順序数)
F[Λ+n+1](λ) = F[Λ+n]^λ(λ) (ΛはΩ_1で表す順序数、^aはネスト数)
F[Λ_(Ω_1)](λ) = F[Λ_λ](λ) (例:Λ_2 = (Ω_1)*2のとき、Λ_λ = (Ω_1)*λ)
F[F[Ω_2](Ω_1)](λ) = F[F[λ](Ω_1)](λ)
F[Ω_n+1](Λn) = F[Λn](Λn) (Λn:Ω_nで表される順序数)

こうすれば、自然数x→可算順序数λ、可算順序数ω→別の順序数Ω_1、・・・に
置き換えたHardyFunctionやVer1のナゴヤ関数の増大度が
順序数ω、Ω_1、Ω_2へとそのまま伝わっていきます。

例えば、
F[Ω_1](ω) = F[ω](ω) ≒ φ_ω(0)
F[Ω_1](F[ω](ω)) = F[ F[ω](ω) ](ω) ≒ φ_(φ_ω(0))(0)、
F[Ω_1+1](ω) ≒ Γ_0
F[Ω_1*2 + 1](ω)=Γ_Γ_...Γ_ω
となります。
04155-6822007/09/17(月) 02:48:30
続き。

関数の増大度について。
>>125のVebrenリスト関数と比較して、
F[Ω^2](ω) ≒ φ([2, 1][1, ω])
F[Ω^2+1](ω) ≒ φ([2, 2])
F[Ω^3](ω) ≒ φ([3, 1])
F[Ω^ω](ω) ≒ φ([ω, 1])
F[Ω^Ω + 1](ω) ≒ (λ_ω; λ_0 = ω, φ([λ_n, 1]) = λ_n+1)
(仮にφ([0, 1] [ [0,0] ])とおいてみる )
になると推測でき、この時点で前Ver1と比べて大幅に増大するようです。
F[Ω^Ω^ ... ^Ω + 1]ではおそらく
ふぃっしゅ関数Ver5 ≒ F[ε0]
で変換元の自然数xを変換元順序数ωに置き換えたときの
増大度に匹敵すると考えられます。(多重リストVeblen関数では表記不可能か?)

F[1, 0](x) = F[F[ ... F[Ω_x](Ω_(x-1)) ... ](ω)](x)
F[n+1, 0](λn) = F[n, F[n, ... F[n, 0](Ω_λn) ... ](λ(n+1))](λn) (λnは任意Ω_nの順序数)
と置くとして、
F[1,0]以降の増大度については後で調べます。
0416ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/17(月) 13:10:55
>>409-410
基本関数 N→→N>N→N→Nの計算方法がよく分かりませんが、
μ作用素を大きくする方法をうまく定義できたのでしょうか?

μ作用素そのものは計算可能関数と正確に一致するそうなので、
問題は「どうやってより大きいμ作用素を生成するか」という
ことになると思います。ふぃっしゅ数の場合は、μ作用素では
ありませんが作用素を大きくしていく、という考え方です。

F1のS変換,SS変換→2重帰納作用素の適用回数を増やす
F2のSS変換→2重帰納作用素の適用回数を数え上げて3重帰納
 作用素を作る
F3のs(1),s(2),...s(n)→n-1重作用素の適用回数を数え上げて
 n重帰納作用素を作る
F5のm(n)→「M1作用素の適用回数を数え上げるM2作用素」
 の適用回数を数え上げるM3作用素の…
 →この操作全体の回数を数え上げる

といったイメージです。
0417たろう2007/09/17(月) 21:09:39
>>338 の 46580.txt と同じような考え方の関数が過去ログにありました。
5スレ目の >>768 のhydra gameです。

A{ リスト }(n) で、リストには
[[[]]]や[[][]] のような文字列が入ります。

[a] で順序数ω^a 、[a][b] のようにリストを並べたもので順序数の加算をあらわし、
A{ [[[....x個....[ ].....x個.....]]] }(x)
で F[ε_0](n) 程度の増大度になるようです。
0418ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/17(月) 22:26:14
>>396のバージョン5では、F[ε_0]=F[C0(1,0,0)]まで到達したので、
バージョン6では、F[η_0]=F[C0(2,0,0)]あたりを目標にしたいと
思いますが、順序数あるいはそれに相当する多進木のような概念を
使わずに、はたしてそこまでたどりつけるかどうか…。

とりあえず、色々と考えながら試行錯誤していきます。

>>396のようにm(1)(x)からF5(x)を生成する変換をm'(2)とします。
m'(2)は+ε_0に相当するので、>>387-388の計算でm2のところを
m'(2)におきかえれば、m2 ===> +ε_0からはじまって、
m5 m4 m3 m2 ===> ε_0*ω^ω^ω
となりそうです。だとすれば、m'(n)を

((..((m'(n)M(n-1))M(n-2))...M(2))M(1))(x)
:=((..((..((m(x)m(x-1))m(x-2))...m(n))M(n-1))...M(2)M(1))(x)

にて定義することで、m'(2)m'(1) は ε_0^2 にはなりそうです。
m(n)をm_n(0)に、m'(n)をm_n(1)に書き直すことで、
m_n(a_1,a_2,...)を定義することも可能でしょうが、まずはm'(n)の
強さを評価するところからはじめようと思います。
しかし、この様子だとm'(x)m'(x-1)...m'(1)でもε_0^ω程度という
ことになりそうで、F[η_0]まではほど遠い感じですね。
0419ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/17(月) 23:05:25
m_1(0) = x^x
m_1(1) ≒ F[ε_0]
m_1(2) ≒ F[ε_0^ω]
m_1(3) ≒ F[ε_0^(ω*2)]
m_1(1,0) := m_1(x) ≒ F[ε_0^ω^2]
m_1(1,1) ≒ F[ε_0^(ω^2+ω)]
m_1(1,2) ≒ F[ε_0^(ω^2+2ω)]
m_1(2,0) := m_1(1,x) ≒ F[ε_0^(ω^2*2)]
m_1(1,0,0) := m_1(x,0) ≒ F[ε_0^(ω^3)]
m_1(1,(0がn個)) ≒ F[ε_0^(ω^ω)]

こんなもんかな。ε_1にも到達しなさそうですね…。
0420ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/17(月) 23:15:25
とりあえず、多変数の定義があまり賢くなかったので、
そこを多変数Akを参考にしつつもう少し工夫してみる
ことにします。
04215-6822007/09/18(火) 00:16:21
ふぃっしゅさんは順序数などを使わずに挑戦ですか。
巨大数作成者同士仲間でもライバルでもいいので
お互い頑張れればいいですね。

とりあえずVer1.1のF[1,0]→F[1,1]の過程についてあげておきます。
F[1,0](x) = F[Λx](x) ( Λ(n+1) = F[Λn](Ω_(x-n-1) ),
( Λ0 = Ω_(x-1) ) (0≦n≦x, Ω_0=ωとおく)
F[1,0]^x(x) = F[F[1,0](ω)+1](x)
F[ F[1,0]^ω(ω) ](x) = F[ F[ F[1,0](Ω_1)+1 ](ω) ](x)
F[1,1](x) = F[Λx](x)
( Λ(n+1) = F[Λn](Ω_(x-n-1), Λ0 = F[1,0](Ω_(x-1)) + 1 ) (0≦n≦x)
0422ルート412007/09/18(火) 01:04:19
>>411
アッカーマン関数の意味がやっと解ったです。サンクス
僕が書いたのは最小化をベースにしてアッカーマン関数作るという事だったんですね。
(この書き方で正しいか自分でも疑問だが)
>>416
毎回丁寧な解答ありがとうございます。僕的にはふぃっしゅ数のイメージが
一機に把握できますた。
N→→N>N→N→Nは、4→→4のほうが4→4→4より大きいという当たり前
の事を書いただけです。(1.2.3は=になりますが)矢印表記の場合は書き方
によって大きさが全然変わるので確認のために書きました。単純最後の大きな関数
を作るなら、3重回帰関数を作るよりN=1の時1回帰関数 N=2の時2重回帰関数
N=3の時3重重重回帰関数になる関数を作る方が良いという理想論を書きたかった
だけなんですが(理論上は作れるはずだが、実際に作るのはかなり大変になるはず)
※バージョン6頑張ってください。
0423132人目の素数さん2007/09/18(火) 17:15:37
F[a](x)≒H[ω^a](x)なわけだが
+ωでも*ωでも^ωでもなくω^だってのは何気にすごい。
(単にHのやり方がのろすぎるだけともいえるが)
大きい順序数を作って入れるんじゃなく根っこのやり方を変える
ことでη_0に挑戦できないものだろうか。
0424132人目の素数さん2007/09/18(火) 17:34:27
逆に次は順序数の概念をとりいれたヴァージョンでも良いかと思います。
ヴァージョン4でもBBを取り入れているわけですし、手段を問わずに
ひたすらでかい数を追求するというのもありかと思います。
あくまで計算可能な範囲で・・・
Hardy functionをBBで比較できたらおもしろいんですけどね。

>>423
F[a](x)≒H[ω^a](x)ではなくF[a](x)=H[ω^a](x)です。

F[0](x)=H[1](x)
F[1](x)=H[ω](x)
F[ω](x)=H[ω^ω](x)
F[ω^ω](x)=H[ω^ω^ω](x)
...
ですから結局、
F[ε_0](x)<H[ε_0](x+1)
となりますから、根っこのやり方を変えるんじゃなく大きい順序数を作って入れることが
関数を本質的に大きくするのです。
0425132人目の素数さん2007/09/18(火) 17:41:10
ω^ε_0=ε_0なので、
F[ε_0](x)=H[ε_0](x)
です。
0426132人目の素数さん2007/09/18(火) 18:18:33
>424いいえイコールではありません。
>425F[ε_0](x)≒H[ε_0](x)なら知ってます。

大きい順序数を作って入れることに相当するほかの手段を
模索したいのですよ。
根っこで1行ですむような定義をしている限り+ωがせいぜい、
よってε_0を超えられない、といいたいなら私もそう思ってます。
0427132人目の素数さん2007/09/18(火) 18:46:33
>>425
両辺で(ε_0)_nの取り方を固定した場合、値に関してはイコールにはなりません。

>>426
>いいえイコールではありません。
反例をお願いします。
0428132人目の素数さん2007/09/18(火) 19:17:09
>>427
あ、>>110の定義に基づけばイコールになるのですね。
今まで気づかなかった…
(本来Hの定義は>>70)
0429132人目の素数さん2007/09/18(火) 20:56:03
ε_0 = lim ω^^n とした場合、
H[ε_0](n) = H[ω^^n](n) < H[ω^^(n+1)](n) = F[ω^^n](n) = F[ε_0](n)
0430たろう2007/09/18(火) 21:22:54
>>424
手段を問わないなら、

int を無限長整数としたC++言語で、
int function(int a);
という関数を作る。
10000文字以内でできるfunctionのうち増加度が最大のものの1個を考えれば、
この関数は計算可能だが増大度が非常に大きい関数となる。

関数 f と g は、
ある整数aが存在し、b>a となる全ての整数b に対し f(b) > g(b) が成り立った場合に
f > g とする。
上記の関数 f のうち、g > f となる関数 gが存在しないものを、増加度が最大であるとする。
増加度が最大のうちの1個の選び方は、
プログラムの前方からの比較で小さいものを選ぶ。

μ再帰関数でも同様の関数が作れる。
定義の中に基本関数が10000回以内出現するようなμ再帰関数の中で
増大度の最大のものを1個をえらぶ。
これも増大度の非常に大きい計算可能な関数となる。
0431たろう2007/09/18(火) 22:06:08
>>424
>Hardy functionをBBで比較できたらおもしろいんですけどね。
>>284 で書いた通り、
H[帰納的でない最小の順序数](n) ≒ BB(n)
と言えそう。
0432ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/19(水) 00:49:40
>>424
それはそれで、ちょっと考えた事もありますが、
たとえばm(n)変換上のHardy関数を考えても順序数に
+ω^nする程度になりそうで、あまり意味のある拡張に
なりそうにないんですよね…。

まあ、あくまでも遊びなので、いろいろ考えてみようと
思います。
0433132人目の素数さん2007/09/19(水) 02:16:59
>>430
b>aのすべての整数に対してf(b) > g(b)であることを、
計算によって示すアルゴリズムはありますすか?
0434たろう2007/09/19(水) 07:54:25
>>433
関数の具体的構成を調べるアルゴリズムが無くても、
計算可能である関数のうちの1個であることは確かなので、
計算可能である。
0435ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/19(水) 20:09:17
>>434
f>gを示すために、h=f-gとして、すべての整数b>aに対して
h(b)>0となることを示すアルゴリズムを考える。

b>aが成り立つb1,b2,...を順番に代入する「代入アルゴリズム」
では、有限の計算において常にmax(b1,b2,...,bn)=Bが存在する。
したがって、すべてのd>cに対してh(d)<0であるようなc>Bが
存在する、すなわちf<gである可能性がある。また、B以上で
h(x)が正負を無限に振動するため、fとgの大小関係を決定でき
ない可能性もある。このように、代入アルゴリズムではf>gを
有限時間内に決定できない。

では、代入アルゴリズム以外であれば決定できるのか?

f>gを有限時間内に決定できる一般的なアルゴリズムは存在
しない様に思いますがいかがでしょう。

0436たろう2007/09/19(水) 21:11:25
>>435
>>433 と同様の疑問と思われます。

> f>gを有限時間内に決定できる一般的なアルゴリズムは存在
> しない様に思いますがいかがでしょう。
私は上記アルゴリズムが存在するという主張はしていません。
関数を決定するアルゴリズムが存在するかどうかに関わらず、
>>430 で定義された関数は計算可能であると思いますがいかがでしょう。
計算可能な関数から特定の1個を選んでいるので当たり前です。

----
関数を決定するアルゴリズムが存在するかどうかは今のところ私にはわかりません。
10000文字以内で出来る関数は有限個しかないので、
「10000文字以内のアルゴリズムがわかっている2つの関数の大小比較が出来ないようなものが存在するか」
という問題と同値になります。
0437たろう2007/09/19(水) 21:26:46
「具体的構成を知るアルゴリズムが存在しない関数なら意味がない」というのであれば、
比較するアルゴリズムが存在する関数に限定してください。
0438ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/19(水) 22:05:01
>>436
なるほど、関数fの決定が計算可能かどうかは分からない
(問題にしない)けど、関数fは明確に定義され、計算可能
である、ということですね。了解しました。

それから、ビジービーバーを小さくするアプローチはない
ですかね。なんらかの停止判定アルゴリズムを設定して、
それによって停止しないものは停止しないとみなす、
といったような形で。そのような疑似BBは計算可能で、
計算不可能なBBよりも増大度が一気に小さくなりますが、
その小さくする幅をいかに小さくするか、という問題に
帰着させます。

結局は、停止判定アルゴリズムの計算度に依存するのかな…。
0439もやしっ子2007/09/20(木) 09:15:18
また見ないうちに楽しそうなことを…
0440132人目の素数さん2007/09/20(木) 14:59:59
>438
たとえば停止しない判定をステップ数で行うとしたら、
TMはステップ数以上の1を書くことはできないわけで。

TMが停止する十分条件……原始帰納的関数とかですね。
を状態遷移図から判定するアルゴリズムってできても
かなり難しそう。
0441132人目の素数さん2007/09/20(木) 19:17:02
>438
わざわざ小さくする意味がわかんね。
0442132人目の素数さん2007/09/21(金) 05:07:27
>>431
具体的な値で比較できたら面白いと思いますがそれは無理かな。
たとえば、BB(6)までなら指数関数くらいで押さえられそう
ですが、BB(8)とかだとアッカーマン関数でないと追いつかない
とか。実質、H_Ω(x)=BB(x)だとするなら、BB(20)とかBB(30)は
いったいどれくらいの大きさの可算順序数を用いたH_αが必要なのかと
・・・どうアプローチしたらいいのかわかりませんが。
ヒドラ対ヘラクレスのような単純なアルゴリズムでH_[ε_0](x)
になってしまうらしいですからやはりBBは人智を超えているのでしょう
ね。といろいろ想像などしています。
0443132人目の素数さん2007/09/21(金) 17:03:39
そのBBが基底(MIN)となる世界なんて想像できないww
0444132人目の素数さん2007/09/21(金) 22:06:08
BB(100)とかのチューリングマシンはタワーのような数を大きくすることを目的としたような
操作を繰り返すチューリングマシンなのか、それとも数論の答えを求めるような計算をする
チューリングマシンなのか、はたまた全く別物なのか…。

0445132人目の素数さん2007/09/22(土) 01:04:17
BB(4)ですらわけわからんよ。あれは急増加関数じゃなくて
たまたま0を入れたら大きな数が出てくる壊れた機械だ。
0446132人目の素数さん2007/09/22(土) 08:45:14
どういう計算をしてるのか、人間の能力では解釈できないようなチューリングマシンになると思う。
例えば、コラッツの予想(偶数なら2で割り、奇数なら3倍して1を足していくといつかは1になる)で
ルールは単純なのにも関わらず、いつかは1になることの理由がなかなか分からないように。
(コラッツの予想が正しいとは限らないが)
04475-6822007/09/23(日) 23:59:39
F[1,0](Ω_n)→F[1,0](F[1,0](Ω_n))について補足。

F[1,0](Ω_n) = F[ F[1,0](Ω_(n+1)) ](Ω_n)とする。
F[Ω_1](F[1,0](ω)) = F[ F[1,0](ω) ](F[1,0](ω)) = F[Λω](F[1,0](ω))
= F[ F[ ... F[Ω_x] ... ](ω) ](F[1,0](ω))

F[1,0](F[1,0](ω)) = F[ F[1,0](Ω_1) ](F[1,0](ω))
= F[ F[ ... F[Ω_(x+1)] ... ](Ω_1) ](F[1,0](ω))

Ω_ω→Ω_ω+1への定義が非常に困難なのであえて
F[1, 0](λ) = F[F ... F[Ω_ω] ... ](Ω_1)](λ)
と順序数λの形に関わらずΩ_ωに固定収束で定義しています。
この場合、F[1, 1](ω)でネスト元がF[1, 0](Ω_ω)でΩ_(ω*2)に相当します。

またHowardFunction ψ(ε_(Ω+1))については
F[Ω_1^Ω_1^ ... ](ω) = F[ε_(Ω+1)](ω) で達すると考えられます。
F[ F[Ω_2 + 1](Ω_1) ](ω) で ψ(Γ_(Ω+1) 程度になるようです。
0448ふぃっしゅっしゅ ◆/T2GtW187g 2007/09/24(月) 18:29:13
少しずつまとめはじめています。
http://gyafun.jp/ln/largenumber.pdf
■ このスレッドは過去ログ倉庫に格納されています