妖精現実



最新記事 すてきな証明・すてきな作図 tan ((α + β)/2) = ?(2021-10-09)

[ 新着記事 | 数学・プログラミング | 天文・暦
| シリア語・Unicode・詩 | ジョーク | 漫画・アニメ
| 字幕 | 哲学・ファンタジー | 全記事 | チラ裏 ]

チラ裏

2021-10-14 複素整数「ゴルゴ13」 565+13i

g = 565+13i はガウス整数の範囲で素数だろうか、それとも分解されるのか?

a = 123+45i と g の最大公約数は何か? (もし 1 でないとすれば、もちろんゴルゴ13は素数でない。)

まずは準備体操として、普通の整数の範囲での「ユークリッドの互除法」を思い出そう。

【例題】 3195億7869万7969 と 6385億0876万1014 の最大公約数は何か?

【互除法=ユークリッドのアルゴリズム】 2個の整数が与えられる。大きい方を M、小さい方を N としよう。M と N の最大公約数を求めたい。

ステップ1 M を N で割る。割り切れれば、もちろん最大公約数は N そのものだが、割り切れない場合を考える。M の方がでかいのだから、商は1以上だが、商はとりあえず無視。問題は余り。余りが r1 だったとする。

ステップ2 今度は N を割る。何で割る? 直前のステップの余り r1 で割る。今度は余りが r2 だったとしよう。

ステップ3 r1 を r2 で割って、余りを r3 とする。

ステップ4 r2 を r3 で割って、余りを r4 とする。

ステップ5 r3 を r4 で割って、余りを r5 とする。

以下同様に、割り切れるまで(余りがゼロになるまで)続ける。ゼロでなかった最後の余りが、M と N の最大公約数。

さっそく上の例題に適用。

N = 319578697969
M = 638508761014
MをNで割る → 余り r1 = 318930063045
Nをr1で割る → 余り r2 = 648634924
r1をr2で割る → 余り r3 = 450315361
r2をr3で割る → 余り r4 = 198319563
r3をr4で割る → 余り r5 = 53676235
r4をr5で割る → 余り r6 = 37290858
r5をr6で割る → 余り r7 = 16385377
r6をr7で割る → 余り r8 = 4520104
r7をr8で割る → 余り r9 = 2825065
r8をr9で割る → 余り r10 = 1695039
r9をr10で割る → 余り r11 = 1130026
r10をr11で割る → 余り r12 = 565013
r11をr12で割る → 余り r13 = 0 割り切れた

従って、ゼロでなかった最後の余り r12 = 565013 が gcd(M,N) ということに。比較として、素因数分解を強行するなら…
 M = 2 × 565013 × 565039
 N = 565013 × 565613
…となって、同じ結論が得られるが、この分解を試行除算で行うと、何万回も割り算する必要がある。ユークリッドの互除法なら、たった13回の割り算で答えが出るのだから、桁違いに効率が良い。

もちろん重要なのは「なぜこのアルゴリズムでうまくいくのか」。

普通の整数の範囲での互除法の証明は、ウィキペディアなど、多くの場所で見ることができるだろう。例えばオンライン教科書『Elementary Number Theory: Primes, Congruences, and Secrets』
https://wstein.org/books/ent/ent.pdf
では、§1.1.2に当たる。同じアルゴリズムが一般の整域で通用するかどうかは、ケースバイケースで微妙だが、ガウス整数に関しては、それほど難しくない。

2021-10-13 123+45i と 678+90i の最大公約数

ピタゴラス・トリオも、フェルマーの最終定理の n=4 の場合も、ガウス整数の問題として考えるのが正道だろうし、多くの教科書に必ず出る話題だろうが、普通に群・環から始めると、結構だるい。

ここでは具体的な問題を考えてみたい。

【問題】 ガウス整数 a = 123+45i と b = 678+90i の最大公約数は何か?

これらの数を凝視すると「実部も虚部も3で割り切れる」。だから 3+3i が公約数だろうけど、それは最大だろうか?

そもそもガウス整数の大小とは…? 素朴な発想は、a と b をそれぞれ素因数分解してみることだろう。それで共通の素因数を全部抜き出して、それらを掛け算すれば、それが最大公約数に違いない。ただし、素因数分解は易しくない。

a = −i⋅3(1+i)(13+28i)

b = −i⋅3(1+i)(8+3i)(8+5i)

もし上記の分解を事実と認めるなら、単数倍の違いを無視して、最大公約数は 3(1+i) だろうが、どうやって上記のように分解されるのか。そもそも一意分解が成り立つのか…。

普通の整数の場合もそうだが、最大公約数を知りたいだけなら、素因数分解よりユークリッドの互除法の方が、単純で、効率が良い。ガウス整数でも、同じ方法を試してみたい。

