SlideShare a Scribd company logo
1 of 113
Download to read offline
プログラマのための線形代数 再 入門 2
∼要件定義から学ぶ行列式と逆行列∼
@taketo1024
2015/03/27 第2回プログラマのための数学勉強会
今回の目標
ただの計算地獄だった行列式と逆行列を
システム開発の文脈で説明し直し、
プログラマが納得して使えるようになること。
行列式 (determinant)
行列式 (determinant)
A =
✓
1 2
3 4
◆
行列式 (determinant)
A =
✓
1 2
3 4
◆
detA =
1 2
3 4
= 1 · 4 2 · 3
行列式 (determinant)
A =
✓
1 2
3 4
◆
detA =
1 2
3 4
= 1 · 4 2 · 3
+
行列式 (determinant)
A =
✓
1 2
3 4
◆
detA =
1 2
3 4
= 1 · 4 2 · 3
-
行列式 (determinant)
A =
✓
1 2
3 4
◆
detA =
1 2
3 4
= 1 · 4 2 · 3
= 2
行列式 (determinant)
A =
0
@
1 2 3
4 5 6
7 8 9
1
A
行列式 (determinant)
A =
0
@
1 2 3
4 5 6
7 8 9
1
A
detA =
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9 + 2 · 6 · 7 + 3 · 4 · 8
3 · 5 · 7 2 · 4 · 9 1 · 6 · 8
行列式 (determinant)
A =
0
@
1 2 3
4 5 6
7 8 9
1
A
detA =
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9 + 2 · 6 · 7 + 3 · 4 · 8
3 · 5 · 7 2 · 4 · 9 1 · 6 · 8
行列式 (determinant)
A =
0
@
1 2 3
4 5 6
7 8 9
1
A
detA =
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9 + 2 · 6 · 7 + 3 · 4 · 8
3 · 5 · 7 2 · 4 · 9 1 · 6 · 8
行列式 (determinant)
A =
0
@
1 2 3
4 5 6
7 8 9
1
A
detA =
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9 + 2 · 6 · 7 + 3 · 4 · 8
3 · 5 · 7 2 · 4 · 9 1 · 6 · 8
行列式 (determinant)
A =
0
@
1 2 3
4 5 6
7 8 9
1
A
detA =
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9 + 2 · 6 · 7 + 3 · 4 · 8
3 · 5 · 7 2 · 4 · 9 1 · 6 · 8
行列式 (determinant)
A =
0
@
1 2 3
4 5 6
7 8 9
1
A
detA =
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9 + 2 · 6 · 7 + 3 · 4 · 8
3 · 5 · 7 2 · 4 · 9 1 · 6 · 8
行列式 (determinant)
A =
0
@
1 2 3
4 5 6
7 8 9
1
A
detA =
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9 + 2 · 6 · 7 + 3 · 4 · 8
3 · 5 · 7 2 · 4 · 9 1 · 6 · 8
行列式 (determinant)
A =
0
@
1 2 3
4 5 6
7 8 9
1
A
detA =
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9 + 2 · 6 · 7 + 3 · 4 · 8
3 · 5 · 7 2 · 4 · 9 1 · 6 · 8
= 0
行列式 (determinant)
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
行列式 (determinant)
= 1 · 6 · 11 · 16 1 · 6 · 12 · 15 + 1 · 7 · 12 · 14 1 · 7 · 10 · 16 + 1 · 8 · 11 · 14 1 · 8 · 10 · 15
+2 · 5 · 12 · 15 2 · 5 · 11 · 16 + 2 · 7 · 9 · 16 2 · 7 · 12 · 13 + 2 · 8 · 11 · 13 2 · 8 · 9 · 15
+3 · 5 · 10 · 16 3 · 5 · 12 · 14 + 3 · 6 · 12 · 13 3 · 6 · 9 · 16 + 3 · 8 · 9 · 14 3 · 8 · 10 · 13
+4 · 5 · 10 · 15 4 · 5 · 11 · 14 + 4 · 6 · 9 · 15 4 · 6 · 11 · 13 + 4 · 7 · 10 · 13 4 · 7 · 9 · 13
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
!?
人間がやるべき計算じゃない

