大きな数とは、単純な数え方や金融取引など、日常生活で遭遇する数よりもはるかに大きな数のことです。これらの数は、数学、宇宙論、暗号学、統計力学で顕著に現れます。 グーゴロジーは、これらの巨大な数の命名規則と性質を研究します。[ 1 ] [ 2 ]
大きな数の通常の十進数表記は長くなることがあるため、より短い表記を可能にする他のシステムが考案されています。たとえば、10億は十進数表記では10文字(1,000,000,000)で表されますが、指数表記ではわずか3文字(10⁹)で表されます。1兆は十進数表記では13文字ですが、指数表記ではわずか4文字( 10¹²)で表されます。大きく変化する値は、対数スケールを使用してグラフで表現および比較できます。
自然言語による数体系では、大きな数を数字の羅列ではなく名前で表します。例えば、「1,000,000,000」よりも「billion」の方が理解しやすい読者もいるでしょう。また、接尾辞を使って短縮することもあります。例えば、2,340,000,000 = 2.34B (B = billion) です。数値は言葉で表すと長くなることがあります。例えば、「2,345,789」は「200万34万5千789」です。[ 3 ]
科学的記数法は、科学研究で遭遇する膨大な範囲の値を、従来の形式よりもコンパクトでありながら、必要に応じて高い精度も可能な形式で表現するために考案されました。[ 4 ]値は、10のべき乗の倍数を掛けた小数で表されます。[ 4 ]この係数は、長いゼロの羅列よりも読みやすくすることを目的としています。例えば、1.0 × 109 は10 億を表します。1の後に 9 つのゼロが続きます。その逆数である10 億分の 1.0 × 10です。−9。場合によっては、指数の代わりに文字eが使われることがあります。例えば、10億は 1.0 × 10ではなく 1e9 と表されることがあります。9 .
現実世界の事象を記述する大きな数値の例:
天文学や宇宙論では、長さや時間の尺度として大きな数値が用いられる。例えば、主流のビッグバンモデルによれば、宇宙は約138億歳である(4.355 × 10 17秒)。観測可能な宇宙は930 億光年(約4.355 × 10 17 秒) に広がっています。8.8 × 10 26メートル)と、約約 5 × 10 22 個の星が、約 1250 億個の銀河に組織化されている (ハッブル宇宙望遠鏡による観測)。おおよその推定では、約観測可能な宇宙には10 80個の原子が存在する。 [ 10 ]
カナダのアルバータ大学の物理学者ドン・ペイジによると、これまでに物理学者によって明示的に計算された最長の有限時間は[ 11 ]である。
(これは、観測可能か否かを問わず、宇宙全体の質量のブラックホールを含む仮想的な箱の量子状態の推定ポアンカレ再帰時間のスケールに対応し、質量が 10 −6プランク質量であるインフレーションを持つ特定のインフレーションモデルを仮定している)おおよそ 10^10^1.288*10^3.884 T [ 12 ] [ 13 ]この時間は、ポアンカレ再帰の対象となる統計モデルを仮定しています。この時間について考えるはるかに単純な方法は、統計力学の性質により宇宙の歴史が任意に何度も繰り返されるモデルです。これは、宇宙が現在の状態とある程度類似する(「類似」の妥当な選択)ようになる最初の時間スケールです。
組み合わせプロセスは驚くほど大きな数を生み出します。 固定されたオブジェクトの 集合の順列を定量化する階乗関数は、オブジェクトの数が増えるにつれて超指数関数的に増加します。スターリングの公式は、この急速な増加の正確な漸近表現を提供します。[ 14 ]
統計力学では、組み合わせ数は非常に大きな値に達するため、対数を用いて表現されることが多い。
ゲーデル数は、アルゴリズム情報理論におけるビット列の同様の表現と同様に、中程度の長さの数学的命題であっても膨大です。驚くべきことに、特定の病理的な数は、典型的な数学的命題に関連付けられたゲーデル数さえも上回ります。[ 15 ]
論理学者ハーヴェイ・フリードマンは、クルスカルの木の定理やロバートソン・シーモアの定理に関連する研究を含め、非常に大きな数の研究に多大な貢献をしてきた。[ 16 ]
コスモスの視聴者が「百万」と「十億」を区別できるように、天文学者のカール・セーガンは「b」を強調した。しかし、セーガンは「何十億も」とは決して言わなかった。このフレーズとセーガンの結びつきは、トゥナイト・ショーのコントから生まれた。セーガンの効果をパロディ化して、ジョニー・カーソンは「何十億も」と冗談を言った。[ 17 ]しかし、このフレーズは今ではユーモラスな架空の数字、セーガン単位になっている。セーガン単位 を参照。
非常に大きな数を標準的な方法で表記することで、それらを昇順に簡単に並べ替えることができ、ある数が別の数よりどれだけ大きいかを把握しやすくなる。
科学的記数法で表された数、例えば 5× 10⁴と 2×10⁵を比較する場合、まず指数を比較します。この場合、5 > 4 なので、2×10⁵ > 5×10⁴となります。指数が同じ場合は、仮数(または係数)を比較します。この場合、5 > 2 なので、5×10⁴ > 2× 10⁴となります。
10塩基とのテトラレーションにより、配列が得られます。10番のパワータワーでは、関数の関数的べき乗を表す(この関数は、googolplex のように接尾辞「-plex」でも表現されます。googolファミリーを参照してください。)
これらは非常に概数的な数値であり、それぞれが大まかな意味で桁数を表しています。数値の大きさを大まかに示す方法は、この数列の中でその数値がどの2つの数値の間にあるかを指定することです。
より正確には、その間の数値は次の形式で表すことができます。つまり、10のべき乗タワーと、おそらく科学的表記法で表された数字が上部に付いている。例:、そして(ご了承くださいもし(実数高さへのテトレーションの拡張も参照。)
したがって、グーゴルプレックスは。
別の例:
したがって、数値の「桁数」(通常意味するよりも大きなスケール)は、その数値を何回(n)取らなければならないかによって特徴付けられます。1から10の間の数を得る。したがって、その数はそして前述のように、数値のより正確な記述では、その数値が 1 から 10 の間の値であるか、前の数値 (対数を 1 回減らしたもの) が 10 から 10 の間の値であるか、次の数値が 0 から 1 の間の値であるかを指定します。
ご了承ください
つまり、数xが表現するには大きすぎる場合べき乗タワーは、x をlog 10 xに置き換えることで 1 つ高くするか、整数の log 10の下位タワー表現からx を求めることができます。べき乗タワーに 10 と異なる数が 1 つ以上含まれる場合、2 つのアプローチは異なる結果をもたらします。これは、べき乗タワーの下部に 10 を追加して拡張することと、上部に 10 を追加して拡張することが同じではないという事実に対応しています (ただし、もちろん、べき乗タワー全体が 10 と異なる同じ数のコピーで構成されている場合にも同様のことが言えます)。
塔の高さが大きい場合、大きな数のさまざまな表現を高さ自体に適用できます。高さがおおよそしか与えられていない場合、上部に値を与えることは意味がないため、二重矢印表記(例:) を使用できます。二重矢印の後の値がそれ自体非常に大きな数値である場合、上記の処理をその値に再帰的に適用できます。
例:
上記と同様に、指数がが正確に与えられていない場合、右側に値を与えることは意味がなく、代わりにべき乗表記を使用します。追加することが可能指数に例えば、。
指数がが大きい場合、大きな数のさまざまな表現をこの指数自体に適用できます。この指数が正確に与えられていない場合、右側に値を与えることは意味がなく、代わりに のべき乗表記を使用します。トリプルアロー演算子を使用することが可能です。例:。
三重矢印演算子の右辺引数が大きい場合、上記が適用され、例えば(間そしてこれは再帰的に行うことができるため、三重矢印演算子のべき乗を持つことが可能です。
次に、より多くの矢印を持つ演算子で処理を進めることができます。。
この表記法をハイパー演算子とコンウェイ連鎖矢印表記法と比較してください。
最初の方法の利点は、bの関数として考えると、この関数のべき乗を表す自然な表記法があることです ( n本の矢印を書き出すときと同じように)。。 例えば:
そして、長い入れ子構造の連鎖表記が簡略化されるのは、特別な場合に限られます。取得する:
bは非常に大きな値になることもあるため、一般にはべき乗の数列で表すことができる。nの値が減少するにつれて(正確に与えられた整数指数で))末尾に通常の科学的記数法の数値が付きます。は大きすぎて正確には与えられません。1 増加し、右側のすべて書き換えられています。
数を近似的に記述する場合、 nの値の減少順序からのずれは必要ありません。たとえば、、 そしてこうして、数x が非常に大きくなると、ある意味でxと 10 xが「ほぼ等しい」という、やや直感に反する結果が得られる(大きな数の算術については、下記も参照)。
上向き矢印の上付き文字が大きい場合、大きな数に対するさまざまな表現をこの上付き文字自体に適用できます。この上付き文字が正確に与えられていない場合、演算子を特定のべき乗にしたり、作用する値を調整したりする意味はなく、代わりに右側に標準値(例えば 10)を使用すれば、式は次のように簡略化されます。近似nの場合。このような数値の場合、上向き矢印表記を使用する利点はもはや適用されないため、代わりに連鎖表記を使用できます。
上記は、このnに対して再帰的に適用できるため、表記法は次のようになります。最初の矢印の上付き文字などで得られるか、または入れ子になった連鎖表記、例:
レベル数が多すぎて扱いにくい場合は、レベル数を数値で表記する記法(矢印を複数書く代わりに矢印の上付き文字を使うなど)を用います。関数を導入する= (10 → 10 → n ) となり、これらのレベルはfの関数のべき乗となり、次の形式で数を書くことができるようになります。ここで、mは正確に与えられ、nは整数であり、正確に与えられる場合も与えられない場合もある(例:nが大きい場合は、上記のいずれでも表現できます。これらの数値の中で最も丸いのは、 f m (1) = (10→10→ m →2)の形式です。たとえば、
グラハム数の定義を比較してみましょう。10の代わりに3を使用し、矢印のレベルは64で、一番上には4があります。したがって、 だけでなく。
mが正確に与えるには大きすぎるので、固定のn (例えばn = 1) を使用し、上記をmに再帰的に適用することができます。つまり、上向き矢印のレベル数自体が上付き上向き矢印表記で表されます。f の関数べき表記を使用すると、fの複数のレベルが得られます。関数を導入します。これらのレベルはgの関数的なべき乗となり、数値を次の形式で表すことができるようになります。ここで、mは正確に与えられ、n は正確に与えられる場合も与えられない場合もある整数です。たとえば、(10→10→ m →3) = g m (1) の場合です。n が大きい場合は、上記のいずれでも表現できます。同様に、関数hなどを導入できます。このような関数が多数必要な場合は、毎回新しい文字を使用する代わりに、添え字として番号を付けることができ、次のような形式の番号になります。ここで、kとmは正確に与えられ、nは正確に与えられる場合も与えられない場合もある整数です。上記のfに対してk =1 、gに対してk =2などを使用すると、(10→10→ n → k ) =nが大きい場合、上記のいずれでもnを表現できます。このようにして、形式の入れ子構造が得られます。内側に向かうにつれてkは減少し、内側の引数はべき乗の列となる。nの値が減少するにつれて(これらの数値はすべて正確に与えられた整数である)、最後に通常の科学的記数法による数値が続く。
kが大きすぎて正確に与えることができない場合、その数は次のように表すことができます。=(10→10→10→ n ) 近似nを使用。シーケンスから=(10→ n ) を数列に=(10→10→ n ) は、後者から数列へ移行することと非常によく似ています。=(10→10→10→ n ): これは、連鎖記法で連鎖に要素 10 を追加する一般的なプロセスです。このプロセスは繰り返し実行できます (前のセクションも参照)。この関数の後続バージョンに番号を付けることで、関数を使用して数値を記述できます。、q が最上位の数となる辞書式順序で入れ子になっているが、 qとkについては降順になっている。内側の引数はべき乗の列を生成する。nの値が減少するにつれて(これらの数値はすべて正確に与えられた整数である)、最後に通常の科学的記数法による数値が続く。
コンウェイ連鎖矢印記法で書き表すには大きすぎる数については、連鎖の長さでその大きさを表すことができます。例えば、連鎖内の要素10だけを使用するなどです。言い換えれば、数列10、10→10、10→10→10、…におけるその数の位置を指定できます。数列内の位置が大きな数であっても、同じ手法を再度適用できます。
極めて大きな数を表す表記法の例:
これらの表記法は基本的に整数変数の関数であり、その整数値に対して非常に急速に増加します。これらの関数を大きな整数を引数として適用することで、さらに急速に増加する関数を容易に再帰的に構築できます。
垂直漸近線を持つ関数は、関数が非常に急速に増加するにもかかわらず、非常に大きな数を定義するのに役立ちません。漸近線に非常に近い引数を定義する必要があり、つまり非常に小さな数を使用し、その数を構築することは、例えば逆数のような非常に大きな数を構築することと同等です。
以下は、10以外の基数、すなわち100を基数とした場合の効果を示しています。また、数値の表現方法と算術演算についても示しています。
10進数では指数が2倍になります。
同上。
最高指数は2倍をわずかに超える程度です(log 10 2だけ増加)。
数の場合nが1単位変化すると、結果は10倍変化します。6.2は有効数字を用いた適切な丸めの結果であり、指数の真の値は50少ないか50多い可能性があります。したがって、結果は因数になる可能性があります。大きすぎたり小さすぎたりする。これは極めて精度が低いように思えるが、これほど大きな数値であれば、妥当とみなせるかもしれない(大きな数値における大きな誤差は「相対的に小さい」ため、許容範囲内とみなされる)。
極めて大きな数の近似値の場合、相対誤差は大きくなる可能性がありますが、それでもなお、それらの数を「大きさが近い」とみなしたいという意味合いがあるかもしれません。例えば、次のことを考えてみましょう。
相対誤差は
相対誤差が大きい。しかし、対数の相対誤差も考慮することができる。この場合、対数(底が10)は10と9なので、対数の相対誤差はわずか10%である。
要点は、指数関数は相対誤差を大きく増幅するということです。aとbの相対誤差が小さい場合、
相対誤差はより大きく、
相対誤差はさらに大きくなる。そうなると、問題は、どのレベルの反復対数で2つの数値を比較するかということになる。ある意味では、
「大きさが近い」ということ。これら2つの数値間の相対誤差は大きく、それらの対数間の相対誤差も依然として大きい。しかし、2回目の対数における相対誤差は小さい。
このような反復対数の比較は、例えば解析的整数論においてよく見られる。
大きな数を比較するという問題に対する解決策の 1 つは、ロバート・ムナフォ[ 18 ]が考案したシステムのように、平均的な人の知覚のさまざまな「レベル」に基づいた数のクラスを定義することです。クラス 0 (0 から 6 までの数) は、簡単にサビタイズできる数、つまり日常生活で非常に頻繁に現れ、ほぼ瞬時に比較できる数を含むように定義されています。クラス 1 (6 から 1,000,000 = 10 6までの数) は、その小数表現が簡単にサビタイズできる数、つまり基数ではなく、小数展開が与えられれば「一目で」簡単に比較できる数を含むように定義されています。
これら以降の各クラスは、この10進法の指数化を繰り返すことで定義され、人間の区別がつかない状態を別の「反復」で再現する効果をシミュレートします。たとえば、クラス5は、10 10 10 10 6から10 10 10 10 10 6までの数を含むように定義されています。これは、XがX 2 [ 19 ]と人間の区別がつかなくなる数です(このようなXの対数を繰り返し取ると、まずlog( X )と2log( X )の間、次にlog(log( X ))と1+log(log( X ))の間、そして最後に長さを瞬時に認識できないほど非常に長い10進展開が得られます)。
非常に大きな数に対して行われる通常の算術演算に関する一般的な規則がいくつかあります。
したがって:
厳密に増加する整数列/関数が与えられた場合( n ≥ 1) の場合、より速く成長するシーケンスを生成することが可能です(上付き文字nはn番目の関数のべき乗を表す)。これを、とすることで何度でも繰り返すことができる。各シーケンスは前のシーケンスよりもはるかに速く成長する。したがって、定義することが可能である。これは、他のどの成長速度よりもはるかに速い有限のkに対して(ここで ω は最初の無限順序数であり、すべての有限数 k の極限を表します)。これは、添え字がますます大きな順序数に拡張される、急速に成長する関数の階層の基礎となります。
例えば、 f 0 ( n ) = n + 1 から始めると次のようになります。
ビジービーバー関数 Σ は、計算可能な関数よりも速く成長する関数の例です。比較的小さな入力でもその値は巨大です。n = 1、2、3、4、5 のΣ ( n )の値は、1、4、6、13、4098 [ 20 ] ( OEISのシーケンスA028444 )です。Σ(6) は不明ですが、少なくとも 10↑↑15 です。
上記で述べた数はすべて非常に大きいものの、いずれも有限数です。数学の特定の分野では、無限数や超限数が定義されています。例えば、アレフ・ヌルは自然数の無限集合の濃度であり、アレフ・ワンは次に大きい濃度です。は実数の濃度である。これは連続体仮説として知られており、集合論の通常の公理からは真偽を証明することはできない。