岩瀬順一の「日誌 --- 2012 年」

2012-02-23 (4)

岩瀬順一の「新日本式ローマ字について(補)」』 に「y の代わりに j を使うことも」を追加。

ツイッターのプロフィールの自己紹介を次のように変更。

金沢大学理工研究域数物科学系の教員です。 教えているのは数学とコンピュータプログラミング、 それに教職科目を少々。専門は位相幾何学です。 とくに、4次元多様体の実例を調べています。 日本語のラテン字母表記に用いている新日本式ローマ字については、 私のページをご覧になってください。

「日本語のラテン字母表記に」以下が今回の追加部分である。

facebook の自己紹介を次のように変更。

始めたばかりでよくわからないので、勤務先である金沢大学の関係者を中心に、 “無差別に”「友達になってね」を送っています。迷惑だったら無視してください。 ごめんなさい。

金沢大学理工研究域数物科学系の教員です。 教えているのは数学とコンピュータプログラミング、 それに教職科目を少々。専門は位相幾何学です。 とくに、4次元多様体の実例を調べています。 日本語のラテン字母表記に用いている新日本式ローマ字については、 私のページをご覧になってください。

第二段落が今回の追加部分。ツイッターと同一にした。

2012-04-03 (2)

最初のページの、メールアドレスについてを更新した。

変更前:

メールアドレスは mue.biglobe.ne.jp の前に @ を書き、 さらにその前に iwase47 を書いたものです。

職場のメールアドレスは kenroku.kanazawa-u.ac.jp の前に @ を書き、 さらにその前に iwase を書いたものです。 ただし、学外からのメールは SPAM チェックのため検閲を受け、 あやしいと思われたメールは翌々日あたりに From や Subject のみの一覧として配信されます。 私が読むとしてもそれよりあとです。

変更後:

メールアドレスは biglobe.jp の前に @ を書き、 さらにその前に iwase を書いたものです。

職場のメールアドレスは staff.kanazawa-u.ac.jp の前に @ を書き、 さらにその前に iwase を書いたものです。 ただし、学外からのメールは SPAM チェックのため検閲を受け、 あやしいと思われたメールは翌々日あたりに From や Subject のみの一覧として配信されますが、 いままでに、SPAM でないメールが SPAM 扱いされたことはありません。

最初のページの Constructing real numbers by Dedekind's cuts in a slightly modified way の下に,次のように書いた。

2012-04-05 (4)

大学へ行くために乗ったバスがだんだん混んできて、 若松でつめるために前へ移動したら一番前になってしまった。 きょうは金沢大学中央までゆくつもりだったので、 その一つ手前の金沢大学自然研前で降りる学生の邪魔にならないよう、 一度下車して後ろの入り口からまた乗りなおすことを考えた。 定期券だから乗り降りは自由である。 ところが、乗りなおす時にICaを機械にタッチするのを忘れたらしい。 金沢大学中央で降りるとき、運転士さんに余計な手間をかけさせてしまった。

そのまま金沢大学内郵便局へ。 きのう家に配達されたときに受け取り損ねた郵便物を受け取るためである。 昨晩、ネット上で手続きをして、この局で受け取りたいと伝えたのだが、 郵便物には手書きの

(ここまで書いて,そのままになっていた。 たぶん,次のようなことを書こうとしていたと思う。)

紙がはってあって,そこには伝えた携帯電話の番号が大きく書いてあった。

2012-05-30 (3)

途中まで公開してあった 2009 年度「計算数学」のファイルを公開。 2010 年度,2011 年度「計算数学」のファイルを公開。 (いずれも最初のページから行けます。)

2012-05-31 (4)

きのうは,ファイル cma11/keizi.html が見つからなかった。 職場の PC にあった。きのう, そこで作成し,持ち運び用 HDD にコピーするのを忘れたのだ。

2012-04-03 (2) に書いた加筆部分を削除。 それを用いた新版をアップロードしたので。

2012-06-28 (4)

ツイッターと facebook の, プロフィール内の自己紹介を以下のように改めた。 (facebook のほうはこの前にもう一つの段落がある。)