(コンピュータのある時代でよかった)
計算は機械がやればいいが、
これが何なのかは分かっておきたい。
プログラマの「理解」の3層構造
• 要件が分かる:何のためのものなのか
• 仕様が分かる:何を与えると何が返ってくるのか
• 実装が分かる:どのように動いているのか
プログラマはこの3つが ってはじめて「分かった」と言える。
1. 行列式の「要件」
(復習) 行列は線形変換の定量表現
✓
x
y
◆
x
✓
1
0
◆
y
✓
0
1
◆
f
y
✓
bx
by
◆
x
✓
ax
ay
◆
f
✓
x
y
◆
=
✓
ax bx
ay by
◆ ✓
x
y
◆
(復習) 等倍・偏倍変換
A =
✓
a 0
0 b
◆
✓
1
0
◆
✓
0
1
◆
f
✓
a
0
◆
✓
0
b
◆
(復習) 回転
A =
✓
cos✓ sin✓
sin✓ cos✓
◆
✓
1
0
◆
✓
0
1
◆
f
✓
cos ✓
sin ✓
◆
✓
sin ✓
cos ✓
◆
(復習) 反転
A =
✓
1 0
0 1
◆
✓
1
0
◆
✓
0
1
◆
f
✓
0
1
◆
✓
1
0
◆
(復習) 正射影
A =
✓
1 0
0 0
◆
✓
1
0
◆
✓
0
1
◆
f
✓
1
0
◆
✓
1
0
◆
✓
0
1
◆
✓
a
0
◆
✓
0
b
◆
✓
cos ✓
sin ✓
◆
✓
sin ✓
cos ✓
◆
✓
0
1
◆
✓
1
0
◆ ✓
1
0
◆
f
変換の特徴を表す 1次元の量 を考えたい
特に潰れるかどうかを
判別したい
潰れると元に戻せない!
✓
1
0
◆
✓
0
1
◆
✓
1
0
◆
f
✓
1
0
◆
✓
0
1
◆
f
f 1
?
同じように潰れてしまう
復元できない!
行列式の「要件」
• n次元の線形変換は n次正方行列 (n2 個の数) で表される。
• 線形変換の特徴を 1次元の量 によって表したい。
• 特に「潰れてしまう」かどうかを判別したい。
n次正方行列 A detAの行列式A (1次元の量)
2. 行列式の「仕様」
変換後の面積と向きに注目!
✓
1
0
◆
✓
0
1
◆
✓
a
0
◆
✓
0
b
◆
✓
cos ✓
sin ✓
◆
✓
sin ✓
cos ✓
◆
✓
0
1
◆
✓
1
0
◆ ✓
1
0
◆
f
面積 ab 倍
面積同じ
面積同じ
面積 0
✓
1
0
◆
✓
0
1
◆
✓
a
0
◆
✓
0
b
◆
✓
cos ✓
sin ✓
◆
✓
sin ✓
cos ✓
◆
✓
0
1
◆
✓
1
0
◆ ✓
1
0
◆
f
表向き
表向き
裏向き
向きなし
✓
1
0
◆
✓
0
1
◆
✓
a
0
◆
✓
0
b
◆
✓
cos ✓
sin ✓
◆
✓
sin ✓
cos ✓
◆
✓
0
1
◆
✓
1
0
◆ ✓
1
0
◆
f
detA = ab
detA = 1
detA = -1
detA = 0
detA = 「面積の倍率 向き」
✓
x
y
◆
x
✓
1
0
◆
y
✓
0
1
◆
f
y
✓
bx
by
◆
x
✓
ax
ay
◆
f
✓
x
y
◆
=
✓
ax bx
ay by
◆ ✓
x
y
◆
3次元(さらに高次元)の場合、
det A = 体積の倍率 向き
f
0
@
ax
ay
az
1
A
0
@
bx
by
bz
1
A
0
@
cx
cy
cz
1
A
右手系 → 左手系 の場合 detA < 0
行列式の「仕様」
detA
> 0
= 0
< 0
… 向きを保ち、体積 detA 倍
… 潰れる
… 向きを変えて、体積 -detA 倍
3. 行列式の「実装」
「n2 次元 → 1次元」の関数を
一発で出すのは難しい
複雑なものは簡単なものの組み合わせに
(設計の基本!)
1) det E = 1
✓
1
0
◆
✓
0
1
◆
✓
1
0
◆
✓
0
1
◆
E =
✓
1 0
0 1
◆
id
detE = 1
1 0
0 1
= 1
2) det(b, a) = -det(a, b)
✓
1
0
◆
✓
0
1
◆
✓
1
0
◆
✓
0
1
◆
A =
✓
0 1
1 0
◆
裏向き
f
det(b, a) = det(a, b)
0 1
1 0
=
1 0
0 1
= 1
det(a1 + a2, b) = det(a1, b) + det(a2, b),
det(k・a, b) = k・det(a, b)
✓
1
0
◆
✓
0
1
◆
f
3) det(ka, b) = k · det(a, b)
A =
✓
2 0
0 1
◆
✓
0
1
◆
✓
2
0
◆
2 0
0 1
= 2 ·
1 0
0 1
= 2
det(a1 + a2, b) = det(a1, b) + det(a2, b)
実はこれが行列式の全て!
detE = 1
det(b, a) = det(a, b)
det(ka, b) = k · det(a, b)
1)
2)
3)
(交代性)
(多重線形性)
det(a1 + a2, b) = det(a1, b) + det(a2, b)
1) ∼ 3) から導かれる便利な性質
4)
5)
det(a, a) = 0
det(a kb, b) = det(a, b)
計算してみよう!
1 2
3 4
1 2
3 4
1 2
3 4
=
1 2
0 4
+
0 2
3 4
3)
1 2
3 4
=
1 2
0 4
+
0 2
3 4
1 2
3 4
=
1 2
0 4
+
0 2
3 4
=
1 2
0 0
+
1 0
0 4
+
0 2
3 0
+
0 0
3 4
3)
1 2
3 4
=
1 2
0 4
+
0 2
3 4
= 0 = 0
=
1 2
0 0
+
1 0
0 4
+
0 2
3 0
+
0 0
3 4
4)
1 2
3 4
=
1 2
0 4
+
0 2
3 4
=
1 2
0 0
+
1 0
0 4
+
0 2
3 0
+
0 0
3 4
= 4
1 0
0 1
+ 2 · 3
0 1
1 0
3)
1 2
3 4
=
1 2
0 4
+
0 2
3 4
=
1 2
0 0
+
1 0
0 4
+
0 2
3 0
+
0 0
3 4
= 4
1 0
0 1
+ 2 · 3
0 1
1 0
= 4
1 0
0 1
2 · 3
1 0
0 1
2)
1 2
3 4
=
1 2
0 4
+
0 2
3 4
=
1 2
0 0
+
1 0
0 4
+
0 2
3 0
+
0 0
3 4
= 4
1 0
0 1
+ 2 · 3
0 1
1 0
= 4
1 0
0 1
2 · 3
1 0
0 1
= 1 = 11)
1 2
3 4
=
1 2
0 4
+
0 2
3 4
=
1 2
0 0
+
1 0
0 4
+
0 2
3 0
+
0 0
3 4
= 4
1 0
0 1
+ 2 · 3
0 1
1 0
= 4
1 0
0 1
2 · 3
1 0
0 1 = 2
1 2 3
4 5 6
7 8 9
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9
1 0 0
0 1 0
0 0 1
+ 1 · 6 · 8
1 0 0
0 0 1
0 1 0
+2 · 4 · 9
0 1 0
1 0 0
0 0 1
+ 2 · 6 · 7
0 1 0
0 0 1
1 0 0
+3 · 4 · 8
0 0 1
1 0 0
0 1 0
+ 3 · 5 · 7
0 0 1
0 1 0
1 0 0
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9
1 0 0
0 1 0
0 0 1
+ 1 · 6 · 8
1 0 0
0 0 1
0 1 0
+2 · 4 · 9
0 1 0
1 0 0
0 0 1
+ 2 · 6 · 7
0 1 0
0 0 1
1 0 0
+3 · 4 · 8
0 0 1
1 0 0
0 1 0
+ 3 · 5 · 7
0 0 1
0 1 0
1 0 0
= 1
= 1
= 1
= 1
= 1
= 1
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9
1 0 0
0 1 0
0 0 1
+ 1 · 6 · 8
1 0 0
0 0 1
0 1 0
+2 · 4 · 9
0 1 0
1 0 0
0 0 1
+ 2 · 6 · 7
0 1 0
0 0 1
1 0 0
+3 · 4 · 8
0 0 1
1 0 0
0 1 0
+ 3 · 5 · 7
0 0 1
0 1 0
1 0 0
= 1 · 5 · 9 1 · 6 · 8
+2 · 6 · 7 2 · 4 · 9
+3 · 4 · 8 3 · 5 · 7 = 0
行列式計算のアルゴリズム
1. 各行から列が重複しないように成分を取り出して掛ける
2. 残った 0, 1 だけの行列式を計算する(偶数回の交代で単
位行列になる場合 1、奇数回の場合 -1)
3. これらの取り出し方の全パターンを足し合わせる
アルゴリズムを数式にすると…
detA =
X
2Sn
Y
i
ai, (i)
. . .
. . .
. . .
detA =
X
2Sn
Y
i
ai, (i)
. . .
. . .
. . .
アルゴリズムを数式にすると…
A の i 行から取り出した成分
detA =
X
2Sn
Y
i
ai, (i)
. . .
. . .
. . .
各行に渡る成分の積
アルゴリズムを数式にすると…
detA =
X
2Sn
Y
i
ai, (i)
. . .
. . .
. . .
残った 0, 1 だけの行列式
アルゴリズムを数式にすると…
detA =
X
2Sn
Y
i
ai, (i)
. . .
. . .
. . .
並べ替えの全パターンの総和
アルゴリズムを数式にすると…
アルゴリズムを数式にすると…
detA =
X
2Sn
Y
i
ai, (i)
. . .
. . .
. . .
detA =
X
2Sn
Y
i
ai, (i)
. . .
. . .
. . .
=
X
2Sn
Y
i
ai, (i)sgn( )
アルゴリズムを数式にすると…
並べ替えの「符号」
(偶数回: 1, 奇数回: -1)
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9
1 0 0
0 1 0
0 0 1
+ 1 · 6 · 8
1 0 0
0 0 1
0 1 0
+2 · 4 · 9
0 1 0
1 0 0
0 0 1
+ 2 · 6 · 7
0 1 0
0 0 1
1 0 0
+3 · 4 · 8
0 0 1
1 0 0
0 1 0
+ 3 · 5 · 7
0 0 1
0 1 0
1 0 0
detA =
X
2Sn
Y
i
ai, (i)sgn( )
同じ式に見えるかな?
これが行列式の「定義」として
数学の本に出てくる
理解すべき原理はこっち:
detE = 1
det(b, a) = det(a, b)
det(ka, b) = k · det(a, b)
1)
2)
3)
(交代性)
(多重線形性)
det(a1 + a2, b) = det(a1, b) + det(a2, b)
出発点はシンプルな方が良い
宿題: 行列と行列式を好きな言語で
実装してみましょう
行列式の展開
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9
1 0 0
0 1 0
0 0 1
+ 1 · 6 · 8
1 0 0
0 0 1
0 1 0
+2 · 4 · 9
0 1 0
1 0 0
0 0 1
+ 2 · 6 · 7
0 1 0
0 0 1
1 0 0
+3 · 4 · 8
0 0 1
1 0 0
0 1 0
+ 3 · 5 · 7
0 0 1
0 1 0
1 0 0
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9
1 0 0
0 1 0
0 0 1
+ 1 · 6 · 8
1 0 0
0 0 1
0 1 0
+2 · 4 · 9
0 1 0
1 0 0
0 0 1
+ 2 · 6 · 7
0 1 0
0 0 1
1 0 0
+3 · 4 · 8
0 0 1
1 0 0
0 1 0
+ 3 · 5 · 7
0 0 1
0 1 0
1 0 0
1 2 3
4 5 6
7 8 9
= 1
0
@5 · 9
1 0 0
0 1 0
0 0 1
+ 6 · 8
1 0 0
0 0 1
0 1 0
1
A
+2
0
@4 · 9
0 1 0
1 0 0
0 0 1
+ 6 · 7
0 1 0
0 0 1
1 0 0
1
A
+3
0
@4 · 8
0 0 1
1 0 0
0 1 0
+ 5 · 7
0 0 1
0 1 0
1 0 0
1
A
1 2 3
4 5 6
7 8 9
= 1
0
@5 · 9
1 0 0
0 1 0
0 0 1
+ 6 · 8
1 0 0
0 0 1
0 1 0
1
A
+2
0
@4 · 9
0 1 0
1 0 0
0 0 1
+ 6 · 7
0 1 0
0 0 1
1 0 0
1
A
+3
0
@4 · 8
0 0 1
1 0 0
0 1 0
+ 5 · 7
0 0 1
0 1 0
1 0 0
1
A
1 2 3
4 5 6
7 8 9
= 1
✓
5 · 9
1 0
0 1
+ 6 · 8
0 1
1 0
◆
2
✓
4 · 9
1 0
0 1
+ 6 · 7
0 1
1 0
◆
+3
✓
4 · 8
1 0
0 1
+ 5 · 7
0 1
1 0
◆
1 2 3
4 5 6
7 8 9
= 1
✓
5 · 9
1 0
0 1
+ 6 · 8
0 1
1 0
◆
2
✓
4 · 9
1 0
0 1
+ 6 · 7
0 1
1 0
◆
+3
✓
4 · 8
1 0
0 1
+ 5 · 7
0 1
1 0
◆
1 2 3
4 5 6
7 8 9
= 1
✓
5 · 9
1 0
0 1
+ 6 · 8
0 1
1 0
◆
2
✓
4 · 9
1 0
0 1
+ 6 · 7
0 1
1 0
◆
+3
✓
4 · 8
1 0
0 1
+ 5 · 7
0 1
1 0
◆
= 1
5 6
8 9
2
4 6
7 9
+ 3
4 5
7 8
1 2 3
4 5 6
7 8 9
= 1
✓
5 · 9
1 0
0 1
+ 6 · 8
0 1
1 0
◆
2
✓
4 · 9
1 0
0 1
+ 6 · 7
0 1
1 0
◆
+3
✓
4 · 8
1 0
0 1
+ 5 · 7
0 1
1 0
◆
= 1
5 6
8 9
2
4 6
7 9
+ 3
4 5
7 8 … 第1行で展開
1 2 3
4 5 6
7 8 9
= 1 · 5 · 9
1 0 0
0 1 0
0 0 1
+ 1 · 6 · 8
1 0 0
0 0 1
0 1 0
+2 · 4 · 9
0 1 0
1 0 0
0 0 1
+ 2 · 6 · 7
0 1 0
0 0 1
1 0 0
+3 · 4 · 8
0 0 1
1 0 0
0 1 0
+ 3 · 5 · 7
0 0 1
0 1 0
1 0 0
くくり出し方を変えれば、任意の行・列で展開できる
= 2
4 6
7 9
+ 5
1 3
7 9
8
1 3
4 6
n次行列式は (n-1) 次行列式の和に展開できる
→ 再帰呼び出しでも実装できる(宿題)
そして逆行列
✓
1
0
◆
✓
0
1
◆
✓
a
0
◆
✓
0
b
◆
✓
cos ✓
sin ✓
◆
✓
sin ✓
cos ✓
◆
✓
0
1
◆
✓
1
0
◆ ✓
1
0
◆
f
逆行列:逆変換に対応する行列
f 1
A 1
=
✓
cos( ✓) sin( ✓)
sin( ✓) cos( ✓)
◆
A 1
=
✓
1/a 0
0 1/b
◆
A 1
=
✓
1 0
0 1
◆
逆変換なし!
A =
0
@
1 2 3
1 0 1
2 1 2
1
A
A =
0
@
1 2 3
1 0 1
2 1 2
1
A
0
@
x
y
z
1
A
0
@
x + 2y + z
x z
2x + y 2z
1
A
A 1
det A 0 であれば、逆行列 A-1 は取れるはず。
A 1
A = E AA 1
= E
やってみましょう。
(トリッキーなことをします)
1 2 3
1 0 1
2 1 2
= 1
0 1
1 2
2
1 1
2 2
+ 3
1 0
2 1 = 4
第1行で展開
1 2 3
1 0 1
2 1 2
= 1
0 1
1 2
2
1 1
2 2
+ 3
1 0
2 1 = 4
1 0 1
1 0 1
2 1 2
= 1
0 1
1 2
0
1 1
2 2
1
1 0
2 1
2行目を1行目にコピペ
1 2 3
1 0 1
2 1 2
= 1
0 1
1 2
2
1 1
2 2
+ 3
1 0
2 1 = 4
1 0 1
1 0 1
2 1 2
= 1
0 1
1 2
0
1 1
2 2
1
1 0
2 1 = 0
1 2 3
1 0 1
2 1 2
= 1
0 1
1 2
2
1 1
2 2
+ 3
1 0
2 1 = 4
1 0 1
1 0 1
2 1 2
= 1
0 1
1 2
0
1 1
2 2
1
1 0
2 1 = 0
同じ行が並んでいるので
計算するまでもなく 0
1 2 3
1 0 1
2 1 2
= 1
0 1
1 2
2
1 1
2 2
+ 3
1 0
2 1 = 4
1 0 1
1 0 1
2 1 2
= 1
0 1
1 2
0
1 1
2 2
1
1 0
2 1
2 1 2
1 0 1
2 1 2
= 2
0 1
1 2
1
1 1
2 2
2
1 0
2 1
= 0
= 03行目を1行目にコピペ
1 2 3
1 0 1
2 1 2
= 1
0 1
1 2
2
1 1
2 2
+ 3
1 0
2 1 = 4
1 0 1
1 0 1
2 1 2
= 1
0 1
1 2
0
1 1
2 2
1
1 0
2 1
2 1 2
1 0 1
2 1 2
= 2
0 1
1 2
1
1 1
2 2
2
1 0
2 1
= 0
= 0
1 2 3
1 0 1
2 1 2
= 1
0 1
1 2
2
1 1
2 2
+ 3
1 0
2 1 = 4
1 0 1
1 0 1
2 1 2
= 1
0 1
1 2
0
1 1
2 2
1
1 0
2 1
2 1 2
1 0 1
2 1 2
= 2
0 1
1 2
1
1 1
2 2
2
1 0
2 1
= 0
= 0
Aの要素が並んでいる…
1 2 3
1 0 1
2 1 2
= 1
0 1
1 2
2
1 1
2 2
+ 3
1 0
2 1 = 4
1 0 1
1 0 1
2 1 2
= 1
0 1
1 2
0
1 1
2 2
1
1 0
2 1
2 1 2
1 0 1
2 1 2
= 2
0 1
1 2
1
1 1
2 2
2
1 0
2 1
= 0
= 0
縦には同じ行列式…これは…!
ドーン!
0
@
1 2 3
1 0 1
2 1 2
1
A
0
B
B
B
B
B
B
B
B
B
B
@
0 1
1 2
1 1
2 2
1 0
2 1
1
C
C
C
C
C
C
C
C
C
C
A
=
0
@
4
0
0
1
A
同じことを 第2行、第3行 でもやる。
ドドーン!
0
@
1 2 3
1 0 1
2 1 2
1
A
0
B
B
B
B
B
B
B
B
B
B
@
2 3
1 2
1 3
2 2
1 2
2 1
1
C
C
C
C
C
C
C
C
C
C
A
=
0
@
0
4
0
1
A
0
@
1 2 3
1 0 1
2 1 2
1
A
0
B
B
B
B
B
B
B
B
B
B
@
2 3
0 1
1 3
1 1
1 2
1 0
1
C
C
C
C
C
C
C
C
C
C
A
=
0
@
0
0
4
1
A
全部合わせて…
0
@
1 2 3
1 0 1
2 1 2
1
A
0
B
B
B
B
B
B
B
B
B
B
@
0 1
1 2
1 1
2 2
1 0
2 1
1
C
C
C
C
C
C
C
C
C
C
A
=
0
@
4
0
0
1
A
0
@
1 2 3
1 0 1
2 1 2
1
A
0
B
B
B
B
B
B
B
B
B
B
@
2 3
1 2
1 3
2 2
1 2
2 1
1
C
C
C
C
C
C
C
C
C
C
A
=
0
@
0
4
0
1
A
0
@
1 2 3
1 0 1
2 1 2
1
A
0
B
B
B
B
B
B
B
B
B
B
@
2 3
0 1
1 3
1 1
1 2
1 0
1
C
C
C
C
C
C
C
C
C
C
A
=
0
@
0
0
4
1
A
Enter the Matrix…
0
@
1 2 3
1 0 1
2 1 2
1
A
0
B
B
B
B
B
B
B
B
B
B
@
0 1
1 2
2 3
0 1
2 3
0 1
1 1
2 2
1 3
2 2
1 3
1 1
1 0
2 1
1 2
2 1
1 2
1 0
1
C
C
C
C
C
C
C
C
C
C
A
=
0
@
4 0 0
0 4 0
0 0 4
1
A
両辺 detA = 4 で割れば…
0
@
1 2 3
1 0 1
2 1 2
1
A
0
B
B
B
B
B
B
B
B
B
B
@
0 1
1 2
2 3
0 1
2 3
0 1
1 1
2 2
1 3
2 2
1 3
1 1
1 0
2 1
1 2
2 1
1 2
1 0
1
C
C
C
C
C
C
C
C
C
C
A
=
0
@
4 0 0
0 4 0
0 0 4
1
A
detA = 4
できあがり!
0
@
1 2 3
1 0 1
2 1 2
1
A ·
1
detA
0
B
B
B
B
B
B
B
B
B
B
@
0 1
1 2
2 3
0 1
2 3
0 1
1 1
2 2
1 3
2 2
1 3
1 1
1 0
2 1
1 2
2 1
1 2
1 0
1
C
C
C
C
C
C
C
C
C
C
A
=
0
@
1 0 0
0 1 0
0 0 1
1
A
= A 1 =
1
4
0
@
1 7 1
0 8 4
1 3 2
1
A
n次行列の場合も全く同じ
(宿題ってことで)
高次元の計算にはもっと効率的な方法がある
• 余因子行列による方法 … O(n3)
• 掃き出し法 … O(n2)
• LU分解 … O(n2)
• …
まとめ
• 行列式は線形変換の特徴を表す1次元の量
• detA 0 のとき、逆変換が作れる
• 計算は機械に任せよう(仕組みが分かってれば良い)
行列式の原理:
detE = 1
det(b, a) = det(a, b)
det(ka, b) = k · det(a, b)
1)
2)
3)
(交代性)
(多重線形性)
det(a1 + a2, b) = det(a1, b) + det(a2, b)
線形変換は多変数の変換のうち最も単純なもの。
ホントは逆変換が一発で求められること自体ありがたい。
プログラマのための線形代数 再 入門 3
∼基底変換、固有値、そしてその先∼
次回予告:
Thanks!
Twitter: @taketo1024

