]> matita.cs.unibo.it Git - helm.git/commitdiff
New bug found in disambiguation of records.
authorClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Wed, 27 Sep 2006 13:14:33 +0000 (13:14 +0000)
committerClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Wed, 27 Sep 2006 13:14:33 +0000 (13:14 +0000)
To fix the bug it is necessary to propagate the substitution computed
during the type-checking of the constructors to the types of the inductive
types. This is quite complex to do. One possibility is simply to add the
substitution to the proof status.

matita/tests/record.ma

index ed9ecfed89044bb99ba17cf90fcb14f411dab30e..c024acf9e029c6a81a2f848a0902bca967390a01 100644 (file)
@@ -37,3 +37,8 @@ record paperino: Prop \def {
   pippo : paolo \to paolo;
   piero : True
 }.
+
+(* the following test used to show the following bug: the left
+   parameter A in the type of t was not unified with the left
+   parameter A in the type of the constructor of the record *)
+record t A : Type := { f : t A }.