憂鬱な午後のひととき

計さんの日記 を見ていたら私も書いてみたくなったというわけで

4月30日_
・ようやく休みに突入. 今日は疲れが溜まっていたため寝てました.
・ADSL 申し込み時に web page 申請もしたのに返事が来ないなあと思っていたんですが, よく考えたら一度も新しいメールアドレスをチェックしていなかった.
4月29日_
・mp3はよく誤解されているからそれを正そうって言う 今月号のDOS/Vマガジン の記事
「FhGはmp3の著作権をたくさん持っているメーカー」って一体...
それからどうせ比較するなら2年前のバージョンでなくてもっと新しいのにして欲しかったり.
続続クローン
私は計さんみたいに logical には割り切られない. 自分が殺されるのは当然やだけど, 他の人が不幸になるのもやだな. でも良く考えたら (他人の不幸を見るのがやだから)やだというのでは偽善的というか結局自分第一なのかも.
#て言いつつ新聞で酷い事件を見るとすぐ「死刑だ」って思ってしまう. 矛盾してますな.
後半についでは御意.
ところでもし機会があれば『殺人症候群』(貫井徳郎)の感想聞かせてくれると嬉しい. 私にはやりきれなさが残った.
4月28日_
法律による禁止の是非
ま, そうなんですけどね. でも現代社会では「殺人」は禁止されてるのが自然なように, 「クローン人間」も禁止されてるのが自然な社会であって(or となって)よいのではないかと私は思う.
#逆に殺人はなんで駄目なの?とかいいだすとわけわかめになってしまいそうだけど.
そういや 今夜、すべてのバーで [中島らも] では酒や煙草を野放しにしてアルコール中毒や肺がん患者をたくさん出してる社会はコーヒーを禁止していた中世ヨーロッパを笑えるのか, みたいなことが書かれてました. 何が正しいってわけじゃないんでしょう.
4月27日_
長時間 (休憩挟んで8時間?) のディスカッションで頭がウレタン.
4月26日_
珍しく友達としゃぶしゃぶを食べに行く. 2500円と手ごろでおいしかったんだけどお肉が3切れだったのはものたりない. 今度はおかわりをしよう.
・↓
普通の人間でもある日突然まわりから一切無視されると発狂するって聞いたことがある. そういう精神的極限下での人間は極めてもろいと思う. だとするとクローン人間は, 自分がどうやって何のために生まれたかを知ったときに 起こるであろう衝撃に耐えられるとは思えないし, そもそもそういう状況を作るのは どうかと思う.
4月25日_
「神」に対して暗黙のリミッターを自らにかけてあきらめちゃう程人類は弱くないと思う.
神を単なる目標の通過点と見なす考えは私には目新しい.
私の場合, 強く印象に残っているのは15年前に書かれた 今はもういないあたしへ….
最近話題のクローンが主題なんだけど作中で語られるクローン人間の心象世界が無条件に怖い. こういうのを読むと, 人間ってやっちゃいけないこともあるんじゃないかと思ってしまう.
今日もウイルスメールは12通. 数えるのやーめた.
4月24日_
近所の川にロープを張ってこいのぼりがたくさん吊り下げられていた. まるで魚の日干しを作ってるかのよう. 6mぐらいのこいのぼりもありちょっと妙な風景.
いつか猫になる日まで
計さんレビュー書きませんか?
今日のウイルスメールは12通.
4月23日_
10時半に帰宅. 日にちを勘違いしていた. 発表原稿締め切り明日やん(T_T).
今日のウイルスメール13通. 140KB や 160KB のもあり. 最近でかいぞ.
4月22日_
・ここしばらく自分のタスク管理が滅茶苦茶.
どうも優先順位の低いほうから処理してるっぽい...って単なる逃避行動か.
完敗
ただ不等号の向きのポカミスと最後の O(√N) が O(N^2) の表記ミスを除けばオーダーはあっていたので許して(^^;
4月21日_
顔見知りのみ知らぬおじちゃん(妙な表現だ)から突如近所のハイキングに誘われてついていってしまう.
参加者は(おじちゃん|おばちゃん|ちびさん)*で同年代の人は殆どいなかった(^^;
3時間で約6kmをゆっくり歩く. 雲行きが怪しかったけど最後まで天気が持った.
・計さんから午後の MDCT を催促される. 遅れてます. すんません.
愛のひだりがわ[筒井康隆] を読む. 最初童話かなと思っていたら実は SF みたいでラストは「桃太郎」みたいな不思議な印象. この感想はファンに怒られるかな? でも良かったのは確か.
4月20日_
・ケーブル続き
扉が邪魔して LAN ケーブルを引っ張ってくることが出来ないことが判明(先に気づけよ...). というわけで結局もとのままでいくことにしました. そのうち無線 LAN にしようっと.
浮動小数の格納形式 で bit 範囲の間違いのつっこみ.
オリジナルの発見の方 とそれを知らせてくださった計さんありがとうございました.
4月19日_
・ケーブル
yukiusaさんのつっこみ
>こういう場合、モジュラケーブルを最短にして、 ADSL モデムくっつけて、
>そこからLANケーブルを延長したほうが、速度低下しにくいと思います。
そうらしいですね. ただいちいちそっちまでモデムの電源を入れにいくのが面倒というか(^^;
ちなみに実測したらケーブルの長さは 13m もありました. 素人目にもこれでは速度劣化しそうです. 早速 10m の LAN ケーブルを買ってきてつなげてみました. 結果は殆ど変わらず. ま, あまり細かいことは気にしないということで(^^; それよりもますますウィルスメールが増えているのがやな感じ.
4月18日_
家の構造上モジュラケーブルを延長しつつ 7m 以上ひっぱりまわして ADSL モデムにつなげてます. モジュラジャック直近との速度比較をしたら 2.9Mbps 対 4.3Mbps. この差は大きい. もったいない.
殆ど使っていなかった Win2k マシンの windows update をする. 今まではネットにつなげてなかったからだけど SP1 すら当ててなかったのでかなり時間がかかった. で, 何度もリブートを繰り返しようやく終わったと思ったら画面の解像度が滅茶苦茶低い (プロパティでみると1600x1200なのに).
なんと起動時のパスワード入力ウィンドウが画面からはみ出ていてる(笑). 19インチモニタでこの字の大きさは圧巻. でもリブートしても直らないぞ.
4月17日_
3通/1時間のペースでウィルスメールがやってくる.
やめてくれ~.
ちょっと昔の午後を発掘してました.
遡ること何と4年前の 1998年6月.
socket5 に無理やり K6-166 を載っけた マシン(TOWNS : 今も使ってる(^^;) で開始しました.
NASM の存在は知っていたけどあまり乗り気でなかったので 当時最新?技術であったMMXや3D Now!に対応すべく 自前の怪しい アセンブラ +(Linuxで動かすための恥ずかしくてとても見せられないコンバータ)+ デバッガもどき でプログラムしてました.
漸化式↓の問題が少し解決.
xn+1=sin xn について
yn= tan (xn/2) とおくと sin xn = 2yn/(1+yn2) より yn+1= tan (yn / (1+yn2)) .
tan x は x + 1/3 x3 + 2/15 x5 + ...とローラン展開できるので
x が十分小さいときは tan x <= x . よって yn+1 <= yn / (1+yn2) .
wn = 1 / yn2 とおくと wn+1 = 1 / yn+12 >= (1/yn + yn)2 = wn + 1/wn + 2 >= wn + 2
したがって少なくとも wn は 2n のオーダで増える.
元に戻って yn つまり xn はその逆数平方根の 1/√(2n) よりは 速く小さくなる.
逆側からも評価はまだだけど [1/fn] = N となる n は O(√N) よりは大きい.
ついに ADSL開通(^^)
4月16日_
fnの挙動 , 考えてみたけど結構難しい.
y=sin(x) は x > 0 が十分小さいとき x - x3/3 に近いので {fn} は単調減少数列. 加えて fn > 0 なので下に有界だから収束する. 極限を α とすると α = sin(α) より α = 0. こっからが問題なんですが...
4月15日_
酷い肩こりからくる頭痛. 吐き気する(T_T)
最近ウイルスメールが凄く多い. しかもでかい(100KBオーバー)なんでうっとうしい.
おとついの問題 の答えは 8/(1-1/5) でした.
4月14日_
↓の問題の 計さんによる順序入れ替え無しの答え
√ を2回使うのがなかなかうまいです.
ちなみにいろんな記号を使ってもいいなら昔完全な一般解を見つけました.
2つの勝手な数からほぼ任意の数を作ることが出ます.
#ま, だから四則演算 (+√やべき乗) に制限したいんです.
[やり方]
a を勝手な数とすると x=sin(sin(a)) は 0<=x<1 なのでガウス記号を使うと [x]=0.
階乗記号 ! を使うと 0!=1 なので [sin(sin(a))]! = 1. こうやってまず2つの1を作ります. 後は
f_n=sin(sin(...(sin(1))..))
      ← n 回繰り返す →
を考えると f_n はゆっくり減少する関数なので [1/f_n] はどんな数字にもなるはず (証明はしてないけど).
試してみるとこんな感じ.
int calc(int n)
{
    double x = 1;
    int i;
    for (i = 0; i < n; i++) {
        x = sin(x);
    }
    return (int)(1 / x);
}
calc(9)=2
calc(23)=3
calc(44)=4
calc(70)=5
calc(103)=6
calc(142)=7
calc(187)=8
calc(238)=9
calc(295)=10
calc(358)=11
calc(426)=12
calc(501)=13
calc(582)=14
calc(669)=15
calc(762)=16
calc(861)=17
calc(966)=18
calc(1077)=19
ここまでくると次に気になるのは [1/fn]=N となる (最小の) n は N についてどんな関数か? という問題です. 難しそうですが(^^;
4月13日_
今日もセミナーで一日終わる. 暗号ってのはいろんな陰険な攻撃も想定しないといけないので 心がひねくれてしまいそう?(^^;
「電車の切符に印刷された4桁の整理番号を使って四則演算をすることで 先に10をつくった方が勝ちというゲーム*」をする方を発見. 女性では珍しいかも.
いわゆる文系の方にその説明をすると(男女の区別無く)かなりの確率で 「そんなんして何が面白いん?」という返答が返ってきます.
学部による差異があるのか知りませんが理系の方では半々ぐらいかな.
中には「数字の順序を入れ替えちゃ駄目ですよ~」という厳しい条件(笑)を つけてる女の方もいはりましたが.
*例えば整理番号が 1234 だったら 1*2*3+4=10.
難しいのでは例えば 1158 とか. 暇な方は悩んでください.
4月12日_
窓立て2 受けました. すばらしい.
去年一部で話題になった ジャンプ[佐藤正午] を読む. 男性の心理がよーわからん. 恋人がコンビニに行くと言ったきり帰ってこなかったら仕事してないですぐ探すと思うのだけど.
4月11日_
なんとなく百貨店に寄ってみる. 普段紙と鉛筆と本とパソコンの世界なだけにやけに新鮮. 18万円の椅子もあった. そんなの気軽に座れん気がするけど. ふらふらと店員の言われるままに服を買ってしまう.
4月10日_
黄色い本[高野文子] を買う.
必要に迫られて学部から修士にかけて読んでいた(はずの) Riemann 面の本を引っ張り出す. んでドイツ語の本だったのを思い出す. 最近英語ですらあやふやなのにそんなもん分かる訳ない(笑).
ノートを見てもさっぱりで, 「自分のコードも半年後には他人のコード」 を地でいってるというかなんというか. どうすんねん...
4月9日_
酷い肩こりから来る頭痛(T_T).
...だいぶ治まりました.
ところで問題.
unsigned char な a, b, c, d について (a+b+1)/2 を簡単に求められるとき 途中の結果が 256 を超えないままどうやって (a+b+c+d+2)/4 を計算したらいいですかね. > 名指しで計さん(^^; 答えは BBS にお願い.
4月8日_
木曜日の自主ゼミのための予習とか dsk のアイデアの吟味とかその他もろもろ.
ADSL の開通は来月らしい. その暁にはお大尽モードの 午後も楽勝でとれますね(^^.
#しかしこんな巨大なもの, PENさんたちの自宅サーバは大丈夫なんでしょうか?
#リリース直後はかなり悲鳴をあげていたようですが.
4月7日_
風邪がだいぶ治まったので 5km ほど軽く走ってみる.
午後の MDCT の最適化開始. VC++ で 2割ほど速くなった. もうちょっとテーブルを並び替えて SIMD 化しなきゃ.
酒居さん が私の書いたへぼ心理解析ルーチン for SSEの書き換えをやってます. 次版が楽しみ.
4月6日_
風邪と寝不足で頭が動かないのに dsk や先生方と Oblivious Transfer を使った とあるプロトコルの議論.
うー, 最近重いタスクが増えて処理しきれないかも.
しかも昨日 すぎうらさん 経由で新たなタスクが起動. こちらは全く負荷率が予測できん.
・頭がぼけっとしたままカードを使おうとしたら 3回暗証番号入力に失敗してカードが無効になってしまった(泣).
4月5日_
風邪が酷くなってかなりピンチ. 寝ていたい...
錦通信 閉鎖. 新刊のレビューが好きだったのにショック.
4月4日_
午後の名称の由来< 計さん
なんと明かされていたのか. 知らなかった(この隠語の存在も知らなかった).
#20分/1日の定額プロバイダなんでまだダウンロードすらしてないし.
ちなみに本家 FAQ は 午後のFAQ であってます.
専門家の方 この状況 を実現するための小道具を教えていただく.
証明しないといかんけどいい感じ. 代わりに楕円曲線とか複素トーラスとかの話.
3時間以上も居座ってごめんなさい.>喫茶店の店員さん
このおふざけ とは無関係なんだけど, 某所からメールがやってきました. まず無茶苦茶な日本語なのが凄い (注 : クレームではないです). それよりも笑えるのは何故か私が「海兎株式会社」(PEN@海猫さんの連想?) にいることになってること. どういう経路をたどったんでしょうね.
4月3日_
・しんどくてお昼はばなな1本だった. 夜はおそば. おなか減った.
・ついに, ようやく, とうとう ADSL の申し込みをする.
Dual Athlon / Dual Xeon のアカウントをもらったのでがんばらねば.
・ちなみにAthlon-XPのせいで午後の音響心理解析 for SSE が怠けてるのがばれてしまった.
      func\unit     SSE    3DN
    inner_psy_sub1  5.65   5.35
    inner_psy_sub2  3.82   3.32
    inner_psy_sub3  23.0   19.5
    inner_psy_sub4  13.7    9.8
    inner_psy_sub5  15.7   13.4
    inner_psy_sub6  3.73   3.34
                            Kclk(訂正 by 計さん)
    (*) 数字が小さいほど速い
これが 3D Now! の優位性を示してるのかどうかは分からんけどちょっとは挽回しないと.
#SSEルーチンの中には asm で書いて実行したら動いたのでそのまま無修正ってのもあったりする.
4月2日_
↓の問題についてメール(?)があったのでちょっとだけ解説

例えば苦労してソフトを作った私はシェアウェアにしてお金もうけをしようとたくらんだとします. んで、そのソフトになんらかの制限解除鍵の機能をつけようと思いたちました.

一番単純なのはお金を払った人全員に同じ鍵を「こっそり」教える方法ですが, それだとどこかでリークされてただで使われてしまう危険性があります.

そこで相手に ID を割り振り, それに応じた鍵のペアを渡してやるという方法をとろうと思います. それならどこかでリークしても誰がやったかある程度分かるかもしれません.

もうちょっと用心して ID 自体を, そのユーザが誰にも(シェアウェア作成者にすら) 教えたくない数字にしてしまえればいいかもしれません.
状況を設定するとこんな感じ

シェアウェア作家 M が解除鍵の種 S を持っている.
ユーザ U は例えばクレジットカードの暗証番号 I を用意する.
なんらかの一方向性関数(俗にハッシュ関数)φ, φ'を2つ固定する.
「うまいやり方」をして U は φ(I, S) をもらい, M は φ'(I) をもらう.
M は φ' をカード会社に渡してφ'(I) を計算してもらい U の正当性をチェック.
シェアウェアソフトは I と φ(I, S) から S を復元できれば制限解除を行う.

これを実現するための簡単なモデルとして
         U                  M
  秘密  a, s              b,  t
          ------------------>
        なんらかのうまいやりとり
          <------------------
             ..........
          ------------------>
             ..........
          <------------------
  b, tを知らないけど
  st(a+b) を get             a, sは分からんまま
てな状況を考えてこれが出来たらなあと思ったのでした.
4月1日_
突然の 午後バイナリ配付 の背景には SSE2 最適化が 3D Now! 最適化よりも進んでいるため*1 午後べんちのスコアにおいて Pentium4 の Athlon に対する優位性が示されていることを歓迎した○ンテルが多大な バックアップをしてくれた上, 私たちの代わりにF○G に特許料を払ってくれたからである. ...というのはうそだよん. [注*1] 午後べんち掲示板
それはともかく全く話は変わるが帰りの電車の中で考えていたのはこんなこと.

A さんと B さんがいて, お互い秘密の数字 {a1, a2}, {b1, b2} を持ってるとする. 何回かやり取りすることでお互いがその数字を知ることなくAは a1 b1 / (a2 + b2) を知る方法があるのか? という問題.

「なんじゃそりゃ?」と言わず, どなたか分かったら教えてください.m(__)m
私は配付に対してはタッチしないというスタンスだったりする

御意見は光成滋生<herumi@nifty.com>までお願いします