Blog: http://taketo1024.hateblo.jp
0
@
1 2 3
1 0 1
2 1 2
1
A ·
1
detA
0
B
B
B
B
B
B
B
B
B
B
@
0 1
1 2
2 3
0 1
2 3
0 1
1 1
2 2
1 3
2 2
1 3
1 1
1 0
2 1
1 2
2 1
1 2
1 0
1
C
C
C
C
C
C
C
C
C
C
A
=
0
@
1 0 0
0 1 0
0 0 1
1
A

More Related Content

What's hot

機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)Satoshi Hara
 
変分ベイズ法の説明
変分ベイズ法の説明変分ベイズ法の説明
変分ベイズ法の説明Haruka Ozaki
 
最適輸送の解き方
最適輸送の解き方最適輸送の解き方
最適輸送の解き方joisino
 
PyMCがあれば,ベイズ推定でもう泣いたりなんかしない
PyMCがあれば,ベイズ推定でもう泣いたりなんかしないPyMCがあれば,ベイズ推定でもう泣いたりなんかしない
PyMCがあれば,ベイズ推定でもう泣いたりなんかしないToshihiro Kamishima
 
パターン認識と機械学習 §6.2 カーネル関数の構成
パターン認識と機械学習 §6.2 カーネル関数の構成パターン認識と機械学習 §6.2 カーネル関数の構成
パターン認識と機械学習 §6.2 カーネル関数の構成Prunus 1350
 
