鳳鳴は祖父の俳号

日記 メモ そんなの

Microsoft Mathematics

 グラフがすぐ描けておもしろかった。
数学の学習支援ソフト「Microsoft Mathematics」v4.0が更新、UIが日本語化 - 窓の杜
「Microsoft Mathematics」操作が手軽な数学の学習支援ソフト - 窓の杜
Download Microsoft Mathematics 4.0 (英語) from Official Microsoft Download Center
Download Microsoft Mathematics Add-In for Word and OneNote from Official Microsoft Download Center

コード学習 - Microsoft Education

Windows10でスタートメニューが開かない

 1日前からなぜかWindows10のスタートメニュー(田)が開かなくなった。再起動したらなおったがまた同様。

Windows10 スタートメニュー 開かない で検索。

Windows10のスタートメニューが表示されない・開かない不具合の対処法/解決方法 - 経営企画・マーケティング | ボクシルマガジン
エラー

管理者権限でコマンドプロンプトを開いて実行した結果:
Microsoft Windows [Version 10.0.15063]
(c) 2017 Microsoft Corporation. All rights reserved.

C:\WINDOWS\system32>dism /online /cleanup-image /restorehealth

展開イメージのサービスと管理ツール
バージョン: 10.0.15063.0

イメージのバージョン: 10.0.15063.0

[==========================100.0%==========================] 復元操作は正常に完 了しました。
操作は正常に完了しました。

C:\WINDOWS\system32>sfc /scannow

システム スキャンを開始しています。これにはしばらく時間がかかります。

システム スキャンの検証フェーズを開始しています。
検証 100% が完了しました。

Windows リソース保護は、整合性違反を検出しませんでした。

C:\WINDOWS\system32>

この後、powershellでコピペして作業するもエラー。次にstartmenu.diagcabを実行したが修復対象がない旨のメッセージ。再起動したらなおったがしばらく様子見。
最悪、アカウントを追加してそちらに移らないといけないみたい。

GNU APL 1.7 インストール挑戦中(5) FILE_IO

 ZZZZ.tc.log: 以下で値が異なる。

        • > )CLEAR

== CLEAR WS

        • > )HISTORY CLEAR
        • > "UCS strings:" (⎕FIO ¯13)

apl: ⋅⋅⋅ UCS strings: 456 ⋅⋅⋅
ref: ⋅⋅⋅ UCS strings: 441 ⋅⋅⋅

 従来、原始関数FILE_IOだったものをシステム関数⎕FIOに書き換えている。

GNU APL

wslib5/FILE_IO.apl の最後の方に、番号に対応する機能一覧がある。
APL: wslib5/FILE_IO.apl | Fossies
⎕FIO[3]はオープン、⎕FIO[4]はクローズ。

しかし-13ってなんだろう?

[Bug-apl] ⎕FIO

ウィンドウファンの交換

 部屋の整理をしている。父が亡くなり、使わなくなった部屋を空にして生活を集約したいと思ったためだ。二階の自室の荷物を整理していると父が階段を上がってきた。私が使っている学習机に座りこれは使っているのか、と。もちろん今も使っている。この部屋を使っていきたいが夏は暑すぎて居られない、ウィンドウファンをエアコンに交換できないか、と窓に付いているウィンドウファンを外せないかどうかためす。上部の保護金具を外し、たくさんのネジが見える。内側に引っ張れば案外と楽に外せた。三十年以上ぶりにアルミサッシの窓を完全に閉めることができた。あとはこの外したウィンドウファンをどう捨てるかだが、父にお願いしよう。この時点で父はずっと家にいるものと思っている。

GNU APL 1.7 インストール挑戦中(4) 複素数の計算結果の表示(MacOSX)

 これはちょっと脱線。MacOSX 10.11.6 Apple LLVM version 8.0.0 (clang-800.0.42.1) の結果。

 なぜか数値のうしろに(必要のない)E0が付いている。このテストケースでは数値の表示フォーマットを操作している箇所はなかった。

□Circle_Functions.tc

        • > 0 ¯1 ¯2 ¯6 ¯7 ∘.○ ¯2 ¯2J0

