Notes onhttps://ar.falsy.cat/note/Recent content in Notes onHugo -- gohugo.ioen-us2人の幼女と悪魔とチェス盤https://ar.falsy.cat/note/word-play/two-lolita-devils-and-chess-board/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/word-play/two-lolita-devils-and-chess-board/概要 「2人の幼女とチェス盤の部屋」という次のような論理問題を解説する 以下の手順の後,幼女Bが任意の整数$x\left(0\leq x&lt;64\right)$を求められるようにするには,幼女Aはどのような操作を行うべきか 悪魔が8x8チェス盤の各マスに1個ずつ,合計0個以上64個以下のポーンをランダムに配置する 悪魔は幼女Aにチェス盤を見せ,任意の数字$x\left(0\leq x&lt;64\right)$を伝える 幼女Aは,チェス盤に対して次のいずれかの操作のうち可能であるものを1回だけ必ず行う 任意のマスからポーンを1個だけ取り除く 任意のマスにポーンを1個だけ追加する 悪魔は幼女Bにチェス盤を見せる 問題の簡潔化 $f(g(b,x))=x$とできるような写像$f,g$を求めよ $B=\left\{0,1\right\}$ $b\in B^{64}$ $x\in B^6$ $f: B^{64} \rightarrow B^6$ $g: B^{64} \times B^6\rightarrow B^{64}$ $b$と$g(b,x)$は1ビットだけ異なる 解答 $f(b)=f_0\oplus f_1\oplus f_2 \oplus \dots \oplus f_{63} \quad\left(f_i=i b_i\right)$ $b&rsquo;=g(b,x) \implies b&rsquo;_m \neq b_m\quad\left(m=x\oplus f(b)\right)$ チェス盤が16x16の場合のプログラム 解説 $x=f(b)\oplus m$となるような$m\in B^6$は必ず存在する 盤面の各マスに$m$の値を割り当てることで,1マスの操作だけで$m$を表現できる 盤面のマス目の数も,$m$がとりうる値の数も64 $f(g(b,x))=f(b)\oplus m=f(b)\oplus f_m\oplus m(1-b_m)$ 応用 長さ$2^N$の任意のビット列について,任意の1ビットだけを反転させることで,長さ$N$のビット列を表現できる 参考文献 # 超難問論理クイズ「2人の幼女とチェス盤の部屋」が本当に難しすぎた - 明日は未来だ! 幼女問題まとめ - GItHub Gist Impossible Escape?ArchLinuxのインストールhttps://ar.falsy.cat/note/info-tech/install-archlinux/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/info-tech/install-archlinux/概要 ArchLinuxのインストール手順を記録する Live Environmentの起動方法については触れない 前提 qemu上の仮想マシン BIOS GPT x86_64 デュアルブートなし できるだけシンプル,ミニマリスティックに 手順 1. 事前準備 1 2 3 loadkeys jp106 # キーボード設定 ping google.flutterhttps://ar.falsy.cat/note/info-tech/flutter/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/info-tech/flutter/概要 マルチプラットフォーム GUIアプリケーション フレームワーク iOS/Android,Web,Windows/Linux/Mac,組み込み Google製 使用言語はDart インストール Arch Linux install-archlinuxの直後から,flutter doctorがオールグリーンになるまで 1時間ぐらいは覚悟したほうがいい 特にandroid-studioがクソでかいので qemuイメージのリサイズをする羽目になった 参考文献 追記: qemu上だとパフォーマンスがゴミすぎてまともに使えなかった X( ハードウェアアクセラレーションとか頑張ればいけるのかもしれないけど,諦めてホストのMacbookに直接入れた 手順 依存のインストール 1 2 3 4 5 6 7 8 9 10 11 12 13 14 pacman -S base-devel xorg-server xterm i3-wm noto-fonts git clang cmake ninja chromium visudo # いい感じに設定 &amp; リログ git clone https://aur.ObsidianとQuartzによるセカンドブレインデジタルガーデンの構築https://ar.falsy.cat/note/info-tech/publish-obsidian-by-quartz/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/info-tech/publish-obsidian-by-quartz/<h2 id="概要">概要</h2> <ul> <li> <a href="https://github.com/jackyzha0/quartz" rel="noopener">Quartz</a>で <a href="https://ar.falsy.cat/note/info-tech/obsidian/" rel="noopener" class="internal-link" data-src="https://ar.falsy.cat/note/info-tech/obsidian/">Obsidian</a>のVaultを公開する</li> <li>「<em>セカンドブレインデジタルガーデン</em>」という御大層な言葉は <a href="https://github.com/jackyzha0/quartz" rel="noopener">Quartz</a>の紹介文からの引用</li> </ul>Obsidianについてhttps://ar.falsy.cat/note/info-tech/obsidian/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/info-tech/obsidian/公式サイト 概要 オフラインのwikiっぽいもの(=Vault) 記法はmarkdown Vaultは全てローカルに保存される インストール 公式サイトに各OSのインストーラが揃ってる Macではbrew install obsidianができる いいところ シンプルでスタイリッシュなデザイン 完全ローカルなので高セキュリティ 数式が使える $E=mc^2$ わるいところ 完全ローカルなので同期が課題 Vaultが巨大になるほど同期コストも増加 Macにて,エディタ上のリアルタイムプレビューとIMEが競合して日本語が正常に入力できないことがある 所感 ar.Pleromahttps://ar.falsy.cat/note/info-tech/pleroma/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/info-tech/pleroma/概要 ActivityPubに対応したlightweight(自称)なSNS 単体で見るとlightweightには思えないけど,mastodonと比べたら確かにlightweight DB肥大化問題 長期間Pleromaを稼働させ続けると,DBのレコード数がやばいことになる DBのレスポンスがくそ長くなり,最終的にタイムアウトで500になる オブジェクトの寿命とか設定してみたけど特に意味はなかった 解決法 ローカルアカウントそれ自体の情報以外の情報を削除する pleromaを停止して,postgresで次のSQLを実行する 自動化しても良いかもしれない 追記: フォロー/フォロワー情報も削除されてしまったので改善が必要!!! 1 2 3 4 TRUNCATETABLEactivitiesCASCADE;#全アクティビティの削除DELETEFROMusersWHEREnotlocal;#全リモートユーザーの削除VACUUMFULL;VACUUMANALYZE;qemuhttps://ar.falsy.cat/note/info-tech/qemu/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/info-tech/qemu/<h2 id="概要">概要</h2> <ul> <li>コマンドラインベースのVirtualBoxと思っている</li> <li>今のところM2チップのMacbook ProでLinuxを使うための最善手 <ul> <li>M1/M2向けVirtualBoxはまだ開発者プレビューしかなく,まともに使えなかった</li> </ul> </li> </ul>仮説検定https://ar.falsy.cat/note/study/statistics-test/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/study/statistics-test/概要 仮説検定とは,母集団の母数に関する帰無仮説について,棄却/受容を標本から客観的に判定する手続き 有意確率とは,帰無仮説が真だった場合に誤って棄却する確率である 仮説検定において,有意確率が事前に定めた有意水準よりも小さかった場合,帰無仮説を棄却する 検定手順 帰無仮説を仮定する 帰無仮説のもとで検定したい事象が発生する確率$p$を求める $p$が事前に定めた有意水準よりも小さいならば,帰無仮説を棄却する 結論に生じうる誤り 第一種の誤り: 帰無仮説が正しい,かつ,帰無仮説を棄却してしまう 発生確率=有意確率 発生確率を設定できる 第二種の誤り: 帰無仮説が誤っている,かつ,帰無仮説を受容してしまう 発生確率は不明 発生確率を設定できない 有意水準を小さくすることで第一種の誤りは起こりにくくなるが,第二種の誤りが起こりやすくなる(トレードオフ) 大体の場合で5% 第一種の誤りが許されない場面(医療など)では1% 例 コイントスを10回して7回表が出た.コイントスは公平か? 7回表が出る確率は$\frac{1}{2^{10}} \cdot {}_{10} \mathrm{C}_7=0.卵を片手で割る手法の提案https://ar.falsy.cat/note/chores/one-hand-egg-cracking/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/chores/one-hand-egg-cracking/Abstract This paper proposes a method to crack eggs by one hand The method can reduce cooking time and promote multi-tasking No special appliance is needed However accuracy of action is necessary to keep yolk unbroken 概要 調理の時短とマルチタスク促進のために卵を片手で割る手法を提案する 本手法は一般家庭にある既存の器具のみで実行が可能 ただし黄身を割らないためには繊細な動作が要求される 背景 左手でゴミ袋を持ちながら右手で卵を割ると非常に時短になる 特に調理プロセスのなかで一度に複数の卵が関与する場合に著しい時短効果が得られる 先行研究の手法では調理対象に殻が混入してしまうことが多い 手法 卵をフォークボールを投げる時のように持つ 鋭端が人差し指と中指の間に来るように持つ 鈍端を親指と薬指で支える 皿の淵で卵の殻に割れ目を作る 卵の鋭端と鈍端を結ぶ線分の垂直二等分線が皿の淵と重なるように腕を何回か振り下ろす 皿を卵の直径の$\frac{1}{4}$程度まで食い込ませる 卵を皿に押し付けて真っ二つにするイメージ ここで皿を食い込ませすぎると黄身が割れる原因になる 人差し指の付け根で割れ目の裏側を押し出す 人差し指,中指,親指,薬指で卵をしっかりと支えておく 評価実験 本手法を用いて鶏卵2個を割った 1個は黄身が割れたが,1個は割れなかった 卵の殻が調理対象に混入することはなかった まとめ 卵を片手で割る手法を提案した 本手法では50%の確率で黄身が割れる 先行研究の手法と異なり,卵の殻が混入する確率は低い 今後の課題として,黄身が割れる確率を抑えることが挙げられる 理論上,左右両方の手で同時に2個の卵を割ることでさらなる効率化を図れる国語教科書オールスターズhttps://ar.falsy.cat/note/word-play/japanese-text-all-stars/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/word-play/japanese-text-all-stars/<h2 id="概要">概要</h2> <ul> <li>今までの国語の教科書に出てきた忘れられない奴等を忘れないために記録しておく</li> </ul>明晰夢を利用した現実の証明https://ar.falsy.cat/note/word-play/proof-of-reality-using-lucid-dream/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/word-play/proof-of-reality-using-lucid-dream/概要 今の意識が現実であることを証明する手法を論理的に導く ただの言葉遊びなので哲学的な何かは期待しないでほしい 前提 ここでは次の前提のもと議論を進める 夢を見ていることを自覚している夢を見ている,ならばかつその時に限り,明晰夢を見ている 明晰夢を見ている,ならば,全てが思い通りになる 夢でないならば現実である 証明は次の定義の元で行う 状況$A$: 夢を見ている 状況$B$: 夢を見ていることを自覚している 状況$C$: 明晰夢を見ている 状況$D$: 全てが思い通りである 証明の最終的な目標は$X\implies \overline{A}$を導くことである 証明 前提より $P_1: A\cap B\iff C$ $P_2: C \implies D$ $P_1,P_2$より,三段論法を用いて $P_3: A \cap B \implies D$ $P_3$の対偶より $P_4: \overline{D}\implies \overline{A\cap B}$ $P_4$より,ド・モルガンの公式を用いて $P_5: \overline{D}\implies \overline{A} \cup \overline{B}$ $B$は意図的に真にできるため,$P_5$より $\overline{D}\cap B \implies \overline{A}$ 結論 事前に夢を見ていることを自覚している,かつ,思い通りにならないことが存在する,ならば,それは現実である ただし,この手法では全ての現実を証明できるとは言えないことに留意されたい片手鍋で米を炊くhttps://ar.falsy.cat/note/chores/cooking-rice-with-saucepan/Mon, 01 Jan 0001 00:00:00 +0000https://ar.falsy.cat/note/chores/cooking-rice-with-saucepan/概要 炊飯器が無くても米は炊ける ただし火を使う間,22分程度拘束される 手順 片手鍋で米(3合)を研ぐ 水(500ml)を入れる 蓋をして鍋ごと冷蔵庫で30分冷やす 蓋をしたまま中火で13分 弱火で3分 とろ火で6分 火を消して蓋をしたまま10分放置 補足 冷やす時間は15分程度まで短縮しても良い 短縮した場合は中火の時間も12分程度に縮める 最後の放置が結構重要 火を消した直後はまだべちゃべちゃしてる