複素数の範囲で b/a = 5.0975… − i1.1332…

ガウス整数としては、b を a で割ると、割り切れずに、商が 5−i で余りが発生すると予想される。この余りを r1 とすると…

b = a(5−i) + r1 つまり r1 = b − a(5−i) = 18−12i

同様に a/r1 = 3.5769… + i4.8846… だから

a = r1(4+5i) + r2 つまり r2 = a − r1(4+5i) = −9+3i 余りが r1 より「小さく」なった。良い兆候。

次に r1/r2 = −2.2 + 0.6i だから

r1 = r2(−2+i) + r3 つまり r3 = r1 − r2(−2+i) = 3+3i 余りが r2 よりさらに「小さく」なった。

最後に r2/r3 = −1 + 2i これで余りがゼロ、割り切れた!

互除法によれば、割り切れる1個手前の余り r3 = 3+3i が a と b の最大公約数。ユークリッドのありがたみがよく分かる。素因数分解と比べると単純計算だし、厳密化も比較的簡単そうだ。まずは「最大公約数」の意味を定義して、次にガウス整数でも互除法ができることを示せばいいだろう。上記の例から「互除法を使うと、余りの絶対値がだんだん小さくなる。余りはガウス整数なので、有限の値からだんだん小さくなるとしたら、いつかはゼロになるしかない」ということが分かる。

2021-10-05 フェルマーの最終定理: n=4 の場合 ピタゴラス・トリオで遊んじゃえっ

32 + 42 = 52 や 52 + 122 = 132 のような性質を満たすトリオ (3, 4, 5), (5, 12, 13), …。トリオたちの一般的性質は、それ自体として面白いだけでなく、もっと深い事柄と結び付いている。前回、ガウス整数の方向に行きかけたが、気まぐれに方向転換して、今回は「フェルマーの最終定理の n=4 の場合」を考えてみたい。

4. x4 + y4 = z4 を満たす正の整数 x, y, z は存在しない。

【証明】 「そのような x, y, z が存在して、次の関係を満たす」と仮定し、矛盾を導く。

  1. x4 + y4 = z4 ……… ①
  2. 言い換えれば (x2)2 + (y2)2 = (z2)2 ……… ②

一般性を失うことなく x と y は互いに素と仮定できる(もし x と y の最大公約数 g が 1 でないなら、x/g, y/g, z/g をあらためて x, y, z と置けばいい)。

②において (x2, y2, z2) は互いに素なピタゴラス・トリオなので、前回の考察から、こう書ける:

  1. x2 = m2 − n2
  2. y2 = 2mn
  3. z2 = m2 + n2

ここで m, n は互いに素な正の整数で、一方が奇数・他方が偶数であり、m > n を満たす。x2 が奇数、y2 が偶数と仮定しているが、そのことによって一般性は失われない(もし偶奇が逆だったら、単に x と y の名前を入れ替えればいい)。

さらに(これも前回、具体的に経験したことだが)、ピタゴラス・トリオ (A, B, C) は C の大きさによってソートできる。そこで、上記の (x2, y2, z2) について、「①つまり②を成り立たせるような、最小の z2 を選択した」と仮定しよう。もし正の整数解が一つ以上あるなら、当然その中で最小のトリオを見つけることができるので(解がたまたま一つ見つかったとして、最悪、それより小さい範囲を全数検索すればいい)、それを①②の解としよう。

以下で見るように、実際には「トリオの第3要素 C が平方数 z2」という条件を外してさえ、(x2, y2, C) の形のピタゴラス・トリオは一つも存在しない。

5. 奇数の平方は「4で割ると1余る数」。上記の x2 は奇数なので、x は奇数、x2 は「4で割ると1余る数」。そのためには、m が奇数で n が偶数でなければならない(そのとき m2 は「4で割ると1余る数」、n2 は4の倍数)。なぜならば、mn の偶奇がその逆だとすると m2 − n2 は「4で割ると3余る数」になってしまい、x2(それは「4で割ると1余る数」である)と等しくなり得ない。今、偶数 n を n = 2k と書くと:

  1. y2 = 2mn = 2m(2k) = 4mk  これは4の倍数
  2. 両辺を4で割って y2/4 = (y/2)2 = mk

mn は互いに素だから、mk = n/2 も互いに素。ところが mk = (y/2)2 は平方数だから、mk もそれぞれ平方数。m = c2, k = d2 と書くと:

  1. x2 = m2 − n2 = (c2)2 − (2k)2 = (c2)2 − (2d2)2
  2. 移項して x2 + (2d2)2 = (c2)2

従って、(x, 2d2, c2) も互いに素なピタゴラス・トリオであり、x は奇数、2d2 は偶数。だからこう書ける(M, N は、互いに素な正の整数):

  1. x = M2 − N2
  2. 2d2 = 2MN つまり MN = d2
  3. c2 = M2 + N2