フーリエ変換と画像圧縮の仕組み
フーリエ変換と画像圧縮の仕組みフーリエ変換と画像圧縮の仕組み
フーリエ変換と画像圧縮の仕組みyuichi takeda
 
XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性西岡 賢一郎
 
生成モデルの Deep Learning
生成モデルの Deep Learning生成モデルの Deep Learning
生成モデルの Deep LearningSeiya Tokui
 
Deep Learningと画像認識   ~歴史・理論・実践~
Deep Learningと画像認識 ~歴史・理論・実践~Deep Learningと画像認識 ~歴史・理論・実践~
Deep Learningと画像認識   ~歴史・理論・実践~nlab_utokyo
 
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割Ichigaku Takigawa
 
クラシックな機械学習の入門  5. サポートベクターマシン
クラシックな機械学習の入門  5. サポートベクターマシンクラシックな機械学習の入門  5. サポートベクターマシン
クラシックな機械学習の入門  5. サポートベクターマシンHiroshi Nakagawa
 
[DL輪読会]モデルベース強化学習とEnergy Based Model
[DL輪読会]モデルベース強化学習とEnergy Based Model[DL輪読会]モデルベース強化学習とEnergy Based Model
[DL輪読会]モデルベース強化学習とEnergy Based ModelDeep Learning JP
 
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展Shiga University, RIKEN
 
Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAttentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAGIRobots
 
