diff options
author | 2009-11-30 22:59:32 +0000 | |
---|---|---|
committer | 2009-11-30 22:59:32 +0000 | |
commit | a7273c7bb21305b2f6fb50908b88303a5a744891 (patch) | |
tree | 6e2dd00bc10eb076487f641b8980cb96e8b87195 /test-suite | |
parent | 93a5f1e03e29e375be69a2361ffd6323f5300f86 (diff) |
Fix backtracking heuristic in typeclass resolution.
Now that backtracking is working correctly, we need to avoid a
non-termination issue introduced by the [RelCompFun] definition in
RelationPairs, by adding a [Measure] typeclass. It could be used to have
a uniform notation for measures/interpretations in Numbers and be but in
the interfaces too, only the mimimal change was implemented.
Fix syntax change in test-suite scripts.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@12547 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'test-suite')
-rw-r--r-- | test-suite/success/AdvancedTypeClasses.v | 4 | ||||
-rw-r--r-- | test-suite/success/Generalization.v | 2 | ||||
-rw-r--r-- | test-suite/success/dependentind.v | 8 |
3 files changed, 7 insertions, 7 deletions
diff --git a/test-suite/success/AdvancedTypeClasses.v b/test-suite/success/AdvancedTypeClasses.v index a6f1e299b..b4efa7edc 100644 --- a/test-suite/success/AdvancedTypeClasses.v +++ b/test-suite/success/AdvancedTypeClasses.v @@ -1,4 +1,4 @@ -Generalizable Variables all. +Generalizable All Variables. Open Scope type_scope. @@ -57,7 +57,7 @@ Instance FunCan `(interp_pair a, interp_pair b) : interp_pair (a -> b) := Instance BoolCan : interp_pair bool := { repr := Bool ; link := refl_equal _ }. -Instance VarCan : interp_pair x | 10 := { repr := Var x ; link := refl_equal _ }. +Instance VarCan x : interp_pair x | 10 := { repr := Var x ; link := refl_equal _ }. Instance SetCan : interp_pair Set := { repr := SET ; link := refl_equal _ }. Instance PropCan : interp_pair Prop := { repr := PROP ; link := refl_equal _ }. Instance TypeCan : interp_pair Type := { repr := TYPE ; link := refl_equal _ }. diff --git a/test-suite/success/Generalization.v b/test-suite/success/Generalization.v index 4ec0a79ba..de34e007d 100644 --- a/test-suite/success/Generalization.v +++ b/test-suite/success/Generalization.v @@ -1,4 +1,4 @@ -Generalizable Variables all. +Generalizable All Variables. Check `(a = 0). Check `(a = 0)%type. diff --git a/test-suite/success/dependentind.v b/test-suite/success/dependentind.v index a19515d06..fe0165d08 100644 --- a/test-suite/success/dependentind.v +++ b/test-suite/success/dependentind.v @@ -50,7 +50,7 @@ Notation " Γ ; Δ " := (conc Δ Γ) (at level 25, left associativity) : contex Reserved Notation " Γ ⊢ τ " (at level 30, no associativity). -Generalizable Variables all. +Generalizable All Variables. Inductive term : ctx -> type -> Type := | ax : `(Γ, τ ⊢ τ) @@ -79,7 +79,7 @@ Proof with simpl in * ; eqns ; eauto with lambda. destruct Δ as [|Δ τ'']... apply abs. - specialize (IHterm Γ (Δ, τ'', τ0) τ'0)... + specialize (IHterm Γ (Δ, τ'', τ))... intro. eapply app... Defined. @@ -100,7 +100,7 @@ Proof with simpl in * ; eqns ; eauto. apply weak... apply abs... - specialize (IHterm Γ (Δ, τ0))... + specialize (IHterm Γ (Δ, τ))... eapply app... Defined. @@ -127,5 +127,5 @@ Inductive Ev : forall t, Exp t -> Exp t -> Prop := Ev (Fst e) e1. Lemma EvFst_inversion : forall t1 t2 (e:Exp (Prod t1 t2)) e1, Ev (Fst e) e1 -> exists e2, Ev e (Pair e1 e2). -intros t1 t2 e e1 ev. dependent destruction ev. exists e3 ; assumption. +intros t1 t2 e e1 ev. dependent destruction ev. exists e2 ; assumption. Qed. |