自然数型は代数データ型で帰納的に定義されている。
Inductive nat : Set := | O : nat | S : nat -> nat
これは以下のような対応で自然数を表現している。
| 0 | O |
| 1 | S O |
| 2 | S (S O) |
| 3 | S (S (S O)) |
| ... | ... |
| 12 | S (S (S (S (S (S (S (S (S (S (S (S O))))))))))) |
| ... | ... |
3とか12とかの数字リテラルや+,-,*,<,<=などの演算子をnat型として使うにはnat_scopeをOpen すればよい。(デフォルトでオープンされている)
Open Scope nat_scope.