勾配降下法の 最適化アルゴリズム
勾配降下法の最適化アルゴリズム勾配降下法の最適化アルゴリズム
勾配降下法の 最適化アルゴリズムnishio
 
PyTorchLightning ベース Hydra+MLFlow+Optuna による機械学習開発環境の構築
PyTorchLightning ベース Hydra+MLFlow+Optuna による機械学習開発環境の構築PyTorchLightning ベース Hydra+MLFlow+Optuna による機械学習開発環境の構築
PyTorchLightning ベース Hydra+MLFlow+Optuna による機械学習開発環境の構築Kosuke Shinoda
 
不均衡データのクラス分類
不均衡データのクラス分類不均衡データのクラス分類
不均衡データのクラス分類Shintaro Fukushima
 
ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介Naoki Hayashi
 

What's hot (20)

機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)
 
変分ベイズ法の説明
変分ベイズ法の説明変分ベイズ法の説明
変分ベイズ法の説明
 
最適輸送の解き方
最適輸送の解き方最適輸送の解き方
最適輸送の解き方
 
PyMCがあれば,ベイズ推定でもう泣いたりなんかしない
PyMCがあれば,ベイズ推定でもう泣いたりなんかしないPyMCがあれば,ベイズ推定でもう泣いたりなんかしない
PyMCがあれば,ベイズ推定でもう泣いたりなんかしない
 
パターン認識と機械学習 §6.2 カーネル関数の構成
パターン認識と機械学習 §6.2 カーネル関数の構成パターン認識と機械学習 §6.2 カーネル関数の構成
パターン認識と機械学習 §6.2 カーネル関数の構成
 
線形計画法入門
線形計画法入門線形計画法入門
線形計画法入門
 
フーリエ変換と画像圧縮の仕組み
フーリエ変換と画像圧縮の仕組みフーリエ変換と画像圧縮の仕組み
フーリエ変換と画像圧縮の仕組み
 
XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性
 
生成モデルの Deep Learning
生成モデルの Deep Learning生成モデルの Deep Learning
生成モデルの Deep Learning
 
