鈴木『ろんりの相談室』例題13.2.2

鈴木登志雄『ろんりの相談室』例題13.2.2。

【問題】$\mathbb{N}$(自然数全体)の部分集合$X$を\[\mathbb{N}\ni n\mapsto \left\{\begin{array}{c} 1\quad(n\in X)\\0\quad(n\notin X)\end{array}\right.\in\{0,1\}\]なる数列にうつす写像$f:2^\mathbb{N}\to{\rm Map}(\mathbb{N},\{0,1\})$が全単射であることを示せ。

【解答】$X\subseteq\mathbb{N}$に対して、数列$f(X)$の第$n$項を$f(X)_n$と表す。

単射性:$f(X)=f(Y)$なる$X,Y\subseteq\mathbb{N}$を任意にとると、$n\in X\Leftrightarrow f(X)_n=1\Leftrightarrow f(Y)_n=1\Leftrightarrow n\in Y$であるから$X=Y$である。

全射性:任意の数列$a:\mathbb{N}\to\{0,1\}$をとり、$X=\{n\in\mathbb{N}\mid a_n=1\}$と定める。すると$f(X)_n=1\Leftrightarrow n\in X\Leftrightarrow a_n=1$であるから$f(X)=a$である。

ベクトルの線形結合を表すツールとしての行列

4本のベクトル$\boldsymbol{u}_1,\boldsymbol{u}_2,\boldsymbol{u}_3,\boldsymbol{u}_4$を基本として、これらの線形結合を簡潔に書き表す方法を考えよう。説明の都合上、スカラーは後置形式で書くこととする。例えば係数の組$(s_1,s_2,s_3,s_4)$と$(t_1,t_2,t_3,t_4)$を使って\[\left\{\begin{array}{c}\boldsymbol{v}_1=\boldsymbol{u}_1s_1+\boldsymbol{u}_2s_2+\boldsymbol{u}_3s_3+\boldsymbol{u}_4s_4\\\boldsymbol{v}_2=\boldsymbol{u}_1t_1+\boldsymbol{u}_2t_2+\boldsymbol{u}_3t_3+\boldsymbol{u}_4t_4\end{array}\right.\]という、2本の線形結合を作ったとする。これを\[(\boldsymbol{v}_1,\boldsymbol{v}_2)=( \boldsymbol{u}_1,\boldsymbol{u}_2,\boldsymbol{u}_3,\boldsymbol{u}_4)( (s_1,s_2,s_3,s_4),(t_1,t_2,t_3,t_4) )\]と書けば$\boldsymbol{u}_i$を二度書く必要がなくなるが、どうにも横に長いことや、括弧やカンマが多いのが不満である。そこで、このように書いてみてはどうか。\[\begin{pmatrix}\boldsymbol{v}_1&\boldsymbol{v}_2\end{pmatrix}=\begin{pmatrix}\boldsymbol{u}_1&\boldsymbol{u}_2&\boldsymbol{u}_3&\boldsymbol{u}_4\end{pmatrix}\begin{pmatrix}s_1&s_2&s_3&s_4\\t_1&t_2&t_3&t_4\end{pmatrix}\]これでずいぶんスッキリするが、右端の$s,t$の並びを見ると、$\boldsymbol{v}_1$についての情報が上段に、$\boldsymbol{v}_2$についての情報が下段に並んでいる。いっぽう、ベクトルを並べた$\begin{pmatrix}\boldsymbol{v}_1&\boldsymbol{v}_2\end{pmatrix}$や$\begin{pmatrix}\boldsymbol{u}_1&\boldsymbol{u}_2&\boldsymbol{u}_3&\boldsymbol{u}_4\end{pmatrix}$を見ると、できれば$\boldsymbol{v}_1$についての情報は左に、$\boldsymbol{v}_2$についての情報は右に集約されるのが望ましい。そこで、この部分の縦横を逆にして\[\begin{pmatrix}\boldsymbol{v}_1&\boldsymbol{v}_2\end{pmatrix}=\begin{pmatrix}\boldsymbol{u}_1&\boldsymbol{u}_2&\boldsymbol{u}_3&\boldsymbol{u}_4\end{pmatrix}\begin{pmatrix}s_1&t_1\\s_2&t_2\\s_3&t_3\\s_4&t_4\end{pmatrix}\]と書くことにしよう。このような並びに気を遣うことは、現時点では些細なことのようにも思えるが、いま作った$\boldsymbol{v}_1,\boldsymbol{v}_2$を用いてさらに線形結合を作る場面を考えると、その効用が少し実感できるかもしれない。例えば係数の組$(a_1,a_2),(b_1,b_2),(c_1,c_2)$を用いて、今度は3本の結合\[\left\{\begin{array}{c}\boldsymbol{w}_1=\boldsymbol{v}_1a_1+\boldsymbol{v}_2a_2\\\boldsymbol{w}_2=\boldsymbol{v}_1b_1+\boldsymbol{v}_2b_2\\\boldsymbol{w}_3=\boldsymbol{v}_1c_1+\boldsymbol{v}_2c_2\end{array}\right.\]を作るなら$\begin{pmatrix}\boldsymbol{w}_1&\boldsymbol{w}_2&\boldsymbol{w}_3\end{pmatrix}=\begin{pmatrix}\boldsymbol{v_1}&\boldsymbol{v_2}\end{pmatrix}\begin{pmatrix}a_1&b_1&c_1\\a_2&b_2&c_2\end{pmatrix}$となるが、さらに展開すると\[\begin{pmatrix}\boldsymbol{w}_1&\boldsymbol{w}_2&\boldsymbol{w}_3\end{pmatrix}=\begin{pmatrix}\boldsymbol{u}_1&\boldsymbol{u}_2&\boldsymbol{u}_3&\boldsymbol{u}_4\end{pmatrix}\begin{pmatrix}s_1&t_1\\s_2&t_2\\s_3&t_3\\s_4&t_4\end{pmatrix}\begin{pmatrix}a_1&b_1&c_1\\a_2&b_2&c_2\end{pmatrix}\tag{1}\]と書ける。(1)の右辺を眺めると、はじめ4本であったベクトルが2本になり、さらに3本となっている様子が見て取れる。

ところで、$\boldsymbol{w}_i$を($\boldsymbol{v}_i$をすっ飛ばして)$\boldsymbol{u}_i$の結合で書くとどうなるだろうか。実際に計算してみると
\[\left\{\begin{array}{c}\boldsymbol{w}_1=\boldsymbol{v}_1a_1+\boldsymbol{v}_2a_2=(\boldsymbol{u}_1s_1+\boldsymbol{u}_2s_2+\boldsymbol{u}_3s_3+\boldsymbol{u}_4s_4)a_1+(\boldsymbol{u}_1t_1+\boldsymbol{u}_2t_2+\boldsymbol{u}_3t_3+\boldsymbol{v}_4t_4)a_2
\\\boldsymbol{w}_2=\boldsymbol{v}_1b_1+\boldsymbol{v}_2b_2=(\boldsymbol{u}_1s_1+\boldsymbol{u}_2s_2+\boldsymbol{u}_3s_3+\boldsymbol{u}_4s_4)b_1+(\boldsymbol{u}_1t_1+\boldsymbol{u}_2t_2+\boldsymbol{u}_3t_3+\boldsymbol{v}_4t_4)b_2
\\\boldsymbol{w}_3=\boldsymbol{v}_1c_1+\boldsymbol{v}_2c_2=(\boldsymbol{u}_1s_1+\boldsymbol{u}_2s_2+\boldsymbol{u}_3s_3+\boldsymbol{u}_4s_4)c_1+(\boldsymbol{u}_1t_1+\boldsymbol{u}_2t_2+\boldsymbol{u}_3t_3+\boldsymbol{v}_4t_4)c_2\end{array}\right.\]となり、さらに計算したものを今回の記法で書けば\[\begin{pmatrix}\boldsymbol{w}_1&\boldsymbol{w}_2&\boldsymbol{w}_3\end{pmatrix}=\begin{pmatrix}\boldsymbol{u}_1&\boldsymbol{u}_2&\boldsymbol{u}_3&\boldsymbol{u}_4\end{pmatrix}\begin{pmatrix}s_1a_1+t_1a_2&s_1b_1+t_1b_2&s_1c_1+t_1c_2\\s_2a_1+t_2a_2&s_2b_1+t_2b_2&s_2c_1+t_2c_2\\s_3a_1+t_3a_2&s_3b_1+t_3b_2&s_3c_1+t_3c_2\\s_4a_1+t_4a_2&s_4b_1+t_4b_2&s_4c_1+t_4c_2\end{pmatrix}\tag{2}\]となる。これは「$\boldsymbol{u}_i$がどんなベクトルであったか」には無関係だから、(1)と(2)を見比べて\[\begin{pmatrix}s_1&t_1\\s_2&t_2\\s_3&t_3\\s_4&t_4\end{pmatrix}\begin{pmatrix}a_1&b_1&c_1\\a_2&b_2&c_2\end{pmatrix}:=\begin{pmatrix}s_1a_1+t_1a_2&s_1b_1+t_1b_2&s_1c_1+t_1c_2\\s_2a_1+t_2a_2&s_2b_1+t_2b_2&s_2c_1+t_2c_2\\s_3a_1+t_3a_2&s_3b_1+t_3b_2&s_3c_1+t_3c_2\\s_4a_1+t_4a_2&s_4b_1+t_4b_2&s_4c_1+t_4c_2\end{pmatrix}\tag{3}\]と定義しておけば便利であり、よく知られた行列の積の定義と一致する。つまり、(1)を計算する際にいちいち$\boldsymbol{u}_i$に載せなくても、係数どうしの間で先に計算を済ませておき、後でまとめて$\boldsymbol{u}_i$に載せることができる――さらに言い換えれば、(1)を左から計算しても右から計算しても結果が一致する(結合則を満たす)――ように、行列の積はうまく定義されているのである。

さて、行列の積$AB$を計算する際には$A$を行ごとに($B$を列ごとに)分けて捉え、$A$の行間に横線($B$の列間に縦線)を引く人もいることだろう。ここではあえて、$A$を列ごとに分けてみる。すなわち、(3)を\[\begin{pmatrix}\fbox{$\begin{array}{c}s_1\\s_2\\s_3\\s_4\end{array}$}&\fbox{$\begin{array}{c}t_1\\t_2\\t_3\\t_4\end{array}$}\end{pmatrix}\begin{pmatrix}a_1&b_1&c_1\\a_2&b_2&c_2\end{pmatrix}=\begin{pmatrix}\fbox{$\begin{array}{c}s_1\\s_2\\s_3\\s_4\end{array}$} a_1+\fbox{$\begin{array}{c}t_1\\t_2\\t_3\\t_4\end{array}$} a_2&\fbox{$\begin{array}{c}s_1\\s_2\\s_3\\s_4\end{array}$} b_1+\fbox{$\begin{array}{c}t_1\\t_2\\t_3\\t_4\end{array}$} b_2&\fbox{$\begin{array}{c}s_1\\s_2\\s_3\\s_4\end{array}$} c_1+\fbox{$\begin{array}{c}t_1\\t_2\\t_3\\t_4\end{array}$} c_2\end{pmatrix}\tag{4}\]と見てみよう。枠で囲まれた数の並びをベクトル$\boldsymbol{s},\boldsymbol{t}$と見れば\[\begin{pmatrix}\boldsymbol{s}&\boldsymbol{t}\end{pmatrix}\begin{pmatrix}a_1&b_1&c_1\\a_2&b_2&c_2\end{pmatrix}=\begin{pmatrix}\boldsymbol{s}a_1+\boldsymbol{t}a_2&\boldsymbol{s}b_1+\boldsymbol{t}b_2&\boldsymbol{s}c_1+\boldsymbol{t}c_2\end{pmatrix}\tag{5}\]となり、これは最初に定義した「線形結合の略記法」と全く同じである。つまり、行列の積の定義は「線形結合の略記法において、たまたまベクトルが『数ベクトル』であった場合」として完全に包摂されていることが分かる。

線形代数学の重要な定理として、「$\mathbb{K}$上の任意の$n$次元ベクトル空間は$\mathbb{K}^n$と同型である」というものがある。この定理のおかげで、基底を選んで固定し、その線形結合として任意のベクトルを表してしまえば、もはや「どんな基底に載っていたのか」ということを忘れて$\mathbb{K}^n$上での議論にすり替えることができる。(1)の計算を考える際、先ほどは「後でまとめて$\boldsymbol{u}_i$に載せる」と表現した。しかし$\boldsymbol{u}_i$が基底であるならば、$\boldsymbol{v}_1,\boldsymbol{v}_2$を数ベクトル$^t\begin{pmatrix}s_1&s_2&s_3&s_4\end{pmatrix},^t\begin{pmatrix}t_1&t_2&t_3&t_4\end{pmatrix}$と同一視して(4)・(5)のように捉え、ついぞ$\boldsymbol{u}_i$のことなど忘れて議論しても構わないのである。

吉田『ルベーグ積分入門』補題1.2.4

吉田伸生『ルベーグ積分入門』補題1.2.4の証明を、一般的な事柄を切り出して書き直してみた。

(1)$T$上の集合族$\mathscr{P,Q}$と$S\subseteq T$について\[\mathscr{P}\!\upharpoonright_S\subseteq\mathscr{Q}\]\[\Leftrightarrow\forall B\in\mathscr{P}[B\cap S\in\mathscr{Q}]\]\[\Leftrightarrow\mathscr{P}\subseteq\{B\subseteq T;B\cap S\in\mathscr{Q}\}\]である。

(2)$T$上の集合族$\mathscr{G,H}$について$\sigma_T[\mathscr{G}]\subseteq\mathscr{H}$を示すには、「$\mathscr{H}$が$\mathscr{G}$を包む$T$上の$\sigma$-加法族であること」を言えば充分である。


上記(1)により、示すべき等式$\sigma_T[\mathscr{G}]\!\upharpoonright_S=\sigma_S[\mathscr{G}\!\upharpoonright_S]$は\[\sigma_T[\mathscr{G}]\!\upharpoonright_S\supseteq\sigma_S[\mathscr{G}\!\upharpoonright_S]\quad かつ\quad\sigma_T[\mathscr{G}]\subseteq\underline{\{B\subseteq T;B\cap S\in\sigma_S[\mathscr{G}\!\upharpoonright_S]\}}_{\mathscr{B}とする}\]
と書き直すことができる。これを示すには(2)により

・$\sigma_T[\mathscr{G}]\!\upharpoonright_S$が$\mathscr{G}\!\upharpoonright_S$を包む$S$上の$\sigma$-加法族であること

・$\mathscr{B}$が$\mathscr{G}$を包む$T$上の$\sigma$-加法族であること

の2つを言えば充分である。$\sigma$-加法性については補題1.2.3(a)(b)により保証される。(以下略)

吉田『ルベーグ積分入門』例2.1.3

吉田伸生『ルベーグ積分入門』例2.1.3の証明を、$\sigma$加法族や可測写像と無関係な部分を切り分けて書き直してみた。

一般に$f:S\to\mathbb{C}$に対し\[f=\sum_{\alpha\in f(S)}\alpha\cdot1_{f^{-1}(\{\alpha\})}\]であり\[\mathscr{G}=\{f^{-1}(\{\alpha\});\alpha\in f(S)\}\]は$S$の分割となる。このような表示が一意であることを示すため、$f:S\to\mathbb{C}$が$\Lambda\subseteq\mathbb{C}$と$S$の分割$\{A_\lambda\}_{\lambda\in\Lambda}$によって\[f=\sum_{\lambda\in\Lambda}\lambda\cdot1_{A_\lambda}\]と書かれると仮定すると、各$\lambda\in\Lambda$について「$x\in A_\lambda\Leftrightarrow f(x)=\lambda$」すなわち$A_\lambda=f^{-1}(\{\lambda\})$が成り立ち、$\Lambda=f(S)$となる。

上の事実により、「$f(S)$が有限集合であること」と「相異なる*1 $\alpha_1,\ldots,\alpha_n\in\mathbb{C}$と$S$の分割$\{A_j\}_{j=1}^n$を用いて$f=\sum_{j=1}^n\alpha_j\cdot1_{A_j}$と書けること」とは同値である。

いま$f$が$(S,\mathscr{A})$から$(\mathbb{C},\mathscr{B}(\mathbb{C}))$への可測写像であると仮定すると、各$\alpha\in f(S)$に対し$f^{-1}(\{\alpha\})$は一点集合(したがって閉集合)の逆像ゆえ$\mathscr{A}$-可測であるから$\mathscr{G}\subseteq\mathscr{A}$である。

逆に$\mathscr{G}\subseteq\mathscr{A}$と仮定し、$f$が可測写像であることが導かれるかどうか調べる。まず各$\alpha\in f(S)$に対し$f\upharpoonright_{f^{-1}(\{\alpha\})}$は値を$\alpha$にとる定値写像となるので可測写像である。これと$\mathscr{G}\subseteq\mathscr{A}$および$\bigcup\mathscr{G}=S$から、$f(S)$が高々可算ならば例2.1.2により$f$も可測写像となる。

以上の議論をまとめると、「$f$が可測な単関数であること」と「(相異なる)*2
$\alpha_1,\ldots,\alpha_n\in\mathbb{C}$と$S$の分割$\{A_j\}_{j=1}^n\subseteq\mathscr{A}$を用いて$f=\sum_{j=1}^n\alpha_j\cdot1_{A_j}$と書けること」とは同値となる。

*1: $\alpha_1,\ldots,\alpha_n$に同じものが含まれていたとしても、それらに対応する$A_j$を統合することにより、相異なる有限個の$\alpha_j$とそれに対応する$A_j$で表し直すことができる。したがって、この「相異なる」は削除しても同値であるが、表示の一意性は失われる。

*2:前脚注と同様に$A_j$を統合する際、σ加法族が可算和で閉じることから、$\mathscr{A}$-可測性は保たれる。

R∪{-∞,+∞}上の全順序

$\mathbb{R}$上の通常の順序関係を$\leq$で表し、$\mathbb{R}\cup\{-\infty,+\infty\}$上の二項関係$x\preceq y$を\[x=-\infty\vee x\leq y\vee y=+\infty\]と定義する。この関係$\preceq$が全順序をなすことを示す。

推移性:$a\preceq b$および$b\preceq c$を仮定して$a\preceq c$を導く。そのためには、さらに$a\neq-\infty$および$c\neq+\infty$を仮定して$a\leq c$を導けばよい。$a\preceq b$と$a\neq-\infty$から「$a\leq b$または$b=+\infty$」、$b\preceq c$と$c\neq+\infty$から「$b=-\infty$または$b\leq c$」が従うが、これらが両立するのは$a\leq b$かつ$b\leq c$のときだけである。すると$\leq$の推移性から$a\leq c$である。

比較可能性(反射性を含意する):$a\not\preceq b$を仮定して$b\preceq a$を導く。そのためには、さらに$b\neq-\infty$および$a\neq+\infty$を仮定して$b\leq a$を導けばよい。これらの仮定により$a,b\in\mathbb{R}$かつ$a\not\leq b$であるから、$\leq$の比較可能性により$b\leq a$である。

反対称性:$a\preceq b$および$b\preceq a$を仮定すると、これらが両立するのは$a=b=\pm\infty$または「$a\leq b$かつ$b\leq a$」の場合のみである。前者ならば直ちに、後者ならば$\leq$の反対称性から、いずれにせよ$a=b$となる。■

メダカカレッジ自主ゼミ(オンライン)の詳細

日時:2021年12月1日からの毎週水曜日、午前10:00~11:30

場所:Zoomによるオンライン開催

テキスト:縫田光司『耐量子計算機暗号』(森北出版、2020年)
www.morikita.co.jp
www.amazon.co.jp

形式:私(梵天ゆとり)が発表し、参加希望者に聴いていただき、適宜ご指摘をいただく形式です。発表希望があればお願いすることもあります。

参加方法:TwitterのリプライまたはDM、あるいはメールにて参加希望をご表明ください。ZoomのミーティングIDをお送りします。中途参加や単回のみの参加も可能です。参加者がいなくとも「一人で発表を垂れ流す」形式で進めますが、メンバーが固まってくれば進め方を配慮します。

連絡先:https://twitter.com/y_bontenTwitter
メール:bonten@medaka-college.com(梵天ゆとり)

絹田村子『数字であそぼ。』6巻、服薬管理法の問題

絹田村子『数字であそぼ。』第6巻、服薬管理法の問題の解説。

前提:
(1)おじいちゃんは1日1種類、1錠だけの薬を飲んでおり、内服時刻に制約はない。とにかく同じ日に1錠飲めばよい。
(2) おじいちゃんは「今日、もう薬を飲んだか、まだ飲んでいないか」を忘れることがあるので、これを解決したい。
(3)(2)以外の障壁は存在せず、おじいちゃんは日付を正しく認識し、決められた手順に従うことができる。特に、「そもそも薬に向き合うことなく、飲むのを忘れたまま翌日を迎える」という事故は発生しない。

この問題の核心となるポイントは、何らかの方法で「もう飲んだ」/「まだ飲んでない」というフラグを立てたとしても、それが今日に関する情報なのか昨日に関する情報なのか判別できなければ役に立たない、という点である*1。例えば板の表裏に「未」「済」と書いておき、服薬のたびに「未」から「済」に裏返す習慣をつけたとしても、日付が変わる瞬間に誰かが「済」から「未」に戻してくれなければ、翌日に内服し損ねることになる。

そこで、服薬後に立てた「済」のフラグが、日付が変わった瞬間に自動的に「未」に戻るようなシステムが必要になる。といっても午前零時に何かアクションを起こす必要はない。例えば、板の表裏に書く文言を「偶数日済/奇数日済」としておき、内服後に裏返すようにすればよい。これで奇数日に「偶数日済」を見れば、今日はまだ内服していないことが分かる。

作品内で彼らが編み出した方法は、これと同じことを薬そのものを使って実現している。すなわち、「服薬後に、きょうの日付と偶奇が食い違うような個数の薬を瓶に入れておく」という方法である。そして「きょうの日付と個数の偶奇が食い違えば『済』、一致すれば『未』」とみなすことにしておけば、当日中は「済」であったフラグが翌日には「未」という意味に変わる。具体的には、偶数日の内服後には1個、奇数日の内服後には2個の薬を入れている。

ただし、月替わりだけは同じ偶奇の日が連続するおそれがあるので、「末日の内服後には3個入れておく」「3個の薬を見たときには、月末ならば『済』、月初ならば『未』とみなす」という最優先特別ルールにしておく。

この方法を続けると、おじいちゃんはいずれ「(未/済の判断のうえで)瓶から1錠とって飲んだあと、まだ薬が残っていれば放置、空になれば2個補充」という習慣になることだろう(月末日を除く)。「2個補充」では偶奇は変わらないので、要するに「薬を1錠飲む」という行為自体が偶奇をひっくり返していることになる。

*1:したがって「●月▲日は内服済」とまで記録すれば解決するが、これでは服薬カレンダーと同じ方法になってしまい、おじいちゃんのプライドが許さない。