金沢大学理工研究域数物科学系の教員です。 教えているのは数学とコンピュータプログラミング、 それに教職科目を少々。 専門は位相幾何学,とくに4次元多様体の実例を調べています。 日本語のラテン字母表記に用いている新日本式ローマ字については、 私のページをご覧になってください。 矢内原忠雄「聖書講義」で学ぶも,無割礼・未受洗。

日本聖書協会の文語訳,口語訳は著作権が切れていると聞いたので, さっそくローマ字書きのページを作り始めた。 ここ。 打ち込んだのは口語訳の創世記 1,1 のみ。 まだトップページからリンクをはっていない。

2012-07-22 (0)

大学へ出て,金曜日に行なった試験の採点。 三次元空間の三つのベクトルの一次独立・一次従属の問題は, 連立一次方程式を解くことになる。

意外と間違う学生がいる。 また,非自明な解を見つけるのは不慣れなようだ。 来年度も担当するとしたら, 3年前の連立一次方程式と合わせて取り上げるか。

「計算の途中も,スペースが許すかぎり書いてください」 と言ってあった。 私が念頭に置いていたのは, 三つの式を書いて「これを解くと」はだめで, 「(1) + 3*(2)」のように, どのような式変形をしたのかを書いてもらおう, というものだった。 それを越えて,次のように書いている人が何人もいた。 私には目新しかったが,確かに,間違いは防げる。

           x +  y = 4 ... (1)
          3x + 5y = 14 ...(2)

(1)*3 - (2)

    (1)*3 3x + 3y = 12
-)  (2)   3x + 5y = 14
-----------------------
       -2y  = -2 

2012-07-29 (0)

Rapid Construction of Real Numbers by Half-Cuts」 は,Google で「real number construct cuts」 を検索すると1ページ目の最後,すなわち10番目に表示されるようになったが, 日本語で検索するとなかなかでてこない。 日本語での説明は,最初のページに置いてあるだけ,のせいか。 そこで, 『岩瀬順一の「半切断を用いた,実数体のすばやい構成法」』 を作った。

2012-08-06 (1)

「実数体 構成」で Half_Cuts.html が第 3 位になった。「切断」を省いてこの順位。だいぶ上がってきた。 (「切断」も加えて検索すると第 2 位。)

「real numbers construction」だと,pdf ファイルが第 29 位。 検索語に cuts も加えると第 7 位。

誰かほかの人が話題にしているかなと思い, 私の氏を加えて検索したが。まだ誰も。

2012-08-07 (2)

職場の高校生向け企画「理学の広場」を手伝う。

トップページからのこのサイトのページへのリンクで, もはや古くなって意味のないものには [obsolete] という語をつけることにした。

「実数 構成」で第 1 位にくる,九州大学の原隆氏による 「実数の構成に関するノート」 (2007 年)には, 乗法を定義する際に正の有理数を切断するというアイディアが使われていることを発見。 ただし,有理数 r に対応する切断に { a | a < r } と { a | a <= r } の二通りを考えているので, 議論に手間がかかっている。

half-cut という呼び名は急いでつけたもので,深く考えていない。 正の有理数を切断するから半分でもあり, 上組・下組の片方だけを考えるから半分でもある。

2012-08-09 (4)

きょう・あすと,金沢大学はオープンキャンパス。

金沢大学のオープンキャンパスに行こう!
  〜あなたの十八番(おはこ)が見つかる2日間〜


〜受験生の皆さんへ〜
金沢大学の魅力とは?それは十八番(おはこ)(特技や得意分野)をもった学生がたくさんいること。

「十八番(おはこ)」という語の使い方に,若干の違和感を感じる。 ある機会に発見した自分の得意分野は,十八番とは呼ばないのではあるまいか。 すでに定着しているもの,という感じがある。 Wikipedia にはいろいろな語源説が載っていた。

金沢大学総合メディア基盤センターも参加している。 ウェブページを見ると,「あざみちゃんグッズ」がもらえるようだ。 この少女のようなキャラクタの服装は江戸時代の遊女のそれだ,と聞いたことがある。 ふと,2011-08-25 (4) に書いたことを思い出した。

2012-08-17 (5)

先日,サイゼリヤでぼんやりしていたとき,, 正の実数全体から実数体を構成するのは, 自然数から整数を作るのと同じではだめで, 整数から有理数体を作るところまでやらねばだめだ,と気づく。 『岩瀬順一の「半切断を用いた,実数体のすばやい構成法」』 は修正しておこう。 (.pdf ファイルは総合メディア基盤センターが開くまで,作れない。)