Deep Learningと画像認識   ~歴史・理論・実践~
Deep Learningと画像認識 ~歴史・理論・実践~Deep Learningと画像認識 ~歴史・理論・実践~
Deep Learningと画像認識   ~歴史・理論・実践~
 
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割
決定森回帰の信頼区間推定, Benign Overfitting, 多変量木とReLUネットの入力空間分割
 
Rによるベイジアンネットワーク入門
Rによるベイジアンネットワーク入門Rによるベイジアンネットワーク入門
Rによるベイジアンネットワーク入門
 
クラシックな機械学習の入門  5. サポートベクターマシン
クラシックな機械学習の入門  5. サポートベクターマシンクラシックな機械学習の入門  5. サポートベクターマシン
クラシックな機械学習の入門  5. サポートベクターマシン
 
[DL輪読会]モデルベース強化学習とEnergy Based Model
[DL輪読会]モデルベース強化学習とEnergy Based Model[DL輪読会]モデルベース強化学習とEnergy Based Model
[DL輪読会]モデルベース強化学習とEnergy Based Model
 
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
構造方程式モデルによる因果推論: 因果構造探索に関する最近の発展
 
Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門までAttentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門まで
 
勾配降下法の 最適化アルゴリズム
勾配降下法の最適化アルゴリズム勾配降下法の最適化アルゴリズム
勾配降下法の 最適化アルゴリズム
 
PyTorchLightning ベース Hydra+MLFlow+Optuna による機械学習開発環境の構築
PyTorchLightning ベース Hydra+MLFlow+Optuna による機械学習開発環境の構築PyTorchLightning ベース Hydra+MLFlow+Optuna による機械学習開発環境の構築
PyTorchLightning ベース Hydra+MLFlow+Optuna による機械学習開発環境の構築
 
不均衡データのクラス分類
不均衡データのクラス分類不均衡データのクラス分類
不均衡データのクラス分類
 
ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介ベイズ統計学の概論的紹介
ベイズ統計学の概論的紹介
 

Similar to プログラマのための線形代数再入門2 〜 要件定義から学ぶ行列式と逆行列

算数で体感する高度数学
算数で体感する高度数学算数で体感する高度数学
算数で体感する高度数学Arithmer Inc.
 
トーナメントは運か実力か
トーナメントは運か実力かトーナメントは運か実力か
トーナメントは運か実力かKazuro Fukuhara
 
ゼータへ続く素数の階段物語 第13回 数学カフェ「素数!!」
ゼータへ続く素数の階段物語 第13回 数学カフェ「素数!!」ゼータへ続く素数の階段物語 第13回 数学カフェ「素数!!」
ゼータへ続く素数の階段物語 第13回 数学カフェ「素数!!」Junpei Tsuji
 
Operations research yonezawa_no2
Operations research yonezawa_no2Operations research yonezawa_no2
Operations research yonezawa_no2ssuser0bebd2
 
九九の表についての研究
九九の表についての研究九九の表についての研究
九九の表についての研究Tomoyoshi HIRATA
 
KMC JavaScriptから始めるプログラミング2016 第一回
KMC JavaScriptから始めるプログラミング2016 第一回KMC JavaScriptから始めるプログラミング2016 第一回
KMC JavaScriptから始めるプログラミング2016 第一回kyoto university
 
【Unity道場】ゲーム制作に使う数学を学習しよう
【Unity道場】ゲーム制作に使う数学を学習しよう【Unity道場】ゲーム制作に使う数学を学習しよう
【Unity道場】ゲーム制作に使う数学を学習しようUnity Technologies Japan K.K.
 
2分木の演習問題[アルゴリズムとデータ構造]
2分木の演習問題[アルゴリズムとデータ構造]2分木の演習問題[アルゴリズムとデータ構造]
2分木の演習問題[アルゴリズムとデータ構造]Hagihara Ryosuke
 
アルゴリズムイントロダクション15章 動的計画法
アルゴリズムイントロダクション15章 動的計画法アルゴリズムイントロダクション15章 動的計画法
アルゴリズムイントロダクション15章 動的計画法nitoyon
 
スプラトゥーン2 × 数学(訂正版)
スプラトゥーン2 × 数学(訂正版)スプラトゥーン2 × 数学(訂正版)
スプラトゥーン2 × 数学(訂正版)Takunology
 
機械学習を学ぶための準備 その4 (行列の掛け算について) 試験問題 解答
機械学習を学ぶための準備 その4  (行列の掛け算について) 試験問題 解答機械学習を学ぶための準備 その4  (行列の掛け算について) 試験問題 解答
機械学習を学ぶための準備 その4 (行列の掛け算について) 試験問題 解答NHN テコラス株式会社
 
「時計の世界の整数論」第2回プログラマのための数学勉強会 #maths4pg
「時計の世界の整数論」第2回プログラマのための数学勉強会 #maths4pg「時計の世界の整数論」第2回プログラマのための数学勉強会 #maths4pg
「時計の世界の整数論」第2回プログラマのための数学勉強会 #maths4pgJunpei Tsuji
 
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)Kensuke Otsuki
 
Computing for Isogeny Kernel Problem by Groebner Basis
Computing for Isogeny Kernel Problem by Groebner BasisComputing for Isogeny Kernel Problem by Groebner Basis
Computing for Isogeny Kernel Problem by Groebner BasisYasu Math
 
S1_第2回DSEカンファレンス資料_okura
S1_第2回DSEカンファレンス資料_okuraS1_第2回DSEカンファレンス資料_okura
S1_第2回DSEカンファレンス資料_okurayoroz okura
 
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」Nagi Teramo
 

Similar to プログラマのための線形代数再入門2 〜 要件定義から学ぶ行列式と逆行列 (20)

算数で体感する高度数学
算数で体感する高度数学算数で体感する高度数学
算数で体感する高度数学
 
トーナメントは運か実力か
トーナメントは運か実力かトーナメントは運か実力か
トーナメントは運か実力か
 
平方剰余
平方剰余平方剰余
平方剰余
 
ゼータへ続く素数の階段物語 第13回 数学カフェ「素数!!」
ゼータへ続く素数の階段物語 第13回 数学カフェ「素数!!」ゼータへ続く素数の階段物語 第13回 数学カフェ「素数!!」
ゼータへ続く素数の階段物語 第13回 数学カフェ「素数!!」
 
Operations research yonezawa_no2
Operations research yonezawa_no2Operations research yonezawa_no2
Operations research yonezawa_no2
 
九九の表についての研究
九九の表についての研究九九の表についての研究
九九の表についての研究
 
