どうも、佐野です。前回の記事 で整数は「環」、有理数・実数・複素数は「体」であるという話をしました。今回は「群・環・体」といった代数的構造を protocol として定義し、実体としての整数・有理数・実数を struct として実装していきます。 目次: 数とは何か? 群・環・体の定義 ← イマココ 有理数を作ってみよう 時計の世界の「環」 小さな「体」を作ろう 多項式は整数によく似てる 代数拡大で数を作ろう! 「群」の定義 「群」の数学的な定義はこうです: 集合 $G$ に演算 $\cdot$ があり、以下を満たすとき $G$ を 群 (Group)という: [結合性] 任意の $a, b, c \in G$ に対し $(a \cdot b)\cdot c = a \cdot (b \cdot c)$ が成り立つ [単位元] ある $e \in G$ があり、任意の $a \in G$