I tipi AFAIU possono essere a i Setcui elementi sono programmi o i propositioncui elementi sono Prove. Quindi in base a questa comprensione:
Inductive prod (X Y: Type) : Set :=
| pair: X -> Y -> prod X Y.
Il seguente codice dovrebbe essere compilato ma non a causa del seguente errore. Se cambio Setcon Typeo l'altro Typecon Setesso si compila bene. Qualcuno può aiutarmi a capire cosa significa il seguente errore? Sto cercando di insegnare a me stesso Coq usando il libro Software Foundations.
Errore:
Error: Large non-propositional inductive types must be in Type.