KMC JavaScriptから始めるプログラミング2016 第一回
KMC JavaScriptから始めるプログラミング2016 第一回KMC JavaScriptから始めるプログラミング2016 第一回
KMC JavaScriptから始めるプログラミング2016 第一回
 
【Unity道場】ゲーム制作に使う数学を学習しよう
【Unity道場】ゲーム制作に使う数学を学習しよう【Unity道場】ゲーム制作に使う数学を学習しよう
【Unity道場】ゲーム制作に使う数学を学習しよう
 
Matrix
MatrixMatrix
Matrix
 
2分木の演習問題[アルゴリズムとデータ構造]
2分木の演習問題[アルゴリズムとデータ構造]2分木の演習問題[アルゴリズムとデータ構造]
2分木の演習問題[アルゴリズムとデータ構造]
 
C02
C02C02
C02
 
アルゴリズムイントロダクション15章 動的計画法
アルゴリズムイントロダクション15章 動的計画法アルゴリズムイントロダクション15章 動的計画法
アルゴリズムイントロダクション15章 動的計画法
 
スプラトゥーン2 × 数学(訂正版)
スプラトゥーン2 × 数学(訂正版)スプラトゥーン2 × 数学(訂正版)
スプラトゥーン2 × 数学(訂正版)
 
機械学習を学ぶための準備 その4 (行列の掛け算について) 試験問題 解答
機械学習を学ぶための準備 その4  (行列の掛け算について) 試験問題 解答機械学習を学ぶための準備 その4  (行列の掛け算について) 試験問題 解答
機械学習を学ぶための準備 その4 (行列の掛け算について) 試験問題 解答
 
「時計の世界の整数論」第2回プログラマのための数学勉強会 #maths4pg
「時計の世界の整数論」第2回プログラマのための数学勉強会 #maths4pg「時計の世界の整数論」第2回プログラマのための数学勉強会 #maths4pg
「時計の世界の整数論」第2回プログラマのための数学勉強会 #maths4pg
 
R language definition3.1_3.2
R language definition3.1_3.2R language definition3.1_3.2
R language definition3.1_3.2
 
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)
「現実世界に活かす数学」 (麻布高等学校、教養総合、数学講義 5 回目)
 
Computing for Isogeny Kernel Problem by Groebner Basis
Computing for Isogeny Kernel Problem by Groebner BasisComputing for Isogeny Kernel Problem by Groebner Basis
Computing for Isogeny Kernel Problem by Groebner Basis
 
S1_第2回DSEカンファレンス資料_okura
S1_第2回DSEカンファレンス資料_okuraS1_第2回DSEカンファレンス資料_okura
S1_第2回DSEカンファレンス資料_okura
 
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
「plyrパッケージで君も前処理スタ☆」改め「plyrパッケージ徹底入門」
 

More from Taketo Sano

Divisibility of Lee’s class and its relation with Rasmussen’s invariant / 201...
Divisibility of Lee’s class and its relation with Rasmussen’s invariant / 201...Divisibility of Lee’s class and its relation with Rasmussen’s invariant / 201...
Divisibility of Lee’s class and its relation with Rasmussen’s invariant / 201...Taketo Sano
 
トポロジーと圏論の夜明け
トポロジーと圏論の夜明けトポロジーと圏論の夜明け
トポロジーと圏論の夜明けTaketo Sano
 
Swift で数学研究のススメ
Swift で数学研究のススメSwift で数学研究のススメ
Swift で数学研究のススメTaketo Sano
 
(意欲的な中高生のための)トポロジー・圏論・コンピュータ
(意欲的な中高生のための)トポロジー・圏論・コンピュータ(意欲的な中高生のための)トポロジー・圏論・コンピュータ
(意欲的な中高生のための)トポロジー・圏論・コンピュータTaketo Sano
 
特性類の気持ち
特性類の気持ち特性類の気持ち
特性類の気持ちTaketo Sano
 
Swift で数学のススメ 〜 プログラミングと数学は同時に学べ
Swift で数学のススメ 〜 プログラミングと数学は同時に学べSwift で数学のススメ 〜 プログラミングと数学は同時に学べ
Swift で数学のススメ 〜 プログラミングと数学は同時に学べTaketo Sano
 
山手線は丸いのか?プログラマのためのトポロジー入門
山手線は丸いのか?プログラマのためのトポロジー入門山手線は丸いのか?プログラマのためのトポロジー入門
山手線は丸いのか?プログラマのためのトポロジー入門Taketo Sano
 
何もないところから数を作る
何もないところから数を作る何もないところから数を作る
何もないところから数を作るTaketo Sano
 
「数える」とは何か? 〜 「とは何か?」を問う、AI時代の数学
「数える」とは何か? 〜 「とは何か?」を問う、AI時代の数学「数える」とは何か? 〜 「とは何か?」を問う、AI時代の数学
「数える」とは何か? 〜 「とは何か?」を問う、AI時代の数学Taketo Sano
 
情報幾何学 #2.4
情報幾何学 #2.4情報幾何学 #2.4
情報幾何学 #2.4Taketo Sano
 
情報幾何学 #2 #infogeo16
情報幾何学 #2 #infogeo16情報幾何学 #2 #infogeo16
情報幾何学 #2 #infogeo16Taketo Sano
 
objc2swift 〜 Objective-C から Swift への「コード&パラダイム」シフト
objc2swift 〜 Objective-C から Swift への「コード&パラダイム」シフトobjc2swift 〜 Objective-C から Swift への「コード&パラダイム」シフト
objc2swift 〜 Objective-C から Swift への「コード&パラダイム」シフトTaketo Sano
 
何もないところから数を作る
何もないところから数を作る何もないところから数を作る
何もないところから数を作るTaketo Sano
 
objc2swift (続・自動変換の野望)
objc2swift (続・自動変換の野望) objc2swift (続・自動変換の野望)
objc2swift (続・自動変換の野望) Taketo Sano
 
さらに上を目指すための iOS アプリ設計
さらに上を目指すための iOS アプリ設計さらに上を目指すための iOS アプリ設計
さらに上を目指すための iOS アプリ設計Taketo Sano
 
objc2swift (自動変換の野望)
objc2swift (自動変換の野望)objc2swift (自動変換の野望)
objc2swift (自動変換の野望)Taketo Sano
 
2015 02-18 xxx-literalconvertible
2015 02-18 xxx-literalconvertible2015 02-18 xxx-literalconvertible
2015 02-18 xxx-literalconvertibleTaketo Sano
 
