@@ -12,6 +12,7 @@ Require Import Arith Bool.
1212
1313Set Implicit Arguments .
1414
15+ Set Warnings "-notation-overridden".
1516
1617(***************************************************************** *)
1718(** * Basics: definition of polymorphic lists and some operations *)
@@ -92,7 +93,7 @@ Delimit Scope list_scope with list.
9293
9394Bind Scope list_scope with list.
9495
95- Arguments list _%type_scope .
96+ Arguments list _%_type_scope .
9697
9798(** ** Facts about lists *)
9899
@@ -211,7 +212,7 @@ Section Facts.
211212 now_show (a :: (l ++ m) ++ n = a :: l ++ m ++ n).
212213 rewrite <- IHl; auto.
213214 Qed .
214- Hint Resolve app_ass.
215+ Hint Resolve app_ass : core .
215216
216217 Theorem ass_app : forall l m n:list A, l ++ m ++ n = (l ++ m) ++ n.
217218 Proof .
@@ -362,15 +363,15 @@ Section Elts.
362363 Fixpoint nth (n:nat) (l:list A) (default:A) {struct l} : A :=
363364 match n, l with
364365 | O, x :: l' => x
365- | O, other => default
366+ | O, _other => default
366367 | S m, nil => default
367368 | S m, x :: t => nth m t default
368369 end .
369370
370371 Fixpoint nth_ok (n:nat) (l:list A) (default:A) {struct l} : bool :=
371372 match n, l with
372373 | O, x :: l' => true
373- | O, other => false
374+ | O, _other => false
374375 | S m, nil => false
375376 | S m, x :: t => nth_ok m t default
376377 end .
@@ -412,7 +413,7 @@ Section Elts.
412413 Proof .
413414 unfold lt in |- *; induction n as [| n hn]; simpl in |- *.
414415 destruct l; simpl in |- *; [ inversion 2 | auto ].
415- destruct l as [| a l hl ]; simpl in |- *.
416+ destruct l as [| a l]; simpl in |- *.
416417 inversion 2.
417418 intros d ie; right; apply hn; auto with arith.
418419 Qed .
@@ -568,8 +569,8 @@ Section Elts.
568569 induction l as [|y l].
569570 simpl; intros; split; [destruct 1 | apply Nat.lt_irrefl].
570571 simpl. intro x; destruct (eqA_dec y x) as [Heq|Hneq].
571- rewrite Heq; intuition.
572- pose (IHl x). intuition.
572+ rewrite Heq; intuition auto with * .
573+ pose (IHl x). intuition auto with * .
573574 Qed .
574575
575576 Theorem count_occ_inv_nil : forall (l : list A), (forall x:A, count_occ l x = 0) <-> l = nil.
@@ -783,7 +784,7 @@ Section ListOps.
783784 | perm_swap: forall (x y:A) (l:list A), Permutation (cons y (cons x l)) (cons x (cons y l))
784785 | perm_trans: forall (l l' l'':list A), Permutation l l' -> Permutation l' l'' -> Permutation l l''.
785786
786- Hint Constructors Permutation.
787+ Hint Constructors Permutation : core .
787788
788789 (** Some facts about [Permutation] *)
789790
@@ -818,7 +819,7 @@ Section ListOps.
818819 exact perm_trans.
819820 Qed .
820821
821- Hint Resolve Permutation_refl Permutation_sym Permutation_trans.
822+ Hint Resolve Permutation_refl Permutation_sym Permutation_trans : core .
822823
823824 (** Compatibility with others operations on lists *)
824825
@@ -873,7 +874,7 @@ Section ListOps.
873874 apply perm_swap; auto.
874875 apply perm_skip; auto.
875876 Qed .
876- Hint Resolve Permutation_cons_app.
877+ Hint Resolve Permutation_cons_app : core .
877878
878879 Theorem Permutation_length : forall (l l' : list A), Permutation l l' -> length l = length l'.
879880 Proof .
@@ -1072,7 +1073,7 @@ Section Map.
10721073 rewrite IHl; auto.
10731074 Qed .
10741075
1075- Hint Constructors Permutation.
1076+ Hint Constructors Permutation : core .
10761077
10771078 Lemma Permutation_map :
10781079 forall l l', Permutation l l' -> Permutation (map l) (map l').
@@ -1588,19 +1589,19 @@ Section SetIncl.
15881589 Variable A : Type.
15891590
15901591 Definition incl (l m:list A) := forall a:A, In a l -> In a m.
1591- Hint Unfold incl.
1592+ Hint Unfold incl : core .
15921593
15931594 Lemma incl_refl : forall l:list A, incl l l.
15941595 Proof .
15951596 auto.
15961597 Qed .
1597- Hint Resolve incl_refl.
1598+ Hint Resolve incl_refl : core .
15981599
15991600 Lemma incl_tl : forall (a:A) (l m:list A), incl l m -> incl l (a :: m).
16001601 Proof .
16011602 auto with datatypes.
16021603 Qed .
1603- Hint Immediate incl_tl.
1604+ Hint Immediate incl_tl : core .
16041605
16051606 Lemma incl_tran : forall l m n:list A, incl l m -> incl m n -> incl l n.
16061607 Proof .
@@ -1611,13 +1612,13 @@ Section SetIncl.
16111612 Proof .
16121613 auto with datatypes.
16131614 Qed .
1614- Hint Immediate incl_appl.
1615+ Hint Immediate incl_appl : core .
16151616
16161617 Lemma incl_appr : forall l m n:list A, incl l n -> incl l (m ++ n).
16171618 Proof .
16181619 auto with datatypes.
16191620 Qed .
1620- Hint Immediate incl_appr.
1621+ Hint Immediate incl_appr : core .
16211622
16221623 Lemma incl_cons :
16231624 forall (a:A) (l m:list A), In a m -> incl l m -> incl (a :: l) m.
@@ -1632,15 +1633,15 @@ Section SetIncl.
16321633 now_show (In a0 l -> In a0 m).
16331634 auto.
16341635 Qed .
1635- Hint Resolve incl_cons.
1636+ Hint Resolve incl_cons : core .
16361637
16371638 Lemma incl_app : forall l m n:list A, incl l n -> incl m n -> incl (l ++ m) n.
16381639 Proof .
16391640 unfold incl in |- *; simpl in |- *; intros l m n H H0 a H1.
16401641 now_show (In a n).
16411642 elim (in_app_or _ _ _ H1); auto.
16421643 Qed .
1643- Hint Resolve incl_app.
1644+ Hint Resolve incl_app : core .
16441645
16451646End SetIncl.
16461647
@@ -1730,7 +1731,7 @@ End Cutting.
17301731
17311732Module ReDun.
17321733
1733- Variable A : Type.
1734+ Parameter A : Type.
17341735
17351736 Inductive NoDup : list A -> Prop :=
17361737 | NoDup_nil : NoDup nil
0 commit comments