先に,正の実数全体の中では割り算が常に可能, を示しておいたらどうなるだろう?

2012-10-18 (4)

小雨のなか, 1限に金沢大学総合メディア基盤センターで授業の準備をすべく, バスに乗ったら混んでいた。 しかし,よく見るとすきまがある。 左右のつり革につかまって立っている人が2列。 その間に,もう一人立てるのだ。

○ ○ ○ ○      ○ ○ ○ ○
        ではなく  ● ● ●
○ ○ ○ ○      ○ ○ ○ ○

ひとまとまりのウェブページを作るとき, 相互のリンク先を指示する URL は相対表示を原則としている。 まとめて引越しするときに楽だから。

きょう,「計算数学」の index.html の動きがおかしくて, 調べたところ,URL が http:... の形で書いてある。 そんな書き方はしたはずがないと思うが,そうなっているのだから, そうしたのだろう。

(いわゆる)ホームページは,研究室の Windows パソコンで作成し, メールで演習指導用アカウントに送ってから演習室に行く。 演習室で修正した場合, 研究室でそのページを閲覧し, IE の「名前を付けて保存」で研究室のパソコンに取り込む。

いま見ていて気づいたのだが, そうやって取り込んだファイルには 「<!-- saved from url=(0045)http://wwwedu.ipe.kanazawa-u.ac.jp/~z12ect01/ -->」 という行があり,タグが大文字になっている。 つまり,“ソースを保存”とは違うのだ。

2012-11-09 (5)

サイゼリヤから,少し酔った状態で,18:23 に, 次のようにツイッターに書き込んだ。

個人的なメモ:正の有理数を正の有限小数で置き換える。

正の有限小数の半切断で正の実数を定義できる, というアイディアが浮かんだ瞬間である。 (2013-02-04, 自分のツイートをさかのぼって日時がわかったので,記す。)

2012-11-15 (4)

岩瀬順一の「半切断を用いた,実数体のすばやい構成法」』 に次を追加。

(検索エンジンのために:「実数」「定義」も書いておく。)

2012-11-29 (4)

0.2 以下,0.3 以下の有限小数で,掛けて 0.05 になるものを求めてみた

10 倍して,整数の問題に直す。 2 以下,3 以下の数で,掛けて 5 になる数はない。

さらに 10 倍。20 以下,30 以下の自然数で掛けて 500 になる数はない。

ここからはコンピュータに頼った。 すべての数で割ってみる,原始的なプログラムで次を出力。

50000の約数とそれで50000を割ったあまりを印字.
(1, 50000) (2, 25000) (4, 12500) (5, 10000) (8, 6250) (10, 5000) (16, 3125)
(20, 2500) (25, 2000) (40, 1250) (50, 1000) (80, 625) (100, 500) (125, 400)
(200, 250) (250, 200) (400, 125) (500, 100) (625, 80) (1000, 50) (1250, 40)
(2000, 25) (2500, 20) (3125, 16) (5000, 10) (6250, 8) (10000, 5) (12500, 4)
(25000, 2) (50000, 1) 

200 以下,300 以下の自然数で掛けて 50000 になる数はない。

同じプログラムで定数だけを変えて,次。

5000000の約数とそれで5000000を割ったあまりを印字.
(1, 5000000) (2, 2500000) (4, 1250000) (5, 1000000) (8, 625000) (10, 500000)
(16, 312500) (20, 250000) (25, 200000) (32, 156250) (40, 125000) (50, 100000)
(64, 78125) (80, 62500) (100, 50000) (125, 40000) (160, 31250) (200, 25000)
(250, 20000) (320, 15625) (400, 12500) (500, 10000) (625, 8000) (800, 6250)
(1000, 5000) (1250, 4000) (1600, 3125) (2000, 2500) (2500, 2000) (3125, 1600)
(4000, 1250) (5000, 1000) (6250, 800) (8000, 625) (10000, 500) (12500, 400)
(15625, 320) (20000, 250) (25000, 200) (31250, 160) (40000, 125) (50000, 100)
(62500, 80) (78125, 64) (100000, 50) (125000, 40) (156250, 32) (200000, 25)
(250000, 20) (312500, 16) (500000, 10) (625000, 8) (1000000, 5) (1250000, 4)
(2500000, 2) (5000000, 1) 