let UIWebView as WKWebView
let UIWebView as WKWebViewlet UIWebView as WKWebView
let UIWebView as WKWebViewTaketo Sano
 
コードを書けば複素数がわかる
コードを書けば複素数がわかるコードを書けば複素数がわかる
コードを書けば複素数がわかるTaketo Sano
 
虚数は作れる!Swift で学ぶ複素数
虚数は作れる!Swift で学ぶ複素数虚数は作れる!Swift で学ぶ複素数
虚数は作れる!Swift で学ぶ複素数Taketo Sano
 

More from Taketo Sano (20)

Divisibility of Lee’s class and its relation with Rasmussen’s invariant / 201...
Divisibility of Lee’s class and its relation with Rasmussen’s invariant / 201...Divisibility of Lee’s class and its relation with Rasmussen’s invariant / 201...
Divisibility of Lee’s class and its relation with Rasmussen’s invariant / 201...
 
トポロジーと圏論の夜明け
トポロジーと圏論の夜明けトポロジーと圏論の夜明け
トポロジーと圏論の夜明け
 
Swift で数学研究のススメ
Swift で数学研究のススメSwift で数学研究のススメ
Swift で数学研究のススメ
 
(意欲的な中高生のための)トポロジー・圏論・コンピュータ
(意欲的な中高生のための)トポロジー・圏論・コンピュータ(意欲的な中高生のための)トポロジー・圏論・コンピュータ
(意欲的な中高生のための)トポロジー・圏論・コンピュータ
 
特性類の気持ち
特性類の気持ち特性類の気持ち
特性類の気持ち
 
Swift で数学のススメ 〜 プログラミングと数学は同時に学べ
Swift で数学のススメ 〜 プログラミングと数学は同時に学べSwift で数学のススメ 〜 プログラミングと数学は同時に学べ
Swift で数学のススメ 〜 プログラミングと数学は同時に学べ
 
山手線は丸いのか?プログラマのためのトポロジー入門
山手線は丸いのか?プログラマのためのトポロジー入門山手線は丸いのか?プログラマのためのトポロジー入門
山手線は丸いのか?プログラマのためのトポロジー入門
 
何もないところから数を作る
何もないところから数を作る何もないところから数を作る
何もないところから数を作る
 
「数える」とは何か? 〜 「とは何か?」を問う、AI時代の数学
「数える」とは何か? 〜 「とは何か?」を問う、AI時代の数学「数える」とは何か? 〜 「とは何か?」を問う、AI時代の数学
「数える」とは何か? 〜 「とは何か?」を問う、AI時代の数学
 
情報幾何学 #2.4
情報幾何学 #2.4情報幾何学 #2.4
情報幾何学 #2.4
 
情報幾何学 #2 #infogeo16
情報幾何学 #2 #infogeo16情報幾何学 #2 #infogeo16
情報幾何学 #2 #infogeo16
 
objc2swift 〜 Objective-C から Swift への「コード&パラダイム」シフト
objc2swift 〜 Objective-C から Swift への「コード&パラダイム」シフトobjc2swift 〜 Objective-C から Swift への「コード&パラダイム」シフト
objc2swift 〜 Objective-C から Swift への「コード&パラダイム」シフト
 
何もないところから数を作る
何もないところから数を作る何もないところから数を作る
何もないところから数を作る
 
objc2swift (続・自動変換の野望)
objc2swift (続・自動変換の野望) objc2swift (続・自動変換の野望)
objc2swift (続・自動変換の野望)
 
さらに上を目指すための iOS アプリ設計
さらに上を目指すための iOS アプリ設計さらに上を目指すための iOS アプリ設計
さらに上を目指すための iOS アプリ設計
 
objc2swift (自動変換の野望)
objc2swift (自動変換の野望)objc2swift (自動変換の野望)
objc2swift (自動変換の野望)
 
2015 02-18 xxx-literalconvertible
2015 02-18 xxx-literalconvertible2015 02-18 xxx-literalconvertible
2015 02-18 xxx-literalconvertible
 
let UIWebView as WKWebView
let UIWebView as WKWebViewlet UIWebView as WKWebView
let UIWebView as WKWebView
 
コードを書けば複素数がわかる
コードを書けば複素数がわかるコードを書けば複素数がわかる
コードを書けば複素数がわかる
 
虚数は作れる!Swift で学ぶ複素数
虚数は作れる!Swift で学ぶ複素数虚数は作れる!Swift で学ぶ複素数
虚数は作れる!Swift で学ぶ複素数
 

Recently uploaded

My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」inspirehighstaff03
 
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」inspirehighstaff03
 
My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」inspirehighstaff03
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドKen Fukui
 
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slidessusere0a682
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfyukisuga3
 
My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」inspirehighstaff03
 
Establishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdfEstablishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdfoganekyokoi
 
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドKen Fukui
 
My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」inspirehighstaff03
 
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」inspirehighstaff03
 
What I did before opening my business..pdf
What I did before opening my business..pdfWhat I did before opening my business..pdf
What I did before opening my business..pdfoganekyokoi
 
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdfMy Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdfinspirehighstaff03
 
My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」inspirehighstaff03
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドKen Fukui
 
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」inspirehighstaff03
 
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」inspirehighstaff03
 
International Politics I - Lecture 1
International Politics I - Lecture 1International Politics I - Lecture 1
International Politics I - Lecture 1Toru Oga
 
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」inspirehighstaff03
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドKen Fukui
 

Recently uploaded (20)

My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」
 
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
 
My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」
 
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライドリアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
リアル戦国探究in米沢 当日講座3スライド(スタッフ共有用)『糧は三度はさいせず』についてのスライド
 
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
 
My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」
 
Establishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdfEstablishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdf
 
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライドリアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
リアル戦国探究in米沢 事前講座2スライド(スタッフ共有用)『両雄の強さの秘密』についてのスライド
 
My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」
 
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
 
What I did before opening my business..pdf
What I did before opening my business..pdfWhat I did before opening my business..pdf
What I did before opening my business..pdf
 
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdfMy Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
 
My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」
 
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライドリアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
リアル戦国探究in米沢 事前講座1スライド(スタッフ共有用)『川中島の謎』についてのスライド
 
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」
 
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」
 
International Politics I - Lecture 1
International Politics I - Lecture 1International Politics I - Lecture 1
International Politics I - Lecture 1
 
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
 
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライドリアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
リアル戦国探究in米沢 当日講座2スライド(スタッフ共有用)『人を致すも人に致されず』についてのスライド
 

プログラマのための線形代数再入門2 〜 要件定義から学ぶ行列式と逆行列