6. MN = d2 は平方数だが、MN は互いに素なので、MN もそれぞれ平方数。M = a2, N = b2 と書くと:

  1. c2 = M2 + N2 = a4 + b4
  2. つまり a4 + b4 = c2 ……… ③

③から、(a2, b2, c) もピタゴラス・トリオ。しかし、それは矛盾である! 実際、上記の式変形を振り返ると:

  1. c ≤ c2 = m < m2 + n2 = z2

トリオの最後の数 c について、①では、この形の式を満たす最小の z2 を選んだ。だから、z2 より小さい正の整数 c が③の形を持つ…というのは、議論の前提に反する。

「①②を満たす最小の正の整数 z2 を選んだとき…」と考えると、矛盾が生じる…。でも、①②の形のピタゴラス・トリオが一つ以上存在するなら、もちろんその中で最小のものを選べる。つまり、もっとさかのぼって、「①②の形のピタゴラス・トリオが一つ以上存在する」ということ自体が不可能なのである。これが示したいことだった。□

これは本当の意味での、フェルマーの定理であり、フェルマー自身によって、同様の考え方によって証明されたらしい。

フェルマーは n=4 以外の一般の場合についても証明できると考えたが、実際には「その証明を書くには、この余白は狭過ぎる」という有名な言葉を記したにすぎない。フェルマーの最終定理と呼ばれるものは、正確には「フェルマーの予想」だった。のほほんとした「余白が狭過ぎる」発言を出発点に、フェルマー自身の考えさえ超越して、数論は大発展。フェルマーの予想は、漫画で言えば手塚治虫の「火の鳥」のようなものだった。

そこから派生した数論的技術は、純粋にそれ自体として面白いだけでなく、現代のネット社会を裏で支えるツールとして、日常的に活用されている(セキュアな通信で使われる楕円曲線暗号のように)。フェルマーの最終定理がそうだったように、現代のネットを支える計算量の理論にも、核心部には「予想」が交じっている。証明されてない予想に基づいて、オンライン決済とかをしている…というのは、理論的には怖いことだが、予想の裏をかける数学の天才の発生確率より、人間をだます詐欺師の発生確率の方が桁違いに高いので、相対的に前者の心配は小さい。数学側の本音としては、むしろ予想が間違っていたと判明する方がエキサイティング。予想がきちんと証明されれば、それはそれで気持ちがいい。

***

2021-10-04 ピタゴラス・トリオで遊んじゃえっ 勉強だって遊んじゃえっ

1. どの辺の長さも50以下の整数であるような直角三角形は、何種類あるか。言い換えると、x2 + y2 = z2 を満たす50以下の正の整数の組み合わせは、何種類あるか。

ただし (x, y, z) と (y, x, z) については、同じ組み合わせと考える。例えば、
  32 + 42 = 52 と 42 + 32 = 52
…については、別の組み合わせとは考えず、同じトリオの順番を変えただけ、と見なす。

ピタゴラス・トリオそのものは古典的な問題で、本質的に異なる全てのトリオは

  • (x, y, z) = (m2 − n2, 2mnm2 + n2) ……… (☆)

の形を持つことが知られている。ここで m, n は互いに素な正の整数で、偶奇が異なり、m > n

ゴチャゴチャ考えるより、とりあえず全数検索!

\\pari
{
 c = 0; \\ counter
 for( x=1, 50,
  for( y=x, 50,
   if( issquare( x^2+y^2, &z ) && z <= 50,
    printf( "[%2d] %d^2 + %d^2 = %d^2\n", c++, x, y, z )
   )
  )
 )
}

…実行すると、ちょうど20種類、ぞろぞろ出てくる:

[ 1] 3^2 + 4^2 = 5^2
[ 2] 5^2 + 12^2 = 13^2
[ 3] 6^2 + 8^2 = 10^2
[ 4] 7^2 + 24^2 = 25^2
[ 5] 8^2 + 15^2 = 17^2
[ 6] 9^2 + 12^2 = 15^2
[ 7] 9^2 + 40^2 = 41^2
[ 8] 10^2 + 24^2 = 26^2
[ 9] 12^2 + 16^2 = 20^2
[10] 12^2 + 35^2 = 37^2
[11] 14^2 + 48^2 = 50^2
[12] 15^2 + 20^2 = 25^2
[13] 15^2 + 36^2 = 39^2
[14] 16^2 + 30^2 = 34^2
[15] 18^2 + 24^2 = 30^2
[16] 20^2 + 21^2 = 29^2
[17] 21^2 + 28^2 = 35^2
[18] 24^2 + 32^2 = 40^2
[19] 27^2 + 36^2 = 45^2
[20] 30^2 + 40^2 = 50^2