2000 以下,3000 以下の自然数で掛けて 5000000 になる数はない。

同じく,定数だけを変えて。

500000000の約数とそれで500000000を割ったあまりを印字.
(1, 500000000) (2, 250000000) (4, 125000000) (5, 100000000) (8, 62500000)
(10, 50000000) (16, 31250000) (20, 25000000) (25, 20000000) (32, 15625000)
(40, 12500000) (50, 10000000) (64, 7812500) (80, 6250000) (100, 5000000)
(125, 4000000) (128, 3906250) (160, 3125000) (200, 2500000) (250, 2000000)
(256, 1953125) (320, 1562500) (400, 1250000) (500, 1000000) (625, 800000)
(640, 781250) (800, 625000) (1000, 500000) (1250, 400000) (1280, 390625)
(1600, 312500) (2000, 250000) (2500, 200000) (3125, 160000) (3200, 156250)
(4000, 125000) (5000, 100000) (6250, 80000) (6400, 78125) (8000, 62500)
(10000, 50000) (12500, 40000) (15625, 32000) (16000, 31250) (20000, 25000)
(25000, 20000) (31250, 16000) (32000, 15625) (40000, 12500) (50000, 10000)
(62500, 8000) (78125, 6400) (80000, 6250) (100000, 5000) (125000, 4000)
(156250, 3200) (160000, 3125) (200000, 2500) (250000, 2000) (312500, 1600)
(390625, 1280) (400000, 1250) (500000, 1000) (625000, 800) (781250, 640)
(800000, 625) (1000000, 500) (1250000, 400) (1562500, 320) (1953125, 256)
(2000000, 250) (2500000, 200) (3125000, 160) (3906250, 128) (4000000, 125)
(5000000, 100) (6250000, 80) (7812500, 64) (10000000, 50) (12500000, 40)
(15625000, 32) (20000000, 25) (25000000, 20) (31250000, 16) (50000000, 10)
(62500000, 8) (100000000, 5) (125000000, 4) (250000000, 2) (500000000, 1) 

20000 以下,30000 以下の自然数で掛けて 500000000 になる数はない。

これ以上は,int 型が 32 ビットなので,同じプログラムは使えない。 上の出力から,隣り合ったペア (16000, 31250) (20000, 25000) に注目。 double 型に切り替え,次のようにした。 (実際には,160000, 1600000 でも試してみた。)

#include <stdio.h>

main() {
    double i;

    for (i = 16000000; i <= 20000000; i++) {
        printf("%lf, %.60lf\n", i, (double) 5000000000/i);
    }
}

そして,次のように実行。 誤差があるから,0 がどれだけ並んだら求める答えなのかよくわからない。 そのため,grep を用いている。

$ ./a.out | grep "000000000000000000000000000000000000000"
16000000.000000, 312.500000000000000000000000000000000000000000000000000000000000
16384000.000000, 305.175781250000000000000000000000000000000000000000000000000000
16777216.000000, 298.023223876953125000000000000000000000000000000000000000000000
17614202.000000, 283.861851930618286132812500000000000000000000000000000000000000
17709978.000000, 282.326719999313354492187500000000000000000000000000000000000000
18618182.000000, 268.554684877395629882812500000000000000000000000000000000000000
19531250.000000, 256.000000000000000000000000000000000000000000000000000000000000
20000000.000000, 250.000000000000000000000000000000000000000000000000000000000000
$

下から二つめは条件を満たしているようだ。確認。

#include <stdio.h>

main() {
    double i = 0.1953125;
    double j = 0.256;

    printf("%.10lf * %.10lf, %.60lf\n", i, j, i*j);
}

実行結果は次のとおり。下のほうは誤差であろう。

$ ./a.out
0.1953125000 * 0.2560000000, 0.050000000000000002775557561562891351059079170227050781250000
$

256 は 28 である。電卓で確かめると,1953125 は 59 だった。

Google で「実数」を検索すると第3位, 「実数体」だと第1位!


岩瀬順一 (IWASE Zjuñici)