apl: ⋅⋅⋅ 0J1.732050808E0 0J1.732050808E0⋅⋅⋅
ref: ⋅⋅⋅ 0J1.732050808 0J1.732050808⋅⋅⋅
apl: ⋅⋅⋅ ¯1.570796327E0J1.316957897E0 ¯1.570796327E0J1.316957897E0⋅⋅⋅
ref: ⋅⋅⋅ ¯1.570796327J1.316957897 ¯1.570796327J1.316957897⋅⋅⋅
apl: ⋅⋅⋅ 3.141592654E0J1.316957897E0 3.141592654E0J1.316957897E0⋅⋅⋅
ref: ⋅⋅⋅ 3.141592654J1.316957897 3.141592654J1.316957897⋅⋅⋅
apl: ⋅⋅⋅ 1.316957897E0J3.141592654E0 1.316957897E0J3.141592654E0⋅⋅⋅
ref: ⋅⋅⋅ 1.316957897J3.141592654 1.316957897J3.141592654⋅⋅⋅
apl: ⋅⋅⋅¯5.493061443E¯1J1.570796327E0 ¯5.493061443E¯1J1.570796327E0⋅⋅⋅
ref: ⋅⋅⋅¯0.5493061443J1.570796327 ¯0.5493061443J1.570796327⋅⋅⋅

GNU APL 1.7 インストール挑戦中(3) テストケースの演算精度について

※以下の結果はビルドするときに
export CC=clang ; export CXX=clang++
を実行したものと
export CC=clang ; export CXX=clang++ ; export CFLAGS="-mno-sse"
を実行したときで差がなかった。オプションの指定が違う?

□Format_by_spec.tc.log:

        • > 22 0⍕2⋆70

apl: ⋅⋅⋅1180591620717411500000⋅⋅⋅
ref: ⋅⋅⋅1180591620717411303300⋅⋅⋅

両側型⍕は書式設定 m n⍕数値 で 全体m桁、nは小数点以下の数
22 0⍕2⋆70
1180591620717411500000
期待値は 1180591620717411303300

clisp,sbclにて
(print (expt 2 70))
1180591620717411303424

倍精度演算(sse使用)か拡張倍精度演算(x87使用)かが怪しそうだったので近辺を調べる。

20 0⍕2⋆53
9007199254740992
(print (expt 2 53))
9007199254740992

20 0⍕2⋆54
18014398509481985
(print (expt 2 54))
18014398509481984

結果が奇数なのはおかしい。また、倍精度は仮数部52bit ケチ表現で53bit相当なので倍精度を使用してこの違いが出ているような気がする。
拡張倍精度は仮数部63bit+符号1bitだけど、2の70乗なら余裕でオーバーするはず。
ひょっとしたら丸めモードだろうか?切り捨てになっていれば仮数部は111111... の後表現仕切れない箇所は..000となってしまうはずなので要確認。

□ZZZ0_Standard_20x.tc.log:

        • > 31 0 ⍕ 2⋆100

apl: ⋅⋅⋅1267650600228229500000000000000⋅⋅⋅
ref: ⋅⋅⋅1267650600228229401300000000000⋅⋅⋅

(print (expt 2 100))
1267650600228229401496703205376

同様に2のべき乗なので同じ問題。

追記:MacOSX 10.11.6 Apple LLVM version 8.0.0 (clang-800.0.42.1) だと
Format_by_spec.tc も ZZZ0_Standard_20x.tc も一致している。んんん?


□MatrixInverse.tc.log:

R←3 3ρ1 2 3 2 4 5 3 5 6
Z←⌹R

Rの行列を定義
R
1 2 3
2 4 5
3 5 6

ZはRの逆行列
Z
1 ¯3 2.000000000E0
¯3 3 ¯1.000000000E0
2 ¯1 4.458620281E¯15

以下の記述で整数に直してあるけどこの結果を使っていない。
⌊Z + 1E¯12
1 ¯3 2
¯3 3 ¯1
2 ¯1 0

ここで比較エラー。
R+.×Z
1.000000000E0 ¯3.108624469E¯15 2.273630597E¯15
0.000000000E0 1.000000000E0 8.864091330E¯17
¯1.776356839E¯15 8.881784197E¯16 1.000000000E0

本来やりたかったのはおそらく以下。