[3] は [1] の各項を2倍しただけ、[6] は [1] の各項を3倍しただけ、[8] は [2] の各項を2倍しただけ…この種の、つまらないトリオが多い。(x, y, z) がピタゴラス・トリオなら、任意の正の整数 k について (kx, ky, kz) もピタゴラス・トリオになるに決まってるのだから、互いに素なトリオだけを考えた方が良さそうだ。

そこで z <= 50 の後ろに && gcd(x,y)==1 を追加すると:

[ 1] 3^2 + 4^2 = 5^2
[ 2] 5^2 + 12^2 = 13^2
[ 3] 7^2 + 24^2 = 25^2
[ 4] 8^2 + 15^2 = 17^2
[ 5] 9^2 + 40^2 = 41^2
[ 6] 12^2 + 35^2 = 37^2
[ 7] 20^2 + 21^2 = 29^2

50までの範囲には、本質的に違うトリオは7種類しかない。こうなると、なかなか貴重品のように思えてくる。20以下の小さいトリオは:

3^2 + 4^2 = 9 + 16 = 25 = 5^2
5^2 + 12^2 = 25 + 144 = 169 = 13^2
8^2 + 15^2 = 64 + 225 = 289 = 17^2

美しい!!

互いに素という制約を付けた場合、上記の数値例から、「x と y は一方が偶数、他方が奇数で、偶奇が一致しない」と予想される(だとすると、z2 は偶数と奇数の和で奇数、従って z は奇数)。実際、互いに素なのだから、両方偶数ということはあり得ない。両方奇数という可能性も排除するため、「奇数の平方を4で割ると1余る」ことに注目しよう。x2 と y2 が両方とも「4で割ると1余る数」だとすると、それらの和は「4で割ると2余る数」になるが、「4で割ると2余る数」を素因数分解した場合、素因数2が奇数個。そのような数は平方数ではなく、つまり z2 の形を持ち得ない。

2. ピタゴラス・トリオは、単位円上の「有理点」と結び付いている。ここで「有理点」とは、x-座標 と y-座標がどちらも有理数になるような点。

実際、条件 x2 + y2 = z2 の両辺を z2 で割ると:

(x/z)2 + (y/z)2 = 1 ここで p = x/z, q = y/z と置くと、ピタゴラス・トリオ (x, y, z) は単位円上の有理点 (p, q) に対応する。

逆に (p, q) が有理点なら、有理数の定義から、整数 x, y, z があって (p, q) = (x/z, y/z) と書けるのだから、ピタゴラス・トリオを見つけることは、単位円上の有理点を見つけることと本質的に同じ。ただし、例えば、トリオ (3, 4, 5) と (6, 8, 10) は、どちらも単位円上の同じ点 (3/5, 4/5) = (6/10, 8/10) に対応していて、1対1対応にはなっていない。1対1対応にしたければ「互いに素なトリオ」だけを考えればいい。

【疑問】 単位円上の有理点とは、どのような点か?

PNG画像32: 原点Oを中心とする半径1の緑の円を考える。点(−1, 0)をC、円周上の別の点をPとし、CPは青い直線で結ばれているとする。OPと正のx-軸が成す角をθとする。Pからx-軸に下ろした垂線の足をTとする。CPとy-軸の交点をDとし、線分ODを「赤い部分」と呼ぶ。点Dの座標を(0, u)とすると、「赤い部分」はuに当たる。

図を描くのが面倒なので、「倍角の公式(その2)」の図を再利用。

第一象限にある点 P の座標 (p, q) が有理数なら、青い直線 CP の傾き u も有理数: 実際 u = q/(1 + p) である。

(CP の傾きが u = OD に等しい理由は、C から D まで横座標が 1 増加するとき、縦座標が u 増加するから。)

逆に、青い直線の傾き u が有理数なら、P は有理点である。

【証明】 緑の単位円の方程式を x2 + y2 = 1 とする。青い直線の式は y = ux + u なので、前者に後者を代入すると、2次方程式になる。それを解くと(途中計算は、「倍角の公式(その2)」の「幾何学的な方法」参照):

  • p = (1 − u2) / (1 + u2)
  • q = 2u / (1 + u2)

仮定により u は正の有理数なので、正の整数 m, n が存在して u = n/m と書ける。すなわち:

  • p = (1 − (n/m)2) / (1 + (n/m)2) = (m2 − n2) / (m2 + n2)
  • q = 2(n/m) / (1 + (n/m)2) = 2mn / (m2 + n2)

p も q も、それぞれ2整数の比だから有理数。□

p = x/z, q = y/z なのだから、ピタゴラス・トリオは、
  (m2 − n2, 2mnm2 + n2)
