AFAIU型は、Set
その要素がプログラムである、またはproposition
要素が証明であるにすることができます。したがって、この理解に基づいて:
Inductive prod (X Y: Type) : Set :=
| pair: X -> Y -> prod X Y.
次のコードはコンパイルされるはずですが、次のエラーが原因ではありません。私が変更された場合Set
にType
、または他Type
とのSet
それは罰金をコンパイルします。誰かが次のエラーの意味を理解するのを手伝ってくれる?Software Foundationsの本を使ってCoqを教えようとしています。
エラー:
Error: Large non-propositional inductive types must be in Type.
2
定理の証明者は常にCS.SEの灰色の領域でしたが、私はこれがModをStackOverflowに移行するための良い候補だと思います。
—
jmite 2017
@jmiteこの質問は、Coqが具体的な構文として機能している構造の計算に関するものであることを考えると、ここでは話題になっていると思います。
—
Gilles「SO-邪悪なこと