論理を記号に置き換え,形式的に操作を行い,論理が正しいかを確認することが目的である.
集合論は要素(element)が集合(set,collection)に”属する”という関係と論理より出発する.
\(x \in A\)
で$x$は$A$に属するとする.
素朴に”集合”をこの世のあらゆる物の集まりと考える.
集まりを規定する命題を$P(x)$とする.
命題$P(x)$を満たす要素$x$を集めた集合を下記のように記述する.
\(\{x|P(x)\}\)
これは,
\(\exists y \forall x(x \in y \leftrightarrow P(x))\)
の$y$である.
素朴な内包的記法において,命題を$P(x)$を$\forall x, x \not\in x$とすると. \(\forall x(x \in y \leftrightarrow x \not\in x) \\ y \in y \leftrightarrow y \not\in y\) となり,矛盾する.これは,要素と集合が明確に規定されていないため発生する.
要素と集合が明確でないため発生するRussel’s Pardoxをその発見者自身のBertrand Arthur William Russellが解決するために構築した理論である. Coqはこの型理論をもとにした数学証明支援器である. まず,
これから,
つまり,
これにより,要素と集合が明確に規定されるため,Russel’s paradoxを回避できる.