の形を持つ(x と y の大小関係は一定していない)。

これで冒頭の主張(☆)が確認された。

「m, n が互いに素」という条件は、そうでなければ (x, y, z) が互いに素にならないことから。従って m, n は両方とも偶数ということはない。また両方奇数だとすると (x, y, z) は全部偶数になってしまうので、それもない。つまり本質的に異なるピタゴラス・トリオだけを考えたい場合、言い換えれば (x, y, z) が互いに素という条件と付ける場合、必然的に m, n は互いに素で、偶奇が異なる。仮定より x = m2 − n2 は正の整数なので、m > n。

3. ピタゴラス・トリオは、具体的にどのように、単位円上の有理点と対応しているか?

まず (3, 4, 5) だが…。上記の文脈においては「(3/5, 4/5) は単位円上の点」という意味。
 (3/5)2 + (4/5)2 = 25/25 = 1
なので、事実としては明白だが、三角関数的には…

arccos (3/5) = 0.927295218…
sin 0.927295218… = 4/5

θ = 0.927295218… ラジアンは、53.1301…度に当たる。何だか見覚えのある角度のような…?

(x, y, z) = (3, 4, 5) のとき、傾き u は?

このトリオを生成するのは (m, n) = (2, 1) なので、u = n/m = 1/2 となる。つまり:

θ/2 = arctan (1/2) = 0.463647609…
θ = 2 arctan (1/2) = 0.927295218…

見覚えのあるような θ = 0.927295218… の正体は、arctan (1/2) の2倍であった。

それは、もちろん複素数 3 + 4i の偏角でもある!

arg (3+4i) = 0.927295218…

他のピタゴラス・トリオも同様であり、ピタゴラス・トリオをガウス整数の問題として扱えることが示唆される(ありがちな展開)。ピタゴラス・トリオの性質は「原点からの距離が整数になるような、整数格子点」。言い換えると「ノルムが平方数であるようなガウス整数」。

何だか面白くなってきた。何して遊ぼっか? ここからどこに行こっか?

チラ裏より

チラ裏」は、きちんとまとまった記事ではなく、断片的なメモです。


新着記事

すてきな証明・すてきな作図 tan ((α + β)/2) = ?(2021-10-09)
正攻法ではゴチャゴチャ長い計算になるが、上記の作図によると、見ただけで「そうなって当然!」と思える。
【注意】SSDは使ってないと壊れやすい 用がなくても週に1度は電源を(2021-06-06)
「SSDは、アクセスが速く、回転部分がないので壊れにくい。従来のハードディスクより優れた新技術…」という一般的イメージを持たれている。一方、SSDには、特有の弱点があることも知られている。
妖精の森 ♌ ペル方程式の夏(2020-12-27)
x2 − 79y2 = 5 を満たす整数 (xy) は存在しません。その証明は意外と難しく、しかも隠された深い意味を持っています。この種の問題を扱います。ハイライトは、2020年夏に発見されたばかりの「改良版コンラッドの不等式」。 〔最終更新=v4: 2021年9月5日〕
MKV埋め込み字幕用フォントのMIME問題 (2019-10-20)
字幕用フォントが、ロードされない事例が起きている。問題の背景・対策・対応状況。
ばびっと数え歌 でかい数編 (2019-09-01)
31桁の 1,000,000,000,000,000,000,000,000,000,000(=100穣)までの数え歌。日本語・英語・SI接頭辞・2進数付き。

数学・プログラミング