R+.× ⌊Z + 1E¯12
1 0 0
0 1 0
0 0 1

ということでこれはテストケースのほうが悪いと思われる。

GNU APL 1.7 インストール挑戦中(2) clangによるビルド

続き。
export CC=clang ; export CXX=clang++ で ./configure して make。

ログはこちら。BoW: build GNU APL 1.7 Bash on Ubuntu on Windows (16.04) by clang · GitHub

testcases/*.tc実行結果のうちエラーをピックアップ。
BoW: build GNU APL 1.7 Bash on Ubuntu on Windows (16.04) by clang · GitHub

大きくわけて4種類のエラー。
・FILE_IO関係 全体的に出ている。
・数値演算の精度に関するもの
逆行列 MatrixInverse.tc
・その他 引数などシステム関係

 倍精度演算の精度に関しては、x87の拡張倍精度とSSEの倍精度の違いかもしれないと思い、
export CFLAGS='-mno-sse'
を追加してビルドしてみたが変わらず。おそらく、倍精度演算はライブラリ(lapackあたり)でやっているのではないだろうか。
 某氏にも見てもらったがリファレンス値が変だとのこと。testcasesは1.6から追加され、1.7で大幅に増えているためまだちゃんとしていない箇所があるのかもしれない。

これらの結果はWSL(Bash on Ubuntu on WIndows)ではないUbuntu16.04LTSでも実行して同じだった。WSLの互換性は高いのではなかろうか。

ということでとりあえずの動作はOKとして、画面表示と文字入力に着手する。

GNU APL 1.7 インストール挑戦中(1)

 Windows10のCreatorsUpdateでBash on Ubuntu on Windows(WSL)が16.04になった。更新方法はPowershellを管理者モードで実行し、
lxrun /uninstall /full
をやってまっさらにした後に
lxrun /install
で再インストール。sudo apt-get update ; sudo apt-get upgradeもやっておく。

×gdeblでのパッケージインストールは失敗

GNU APLにはdebianのパッケージがあるので、Ubuntu上で.debをインストールできるgdblを使ってみた。あらかじめftp:/ftp.gnu.org/gnu/apl/以下より apl_1.7-1_amd64.debを入手しておく。

$ sudo apt-get install gdebi
$ sudo gdebl apl_1.7-1_amd64.deb

...
install-info: warning: no info dir entry in '/usr/share/info/libapl.info.gz'

ダメでした。普通のUbuntu 16.04LTS上でやっても同様の結果。ソースからインストールすることにする。

□ソースからのインストール
ソースはGNUのサイトからapl-1.7.tar.gzを取得し展開。

$ wget ftp://ftp.gnu/org/gnu/apl/apl-1.7.tar.gz
$ tar xvzf apl-1.7.tar.gz

g++とmakeを入れておく。
$ sudo apt-get install make g++
$ cd apl-1.7
$ ./configure
$ make

これでsrc/以下にaplができた。
$ cd src
$ ./apl

□表示の問題
色の表示が変。実行結果が見えない。おそらくコンソールの問題。)OFF

$ ./apl --noColor
5 5 ρ 5
実行結果は見えるようになったが、ρの文字が見えない。

□テストでコアダンプする(g++)
とりあえずこれはおいといて、テストを行う。src/testcases/ 以下にリグレッションテスト用のファイル群がある。

$ ./apl --noColor -T testcases/*.tc

コアダンプして停止するテストがある。COPY.tcを含め全部で3本。
double free or corruption (fasttop) ...
libc.so.6で発生している。

この現象はUbuntu 16.04LTSでも同じ。

□clangでコアダンプはなくなった
いったんBoWの環境をまっさらにし、g++の代わりにclangを入れてみた。
$ sudo apt-get install make clang

色の表示が変なのはあいかわらずだが、テストでコアダンプ終了はなくなった。エラー報告はある。

今回はここまで。

WindowsPhone WPJ40-10

株式会社ジェネシスホールディングス | JENESIS HOLDINGS

 通話はガラケーなのでこれはテザリング用と思って買った。三ヶ月ほど使っているが便利。iOSAndroidに比べてアプリがないのはしょうがないがあんまり気にならない。twitterアプリやMicrosoft Majong(上海)あるしね。