algebraic topology 2 圏論とvan-Kampenの定理
J.P.MayのA Concise Course in Algebraic Topologyの自分用勉強ノート.練習問題も解く.
2.1 圏論
- 任意のに対しが存在する.
- 任意の対象に対しが存在し \begin{equation*} f \circ \mathrm{id}_A= f\ \ \ \ \ (\ \forall f \in \mathrm{Mor}(A,\ B)\ ),\\ \mathrm{id}_A \circ g = g\ \ \ \ \ (\ \forall g \in \mathrm{Mor}(B,\ A)\ ). \end{equation*} 任意のに対し$$(h \circ g) \circ f = h \circ (g \circ f)$$ が成り立つ.
例として集合と写像からなる圏と位相空間と連続写像からなる圏と群と準同型からなる圏がある.
2.2 関手
- $$F(\mathrm{id}_A) = \mathrm{id}_{F(A)}\ \ \ \ \ \ (\ \forall A \in \mathrm{Ob}(\mathcal{C})\ )$$
- $$F(g \circ f) = F(g) \circ F(f)\ \ \ \ \ \ \ (\ \forall f \in \mathrm{Mor}(A,\ B),\ \forall g\in \mathrm{Mor}(B,\ C)\ )$$
圏の反対圏とはかつをで定義される圏とする.圏に対し共変関手のことを反変関手という.
自然変換
力学と微分方程式1 微分方程式とその解
力学と微分方程式(現代数学入門,岩波,高橋陽一郎著)のまとめ.微分方程式のシミュレートもやる.
1.1 古典力学と微分方程式
ある関数が与えられた時,未知関数に対する関係式$$F(t,x(t),x'(t),\dots x^{(n)}(t))= 0$$を常微分方程式といい,をその階数という.はベクトル値関数でもよい.常微分方程式は物理において自然に現れる.ニュートンの運動方程式$$F = ma\ \ \ (m:\mbox{質量},a:\mbox{加速度})$$は位置の2階微分が加速度であることから$$F = m\frac{\mathrm{d}^2 q}{\mathrm{d}t^2}\ \ \ \ (q:\mbox{位置})$$と表される.が空間微分によらずやその時間微分のみに依存するならば,これは常微分方程式となる.もしにの空間微分の情報が含まれるならばこれは偏微分方程式となる.
例として万有引力をあげる.原点に万有引力があるとき,時刻における質点は常微分方程式 $$\left\{ \begin{array}{11} \frac{\mathrm{d}q}{\mathrm{d}t} = v \\ \frac{\mathrm{d}v}{\mathrm{d}t} = -\frac{q}{\|q\|^3} \end{array} \right.\ \ \ \ \ (q,v \in \mathbb{R}^3)$$を満たす.これは距離の2乗に反比例する引力と運動方程式の帰結である.ただし重力定数と質量を1としている.
この方程式からすぐわかる物理的に意味のある性質がいくつかある.エネルギーに対し $$E' = \frac{1}{2}v^2 + \frac{q}{\|q\|^3} = 0$$よりはに依らない定数となる(エネルギー保存則).また角運動量に対し時間微分は$$A' = q' \times v + q \times v'=v \times v + q \times\frac{-q}{\|q\|^3} = 0$$
となる.一般にベクトルに対しはと垂直でノルムがのはる平行四辺形の面積と一致するベクトルとなる.従って任意のに対し となる.の時間微分が0ということはと垂直なベクトルが変化しないということで,がと直行する平面上を運動し続けることを意味する.また$$\lim_{h \to 0}\frac{1}{h}q(t)\times q(t + h)=q(t)(\lim_{h \to 0}\frac{q(t + h) - q(t)}{h}) = q(t) \times v(t) = A$$より面積速度は一定となる.
algebraic toplogy 1 基本群
J.P.MayのA Concise Course in Algebraic Topologyの自分用勉強ノート.練習問題も解く.
1.1 基本群定義
位相空間上の曲線とは連続写像のことでを満たすとき特に閉曲線という.を始点としを終点とする曲線を$$a:x\mapsto y$$とかく.またをに値をとる定値写像とする.曲線間のホモトピーにはさらに次の条件を課す.
曲線に対し,新たな曲線を $$ a \cdot b(t) = \left\{ \begin{array}{11} a(2t) & (0 \leq t \leq \frac{1}{2}) \\ b(2t-1) & (\frac{1}{2} \leq t \leq 1) \end{array} \right. $$と定義する. またを $$ a^{-1}(t) = a(1-t) $$と定義する.
1.2 基点の取り換え
の同じ連結成分に属するに対しの関係を述べる.曲線に対し準同型を$$\gamma(a)([b])=[a \cdot b \cdot a^{-1}]\ \ \ \ \ ([b] \in \pi_1(X, x))$$と定める.この写像は逆写像を持つので実際には同型写像となる.このは曲線の選び方に依存する.しかしがホモトピックならばである.
1.3 ホモトピー不変
連続写像は基本群の準同型$$p_*:\pi_1(X,x) \to \pi_1(Y, p(x)),\ \ \ [a] \mapsto [p \circ a]$$を導く.ホモトピックな連続写像のホモトピーをとし,とする.このとき次が成り立つ.
1.4 の計算
証明: の基本群は後に,可縮な空間の基本群は自明であるというより一般的な命題を証明する.従ってについてのみ示す.ただし証明の肝となるリフトの一意性に関する部分は後で示されるのでここでは既知とする.互いに逆な2つの写像 \begin{eqnarray*} &i&: \mathbb{Z} \to \pi_1(S^1,1)\\ &j&: \pi_1(S^1, 1) \to \mathbb{Z} \end{eqnarray*} をつくる.の方は簡単で]で,である.を$$p(x) = e^{2\pi i x}$$と定義する.リフトの一意性より上の任意の閉曲線に対し,上の曲線が一意に存在し$$p \circ a' = a$$を満たす.を$$j([a]) = a'(1) \in p^{-1}(1)=\mathbb{Z}$$と定義する.この定義がwell-definedであることはより従う. $$ j \circ i (n) = j ([f_n])=n$$ よりである.従っては全射である.と仮定する.これはである.従ってはの原点を始点とする閉曲線である.よりである.従ってで送るととなり,は単射となる.(証明終了)
1.5 Brouwerの不動点定理
に対しを包含写像とする.も可縮なのでとなる.
証明: が存在すると仮定する.だが $$ \xymatrix{ \pi_1(S^1,1) \ar[r]^-{i_*} \ar[d]_-{\cong} & \pi_1(D^2, 1) \ar[r]^-{r_*} \ar[d]_-{=} & \pi_1(S^1, 1) \ar[d]_-{\cong} \\ \mathbb{Z} & 0 & \mathbb{Z} } $$ より矛盾.(証明終了)
証明: 不動点を持たない連続写像が存在すると仮定する.連続写像をに対しとを結ぶ直線と円周の交点のに近いほうを対応させることで定義する.このときとなり矛盾する.(証明終了)
1.6 代数学の基本定理
ホモトピックな連続写像に対し写像度は一致する.これはホモトピー不変に関する命題から従う.よってならばはとホモトピー同値である.ここでは$$f_n:S^1 \to S^1,\ \ \ z \mapsto z^n$$であり,定義からである.
証明: の零点が存在しないと仮定する.$$p(z)=\frac{f(z)}{\|f(z)\|}$$とおく.とする.$$\phi(z, t):=p(tz)=\frac{c_n+t(c_{n-1}z + \cdots + t^{n-1}z^n )}{\|c_n+t(c_{n-1}z + \cdots + t^{n-1}z^n )\|}$$は定値写像とのホモトピーとなる.従って.また$$\psi(z,t):=\frac{p(\frac{z}{t})}{\|p(\frac{z}{t})\|}=\frac{z^n + t(c_1z^{n-1} + \cdots c_nt^{n - 1})}{\|z^n + t(c_1z^{n-1} + \cdots c_nt^{n - 1})\|}$$は写像とのホモトピーである.従って.よって矛盾する.(証明終了)
1.7 問題
問題1:複素係数多項式が上に零点を持たないとする.ここでに対し \begin{eqnarray*} p(z)= \frac{f(z)}{\|f(z)\|} \end{eqnarray*} とする. このときにおける重複も含めた解の個数とが一致することを示せ.
解答:とかける.従って$$p(z)= \prod_{i=1}^n \frac{z-a_i}{\|z - a_i\|}$$である. ここで写像度の以下の性質を用いる.
- $$\mathrm{deg}(fg)=\mathrm{deg}(f) + \mathrm{deg}(g)$$
- $$\mathrm{deg}(f \circ g)= \mathrm{deg}(f)\cdot \mathrm{deg}(g)$$
これはのときを考察することで簡単に示される.従って $$\mathrm{deg}(p)=\sum_{i~1}^n \mathrm{deg}(p_i),\ \ \ \ p_j(z)= \frac{z-a_j}{\|z- a_j\|}$$となる.ここでを満たすは$$\phi(z,t)=\frac{z-ta_j}{\|z -ta_j\|}$$により恒等写像とホモトピックであり写像度である.またを満たすは$$\phi(z,t)=\frac{tz-a_j}{\|tz - a_j\|}$$によって定値写像とホモトピックであり,である.従って題意が示された.(証明終了)
整数論2 合同一次方程式と中国式剰余定理
の形の方程式を合同一次方程式という.またそれらの連立方程式の解を与える中国式剰余定理について紹介する.
証明: となる整数が存在するとする.左辺はを約数に持つのでとなる.従ってならば解を持たない.は整数解を持つことは整数論1(定理2)で示している.解の1つをとする.2つの式を引き算すると$$a(x-x_0) + n(y -y_0)=0$$となる.両辺で割ると$$a'(x - x_0) + n'(y - y_0)=0\ \ \ \ (a'=\frac{a}{k}, n'=\frac{n}{k})$$となる.より$$x \equiv x_0 \pmod{n'}$$となる.従って$$x \equiv x_0,x_0 + n', \dots , x_0 + (k - 1)n' \pmod{n}$$となる.(証明終了)
証明: 解の存在:$$M=m_1M_1=m_2M_2= \cdots = m_n M_n$$としてを定める.定義より$$\mathrm{gcd}(m_i,M_i)=1\ \ \ (i=1,2,\dots , n)$$である.整数論1(定理2)より任意のに対し \begin{equation}\label{iti} M_it_i \equiv 1 \pmod{m_i} \end{equation} を満たすが存在する. 従って$$x \equiv \sum_{i=1}^n M_it_ib_i$$は連立合同方程式を満たす.実際でを割るとにおいてより$$x \equiv m_iM_it_i \pmod{m_i}$$が成り立ち,より$$x \equiv b_1 \pmod{m_i}$$となる.
解の一意性:が解とする.このとき任意のに対し$$x_i \equiv y_i \pmod{m_i}$$が成り立つ.は互いに素より$$x\equiv y \pmod{M}$$となる.従ってを法として一意性が成り立つ.(証明終了)
以下は合同一次式と中国式剰余定理を用いた連立合同方程式を解くコード.整数論1で定義したmoduleをimportとしている.
3x=12 mod(15)
解:[4, 9, 14] mod 15
############################################
-12x=6 mod(30)
解:[2, 7, 12, 17, 22, 27] mod 30
############################################
3x=2 mod(15)
解:None mod 15
############################################
x = 1 mod(2)
x = 3 mod(7)
x = -3 mod(13)
解:x=101 mod(182)
整数論1 ユークリッド互除法
ユークリッド互除法は2つの整数の最大公約数を求めるアルゴリズムである.証明も含めて紹介する.
証明:
とする.定義よりを満たす整数が存在する.従ってはの公約数であり.またよりはの公約数である.従って.これよりとなる.(証明終了)
この定理1を下にユークリッド互除法を説明する.2つの自然数の最大公約数を求めたい.数列を次のように定める
- としをで割った余りをとする.
- をで割った余りをとする.
ここではになるまで単調減少である.で初めてになるとすると定理1より$$\mathrm{gcd}(a,b) =\mathrm{gcd}(r_0,r_1)= \dots \mathrm{gcd}(r_{n_0 - 1},r_{n_0})=\mathrm{gcd}(r_{n_0 - 1}, 0) = r_{n_0 - 1}$$となる.これにより最大公約数を求めることができる.これがユークリッド互除法である.
ユークリッド互除法の過程を詳しく見ることで次の定理が従う.
証明: と仮定してよい.実際に対しを求め,符号を調節すればよい.としてを定める.このとき \begin{equation*} \begin{pmatrix} r_0\\ r_1 \end{pmatrix} = \begin{pmatrix} k_0 & 1 \\ 1 & 0 \end{pmatrix} \cdots \begin{pmatrix} k_{n_{0}-1} & 1\\ 1 & 0 \end{pmatrix} \begin{pmatrix} r_{n_0} \\ 0 \end{pmatrix} \end{equation*} とかける.行列$$\begin{pmatrix}k_n & 1\\ 1 & 0 \end{pmatrix}$$は行列式より逆行列を持つ.従ってについて解くことができる.より定理が示された.(証明終了)
###########################
47 18
最大公約数1
(5, -13)
###########################
-14 26
最大公約数2
(-2, -1)
群論1 群の定義および例
群とは大学で学ぶ最も基本的で重要な代数構造である.大雑把に言えば足し算と引き算ができる集合である.
- 任意のに対し$$(a \cdot b) \cdot c = a \cdot (b \cdot c).$$
- あるが存在し,任意のに対し$$1_G \cdot g = g \cdot 1_G = g.$$ここでを単位元という.
- 任意のに対し,あるが存在し$$g \cdot g' = g' \cdot g = 1_G.$$ここでをの逆元 といいとかく.
例えばは和に関し群となるしは積に関し群となる.ただしは逆元を一般には持たないので群ではない.
対称群
の全単射写像全体をとかく.は合成に関し群となる.これを対称群という.
をと定義する.ただし上では恒等写像とする.このときを長さの循環置換という.特に長さ2の循環置換を互換という.
- 任意のは互いに共通文字を持たない循環置換の積に順番を除き一意に表される.
- 任意のは互換の積に表すことができる.
注意として互換の積の表し方は一意ではない.しかし互換の個数の偶奇は一意に定まる.互換の個数をとするときを符号数という.
% vim sym_group.py
24
########################################
sigma(0)=3
sigma(1)=2
sigma(2)=1
sigma(3)=0
循環置換[[0, 3], [1, 2]]
互換[[0, 3], [1, 2]]
符号数1
########################################
sigma(0)=2
sigma(1)=3
sigma(2)=1
sigma(3)=0
循環置換[ [0, 2, 1, 3] ]
互換[[0, 3], [0, 1], [0, 2]]
符号数-1
########################################
sigma(0)=2
sigma(1)=1
sigma(2)=3
sigma(3)=0
循環置換[[0, 2, 3], [1]]
互換[[0, 3], [0, 2]]
符号数1
########################################
sigma(0)=2
sigma(1)=1
sigma(2)=0
sigma(3)=3
循環置換[[0, 2], [1], [3]]
互換[ [0, 2] ]
符号数-1
########################################
sigma(0)=3
sigma(1)=1
sigma(2)=2
sigma(3)=0
循環置換[[0, 3], [1], [2]]
互換[ [0, 3] ]
符号数-1
########################################
sigma(0)=1
sigma(1)=3
sigma(2)=2
sigma(3)=0
循環置換[[0, 1, 3], [2]]
互換[[0, 3], [0, 1]]
符号数1
########################################
sigma(0)=1
sigma(1)=2
sigma(2)=3
sigma(3)=0
循環置換[ [0, 1, 2, 3] ]
互換[[0, 3], [0, 2], [0, 1]]
符号数-1
########################################
sigma(0)=1
sigma(1)=2
sigma(2)=0
sigma(3)=3
循環置換[[0, 1, 2], [3]]
互換[[0, 2], [0, 1]]
符号数1
########################################
sigma(0)=3
sigma(1)=1
sigma(2)=0
sigma(3)=2
循環置換[[0, 3, 2], [1]]
互換[[0, 2], [0, 3]]
符号数1
########################################
sigma(0)=1
sigma(1)=3
sigma(2)=0
sigma(3)=2
循環置換[ [0, 1, 3, 2] ]
互換[[0, 2], [0, 3], [0, 1]]
符号数-1
########################################
sigma(0)=1
sigma(1)=0
sigma(2)=3
sigma(3)=2
循環置換[[0, 1], [2, 3]]
互換[[0, 1], [2, 3]]
符号数1
########################################
sigma(0)=1
sigma(1)=0
sigma(2)=2
sigma(3)=3
循環置換[[0, 1], [2], [3]]
互換[ [0, 1] ]
符号数-1
########################################
sigma(0)=3
sigma(1)=2
sigma(2)=0
sigma(3)=1
循環置換[ [0, 3, 1, 2] ]
互換[[0, 2], [0, 1], [0, 3]]
符号数-1
########################################
sigma(0)=2
sigma(1)=3
sigma(2)=0
sigma(3)=1
循環置換[[0, 2], [1, 3]]
互換[[0, 2], [1, 3]]
符号数1
########################################
sigma(0)=2
sigma(1)=0
sigma(2)=3
sigma(3)=1
循環置換[ [0, 2, 3, 1] ]
互換[[0, 1], [0, 3], [0, 2]]
符号数-1
########################################
sigma(0)=2
sigma(1)=0
sigma(2)=1
sigma(3)=3
循環置換[[0, 2, 1], [3]]
互換[[0, 1], [0, 2]]
符号数1
########################################
sigma(0)=3
sigma(1)=0
sigma(2)=2
sigma(3)=1
循環置換[[0, 3, 1], [2]]
互換[[0, 1], [0, 3]]
符号数1
########################################
sigma(0)=0
sigma(1)=3
sigma(2)=2
sigma(3)=1
循環置換[[0], [1, 3], [2]]
互換[ [1, 3] ]
符号数-1
########################################
sigma(0)=0
sigma(1)=2
sigma(2)=3
sigma(3)=1
循環置換[[0], [1, 2, 3]]
互換[[1, 3], [1, 2]]
符号数1
########################################
sigma(0)=0
sigma(1)=2
sigma(2)=1
sigma(3)=3
循環置換[[0], [1, 2], [3]]
互換[ [1, 2] ]
符号数-1
########################################
sigma(0)=3
sigma(1)=0
sigma(2)=1
sigma(3)=2
循環置換[ [0, 3, 2, 1] ]
互換[[0, 1], [0, 2], [0, 3]]
符号数-1
########################################
sigma(0)=0
sigma(1)=3
sigma(2)=1
sigma(3)=2
循環置換[[0], [1, 3, 2]]
互換[[1, 2], [1, 3]]
符号数1
########################################
sigma(0)=0
sigma(1)=1
sigma(2)=3
sigma(3)=2
循環置換[[0], [1], [2, 3]]
互換[ [2, 3] ]
符号数-1
########################################
sigma(0)=0
sigma(1)=1
sigma(2)=2
sigma(3)=3
循環置換[[0], [1], [2], [3]]
互換[ ]
符号数1