まあるい緑の単位円 (三角関数覚え歌)(2017-12-24)
まあるい緑の単位円/半径 斜辺の三角形/「高さ」の「さ」の字はサインの「サ」/サインは 対辺 高さ
アルファとベータが角引いた (加法定理・図解の歌)(2017-12-24)
「ごんべさんの赤ちゃん」のメロディーで。「アルファさんとベータさんが麦畑」でもOK。 〔最終更新: 2018年1月28日〕
cos 36° 魔法のにおい(2018-01-14)
五角形を使った解法も優雅だが、代数的に… 〔最終更新: 2019年9月30日〕
cos π/7 正七角形の七不思議(2018-01-28)
日頃めったに見掛けない正七角形。その作図不可能性は、有名な「角の3等分問題」に帰着する。コンパス・定規・「角度3等分」器があれば、360° を7等分できる! 〔最終更新: 2018年12月30日〕
覚えやすさを重視した3次方程式の解法(2018-02-11)
分数なくして、すっきり。語呂合わせ付き。 〔v8: 2019年3月17日〕
3次方程式の奥(2018-03-04)
3次方程式は奥が深い。「判別式の図形的解釈」は1990年代の新発見だという。 〔v14: 2021年1月12日〕
3次方程式の判別式(2018-03-18)
いろいろな判別式。Qiaochu Yuan による恐ろしくエレガントな解法。 〔最終更新: 2018年12月30日〕
3次方程式と双曲線関数 ☆ 複素関数いじっちゃお(2019-02-17)
定義から始めてのんびり進むので、双曲線関数の予備知識は不要。3次方程式も別記事で初歩から解説。三角・指数関数なら知ってるという探検気分のあなたへ。複素関数プチ体験。 〔v7: 2021年2月19日〕
cos i = ?
曇りなきオイラーの公式 微分を使わない直接証明(2019-02-17)
exp ix = cos xi sin x のこんな証明。目からうろこが落ちまくる! 〔v11: 2020年12月23日〕
−1 の 3/2 乗? オイラーの公式(その2)(2019-03-03)
(−1)3/2 って ((−1)3)1/2 = (−1)1/2 = i なのか、((−1)1/2)3 = i3 = −i なのか、それとも…? exp zez が同じという根拠は? 〔最終更新=v7: 2021年1月24日〕
(za)b = zab の成立条件(2019-06-09)
(za)b = zab は一般には不成立。ではどういう条件で、この等式が成り立つか。(za)bzab は、どういう関係にあるのか。「巻き戻しの数」(unwinding number)は、この種のモヤモヤをすっきりさせるための便利なコンセプト。 〔最終更新=v5: 2021年1月24日〕
フェルマーのクリスマス定理で遊ばせて!(2018-12-23)
1640年のクリスマスの日、フェルマーはメルセンヌに宛てた手紙の中で、こう言った。「4の倍数より1大きい全ての素数は、ただ一通りの方法で、2個の平方数の和となります」 〔v5: 2020年12月27日〕
「西暦・平成パズル」を解くアルゴリズム(2016-03-27)
整数28と四則演算で2016を作るには、最小でも9個の28が必要。
2016 = (28+28+28)×[28−(28+28+28+28)/28]
一見全数検索は大変そうだが、50行程度の平易なスクリプトで高速に解決される。ES6 の Map の長所、splice より速い要素挿入法も紹介。 〔最終更新: 2016年4月10日〕
[JS] 100行のプチ任意精度ライブラリ(2016-05-08)
JavaScript 用に最小構成的な「任意精度整数演算」ライブラリを作ってみた。 〔最終更新: 2019年6月23日〕
[JS] メルセンヌ数の分類と分解(2016-06-05)
数千万桁のメルセンヌ素数が脚光を浴びるが、その裏では、たった数百桁のメルセンヌ合成数が分解できない。 〔v6: 2019年5月5日〕
楕円曲線で因数分解(2016-08-14)
楕円曲線を使って、巨大整数に含まれる数十桁の因数を検出できる。計算は、曲線上の勝手な点を選んで整数倍するだけ。ステージ1、モンゴメリー形式、標準版ステージ2、素数ペアリングについて整理した。 〔最終更新: 2019年6月4日〕
楕円曲線の位数: 点の擬位数に基づく計算法(2016-10-02)
元の位数を考えると群の位数計算が高速化されるが、それには高速な素因数分解が必要。「擬位数」はどの教科書にも載ってないような概念だが、ハンガリー人数学者 Babai László によって研究された。 〔最終更新: 2016年10月23日〕
アルカンの異性体の数の公式・第1回 小さなパズルと不思議な解(2015-09-20)
異性体の数は難しいが、炭素数12くらいまでなら素朴な計算ができる。中学数学くらいの予備知識で気軽に取り組めて、めちゃくちゃ奥が深い。(全9回予定だが第6回の途中で止まっている。そのうち気が向いたら完結させたい)
「マイナス×マイナス=プラス」は証明できるか?(2014-08-03)
数学的に正しい質問は、「なぜマイナス×マイナス=プラスか?」ではなく「いつマイナス×マイナス=プラスか?」 〔最終更新: 2019年9月29日〕
平方剰余の相互法則(2003-03-26)
「バニラ素数とチョコレート素数」という例えを用いた「お菓子な」説明。
楕円曲線暗号(2003-11-28)
最初歩から具体例で。書き手も手探りというライブ感あふれる記事6本。手探りだからエレガントではないが、JavaScriptでは世界初の実装? 実装はダサいが、内容(ロジック)は正しい。
触って分かる公開鍵暗号RSA(2004-02-04)
理論的説明でなく、実地に体験。JavaScriptで実現したので結構注目され、大学の授業などの参考資料としても使われたらしい。ダサい実装だが、ちゃんと動作する。
デスノートをさがして: 論理パズル(2006-04-10)
真神・偽神・乱神。間違いだらけの乱神探し。

天文・暦

13日は金曜になりやすく31日は水曜になりにくい(2017-09-03)
曜日は「日月火…」の繰り返しだから各曜日は均等のようだが、「毎月1日の曜日」「13日の曜日」のように「特定の日にちが何曜になるか」を考えると、曜日分布に偏りが… 〔v6: 2019年4月21日〕
「春夏秋冬」は「夏秋冬春」より長い(2017-11-26)
「春分→夏→秋→冬→春分」と「夏至→秋→冬→春→夏至」は、どっちも春・夏・秋・冬1回ずつなのに、前者の方が長い。素朴な図解(公転最速理論?)、簡易計算、そして精密な解析解。春分間隔から春分年へ… 〔最終更新: 2018年12月30日〕
公式不要の明快な曜日計算(2016-10-23)
公式や表を使わず、何も覚えていない状態で、手軽に任意の年月日の曜日を暗算。
ぼくの名前は冥王星(2013-09-30)
いいもん、いいもん! これからは小惑星になって、ジュノーちゃんやベスタちゃんと遊ぶから! …と思っていたら、「おまえは小惑星でもないんだよ」と言われてしまった。そんなー。ぼくのアイデンティティーは粉々さ。 〔v6: 2019年3月24日〕
さよなら第9惑星・冥王星 カイパーベルト終着駅(2019-03-24)
海王星~海王星~。目蒲めかま線はお乗り換えです。
第9惑星・追悼演説(2019-03-24)
我々は一つの惑星を失った。しかし、これは「終わり」を意味するのか? 否、始まりなのだ!
ケプラー方程式(微積・三角公式を使わないアプローチ)(2018-01-14)
微積分を使わず、算数的にケプラー方程式を導く。倍角・半角などの公式を使わずに、離角の関係を導く。特別な予備知識は不要。 〔最終更新: 2018年2月4日〕
ケプラー方程式・2 エロい感じの言葉(2018-01-28)
「ケプラー方程式(微積・三角公式を使わないアプローチ)」の別解・発展。 〔最終更新: 2018年2月4日〕

シリア語・Unicode・詩

シリア語: カラバシ注解(2013-12-01)
カラバシ『読み方のレッスン』はシリア語文語・西方言の教科書。ウェブ上で公開されている。その魅力を紹介し、第1巻全21課に注釈を付けた。 〔最終更新: 2016年5月8日〕
ばびっと数え歌 シリア語編(2014-02-09)
「シリア語の数詞の1~10」を覚えるための数え歌。「ごんべさんの赤ちゃん」のメロディーでも歌えます。 〔最終更新: 2017年12月24日〕
ペシタ福音書における「女性聖霊・男性聖霊」の混在について(2014-12-14)
キリスト教の「聖霊」はイエス自身の言語では女性だったが、後に男性イメージに変化した。この変化は興味深いが、そこに注目し過ぎると中間期の状況が正しく理解できない。3種類のシリア語聖書とギリシャ語聖書を比較し「叙述トリック」を検証。 〔最終更新: 2018年11月4日〕
少年と雲 (シリア語の詩)(2017-12-24)
雲さん、どこから来たんだい?/背中に何をしょってるの?/そんなに顔を曇らせて/空から何を見ているの?
黙示録の奇妙な誤訳: 楽しいシリア語の世界(2018-04-15)
「南の子午線を飛ぶハゲタカ」が、なぜか「尾が血まみれのハゲタカ」に…。誤訳の裏にドラマあり。 〔最終更新: 2018年5月6日〕
ターナ文字入門: 表記と発音(2013-01-16)
以前公開していた記事を全面改訂。ターナ文字は、インドの南、南北1000キロにわたって散らばる島々で使われる文字。 〔最終更新: 2014年5月4日〕
HTML5 の bdi 要素と Unicode 6.3 の新しい双方向アルゴリズム(2012-12-04)
ブログのコメント欄で起きる身近な例を出発点に、双方向性が絡む問題と解決法を探る。HTML の dir 属性は落とし穴が多い。HTML5 の <bdi> は役立つ。近い将来、「ユーザー入力欄などの語句は、このタグで隔離」が常識になるかも。 〔最終更新: 2014年4月27日〕
空は青くて真白くて(2014-11-23)
「わたしの心は躍り上がる」(ワーズワース)/「空は青くて白くて」(フィンランド民謡)

ジョーク

未来の水 フリーズドライ ☆ 粉末乾燥水(2012-04-01)
宇宙旅行のお供に/非常時の備えに… 場所を取らない超軽量・携帯用のインスタントお水です。
イヤ~な「金縛り」を強制解除 ☆ 全自動かなほど機(2019-04-01)
睡眠中の金縛り。嫌なものですね…。そこでご紹介するのが、この「かなほど機」。金縛りになったとき、ワサビの匂いで身体を自動リセットする未来の製品です。
さよなら第9惑星・冥王星 カイパーベルト終着駅(2019-03-24)
海王星~海王星~。目蒲めかま線はお乗り換えです。
漢詩と唐代キリスト教 「日本の影響」説も(2019-04-01)
客舍かくしゃ青青せいせい 柳色りゅうしょく新たなり」仏教徒でもあった唐の大詩人・王維(おうい)。彼がキリスト教とも関わっていたことは、ほとんど知られていない。(エイプリルフールのジョーク記事)
円周率は12個の2 スパコンで判明/ほか 3題(2016-04-01)
三原則ロボットおちょくられて仕返し?/円周率は12個の2 スパコンで判明/人間を模倣する学習AI 学習し過ぎ?
ISOとJISによる「ハッカー」の正式な定義(2005-02-19)
JIS規格では「ハッカー」という言葉が定義されてる。
ヒマワリをふてくされさせる実験(2005-02-20)
お花はとってもデリケート。
「確信犯」たちの「開発動機」(2005-09-23)
ストラビンスキー「ファゴット奏者を苦しめてやろうとしてやった。苦しそうな音なら何でも良かった」
「水からの伝言」の世界(2006-08-21)
水さん、ちょっと漏れ過ぎです。
脳内ディベート大会(2009-07-31)
応援団を応援することは正しいか。タンポポの綿毛を吹いて飛ばしていいか。

漫画・アニメ

大島弓子の漫画 (チラ裏3題)(2019-04-28)
バナブレは「漫画で何ができるのか?」という世界の枠組みそのものを変えた。綿国(わたくに)は、漫画・アニメ史上「猫耳の発明」という意味も持つ。もともとは「自分は半分人間だと思っている子猫」の主観的世界を表す絶妙な表現。
ラピュタ滅びの呪文は波動砲かフェーザー砲か?(2006-01-28)
ムスカは、ジブリ作品では珍しい悪役と評されるが、ラピュタ文字の解読は、現実世界ならノーベル賞もの。
勇者よ、侵略者から東京を守れ(2006-01-22)
「ブジュンブラにキメラアニマが現れたわ!」 お気に入りのネタだが、アニオタ以外の一般人には意味不明かも。
チラ裏
アニメ関係の小ネタも多い。イタリアのアニメ事情もあるよ。

字幕

MKV埋め込み字幕用フォントのMIME問題 (2019-10-20)
字幕用フォントが、ロードされない事例が起きている。問題の背景・対策・対応状況。
SSA入門 中級編(2004-08-27)
二つの入門編(音声タイミング・基本スタイリング)に続くフレーム・タイミング関連の内容。古い記事で使用ツールは時代遅れだが、考え方は依然参考になるかも。
[SSA/ASS] 高品質のフェイドイン・フェイドアウト(2005-12-21)
単純な fad() は濁りやすい。各種の代替手段を紹介。
ASS: 縁ワイプと縦カラオケ(2006–2009)
字幕と音声のずらし方/縁ワイプ/字幕のリップシンク/縦カラオケ/他。古い記事だが参考までに。

哲学・ファンタジー

60%他の生物【人体の細胞】100%星くず(2019-02-24)
ヒトの体は約25兆の細胞から成るが、体には65兆の細胞が…。本人以外の40兆は何なんでしょ? 〔v8: 2019年4月18日〕
至るところ青山 (チラ裏3題)(2019-04-14)
3丁目が見えない理由(先行きの不安)は、1丁目にいるからで、2丁目まで行けば自然と選択肢は狭まる。
不死でないから星は輝く (チラ裏3題)(2019-04-14)
「核融合には燃料が必要。燃料を使い果たせば反応は止まる」という当たり前のことを言い換えると「いつかは終わるから今輝いている」。
猫のしっぽを思い切り引っ張ることは十戒のどれに違反するか?(2014-11-23)
南泉は言った。「この猫の命が惜しければ、禅を一言で語れ。さもないと猫を斬り殺す」 〔最終更新: 2019年4月24日〕
神から見た「主の祈り」(2004-10-04)
「天にましますわれらの父よ」 神「はい?」 — へリング牧師は、ジョークのような設定で深い問題を提示した。 〔最終更新: 2013年10月2日〕
「無断コピー以外」を禁止するライセンス(2004-10-04)
人間の心理的困難があまりに大きいようなので、 それに対抗するために、次のような新しいライセンス形態を思いつくほどだ。いわく…
妖精物語 3題(2005-07-02)
王様の赤いばらと白いばら。
「反辞書」の著者フレッド・レスラー(2009-02-03)
Urban Dictionary というサイトをご存じでしょうか。 ウィキペディアみたいな、でもそれよりずっと砕けた新語辞典…

お知らせ

<メールアドレス>