From 66c3aff9c298ad033b77eaa53cc49e04c7a4115e Mon Sep 17 00:00:00 2001
From: Ralf Jung <jung@mpi-sws.org>
Date: Thu, 5 Jan 2017 19:39:47 +0100
Subject: [PATCH] more restrictive Proof Using hints in (most files of the)
 prelude

---
 theories/prelude/base.v          | 2 +-
 theories/prelude/bset.v          | 2 +-
 theories/prelude/coPset.v        | 2 +-
 theories/prelude/countable.v     | 2 +-
 theories/prelude/finite.v        | 6 +++---
 theories/prelude/functions.v     | 2 +-
 theories/prelude/gmap.v          | 2 +-
 theories/prelude/gmultiset.v     | 2 +-
 theories/prelude/hashset.v       | 2 +-
 theories/prelude/hlist.v         | 2 +-
 theories/prelude/lexico.v        | 2 +-
 theories/prelude/listset.v       | 2 +-
 theories/prelude/listset_nodup.v | 2 +-
 theories/prelude/natmap.v        | 2 +-
 theories/prelude/nmap.v          | 2 +-
 theories/prelude/numbers.v       | 2 +-
 theories/prelude/option.v        | 2 +-
 theories/prelude/orders.v        | 2 +-
 theories/prelude/pmap.v          | 2 +-
 theories/prelude/pretty.v        | 2 +-
 theories/prelude/proof_irrel.v   | 2 +-
 theories/prelude/relations.v     | 2 +-
 theories/prelude/set.v           | 2 +-
 theories/prelude/sorting.v       | 2 +-
 theories/prelude/streams.v       | 2 +-
 theories/prelude/stringmap.v     | 2 +-
 theories/prelude/strings.v       | 2 +-
 theories/prelude/tactics.v       | 2 +-
 theories/prelude/vector.v        | 2 +-
 theories/prelude/zmap.v          | 2 +-
 30 files changed, 32 insertions(+), 32 deletions(-)

diff --git a/theories/prelude/base.v b/theories/prelude/base.v
index 859c6f009..92606a94b 100644
--- a/theories/prelude/base.v
+++ b/theories/prelude/base.v
@@ -9,7 +9,7 @@ Global Set Automatic Coercions Import.
 Global Set Asymmetric Patterns.
 Global Unset Transparent Obligations.
 From Coq Require Export Morphisms RelationClasses List Bool Utf8 Setoid.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 Export ListNotations.
 From Coq.Program Require Export Basics Syntax.
 Obligation Tactic := idtac.
diff --git a/theories/prelude/bset.v b/theories/prelude/bset.v
index a431ca3cf..e384b05c5 100644
--- a/theories/prelude/bset.v
+++ b/theories/prelude/bset.v
@@ -2,7 +2,7 @@
 (* This file is distributed under the terms of the BSD license. *)
 (** This file implements bsets as functions into Prop. *)
 From iris.prelude Require Export prelude.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Record bset (A : Type) : Type := mkBSet { bset_car : A → bool }.
 Arguments mkBSet {_} _.
diff --git a/theories/prelude/coPset.v b/theories/prelude/coPset.v
index 0ad02732d..63be7ed49 100644
--- a/theories/prelude/coPset.v
+++ b/theories/prelude/coPset.v
@@ -13,7 +13,7 @@ Since [positive]s are bitstrings, we encode [coPset]s as trees that correspond
 to the decision function that map bitstrings to bools. *)
 From iris.prelude Require Export collections.
 From iris.prelude Require Import pmap gmap mapset.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 Local Open Scope positive_scope.
 
 (** * The tree data structure *)
diff --git a/theories/prelude/countable.v b/theories/prelude/countable.v
index 37f0d922d..ac733dac2 100644
--- a/theories/prelude/countable.v
+++ b/theories/prelude/countable.v
@@ -1,7 +1,7 @@
 (* Copyright (c) 2012-2015, Robbert Krebbers. *)
 (* This file is distributed under the terms of the BSD license. *)
 From iris.prelude Require Export list.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 Local Open Scope positive.
 
 Class Countable A `{EqDecision A} := {
diff --git a/theories/prelude/finite.v b/theories/prelude/finite.v
index 9c51d7cbf..041e3b4b0 100644
--- a/theories/prelude/finite.v
+++ b/theories/prelude/finite.v
@@ -1,7 +1,7 @@
 (* Copyright (c) 2012-2015, Robbert Krebbers. *)
 (* This file is distributed under the terms of the BSD license. *)
 From iris.prelude Require Export countable vector.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Class Finite A `{EqDecision A} := {
   enum : list A;
@@ -181,12 +181,12 @@ Section forall_exists.
   Context `{∀ x, Decision (P x)}.
 
   Global Instance forall_dec: Decision (∀ x, P x).
-  Proof.
+  Proof using Type*.
    refine (cast_if (decide (Forall P (enum A))));
     abstract by rewrite <-Forall_finite.
   Defined.
   Global Instance exists_dec: Decision (∃ x, P x).
-  Proof.
+  Proof using Type*.
    refine (cast_if (decide (Exists P (enum A))));
     abstract by rewrite <-Exists_finite.
   Defined.
diff --git a/theories/prelude/functions.v b/theories/prelude/functions.v
index da46a43a4..901a3dbca 100644
--- a/theories/prelude/functions.v
+++ b/theories/prelude/functions.v
@@ -1,5 +1,5 @@
 From iris.prelude Require Export base tactics.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Section definitions.
   Context {A T : Type} `{EqDecision A}.
diff --git a/theories/prelude/gmap.v b/theories/prelude/gmap.v
index 4e5d2f774..c47984417 100644
--- a/theories/prelude/gmap.v
+++ b/theories/prelude/gmap.v
@@ -4,7 +4,7 @@
 type. The implementation is based on [Pmap]s, radix-2 search trees. *)
 From iris.prelude Require Export countable fin_maps fin_map_dom.
 From iris.prelude Require Import pmap mapset set.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 (** * The data structure *)
 (** We pack a [Pmap] together with a proof that ensures that all keys correspond
diff --git a/theories/prelude/gmultiset.v b/theories/prelude/gmultiset.v
index 7782da245..25eb03ae0 100644
--- a/theories/prelude/gmultiset.v
+++ b/theories/prelude/gmultiset.v
@@ -1,7 +1,7 @@
 (* Copyright (c) 2012-2016, Robbert Krebbers. *)
 (* This file is distributed under the terms of the BSD license. *)
 From iris.prelude Require Import gmap.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Record gmultiset A `{Countable A} := GMultiSet { gmultiset_car : gmap A nat }.
 Arguments GMultiSet {_ _ _} _.
diff --git a/theories/prelude/hashset.v b/theories/prelude/hashset.v
index dcfd1dfe3..bfa30fe7c 100644
--- a/theories/prelude/hashset.v
+++ b/theories/prelude/hashset.v
@@ -5,7 +5,7 @@ using radix-2 search trees. Each hash bucket is thus indexed using an binary
 integer of type [Z], and contains an unordered list without duplicates. *)
 From iris.prelude Require Export fin_maps listset.
 From iris.prelude Require Import zmap.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Record hashset {A} (hash : A → Z) := Hashset {
   hashset_car : Zmap (list A);
diff --git a/theories/prelude/hlist.v b/theories/prelude/hlist.v
index 907864fef..26077a1d5 100644
--- a/theories/prelude/hlist.v
+++ b/theories/prelude/hlist.v
@@ -1,5 +1,5 @@
 From iris.prelude Require Import tactics.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 Local Set Universe Polymorphism.
 
 (* Not using [list Type] in order to avoid universe inconsistencies *)
diff --git a/theories/prelude/lexico.v b/theories/prelude/lexico.v
index 6a7b868a3..2d836a85f 100644
--- a/theories/prelude/lexico.v
+++ b/theories/prelude/lexico.v
@@ -3,7 +3,7 @@
 (** This files defines a lexicographic order on various common data structures
 and proves that it is a partial order having a strong variant of trichotomy. *)
 From iris.prelude Require Import numbers.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Notation cast_trichotomy T :=
   match T with
diff --git a/theories/prelude/listset.v b/theories/prelude/listset.v
index a3fa10bad..88bda4f61 100644
--- a/theories/prelude/listset.v
+++ b/theories/prelude/listset.v
@@ -3,7 +3,7 @@
 (** This file implements finite set as unordered lists without duplicates
 removed. This implementation forms a monad. *)
 From iris.prelude Require Export collections list.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Record listset A := Listset { listset_car: list A }.
 Arguments listset_car {_} _.
diff --git a/theories/prelude/listset_nodup.v b/theories/prelude/listset_nodup.v
index b9aedede3..960f39b63 100644
--- a/theories/prelude/listset_nodup.v
+++ b/theories/prelude/listset_nodup.v
@@ -4,7 +4,7 @@
 Although this implementation is slow, it is very useful as decidable equality
 is the only constraint on the carrier set. *)
 From iris.prelude Require Export collections list.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Record listset_nodup A := ListsetNoDup {
   listset_nodup_car : list A; listset_nodup_prf : NoDup listset_nodup_car
diff --git a/theories/prelude/natmap.v b/theories/prelude/natmap.v
index b6e78446d..2bf78d1ea 100644
--- a/theories/prelude/natmap.v
+++ b/theories/prelude/natmap.v
@@ -4,7 +4,7 @@
 over Coq's data type of unary natural numbers [nat]. The implementation equips
 a list with a proof of canonicity. *)
 From iris.prelude Require Import fin_maps mapset.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Notation natmap_raw A := (list (option A)).
 Definition natmap_wf {A} (l : natmap_raw A) :=
diff --git a/theories/prelude/nmap.v b/theories/prelude/nmap.v
index 0c965df3c..7957b666c 100644
--- a/theories/prelude/nmap.v
+++ b/theories/prelude/nmap.v
@@ -4,7 +4,7 @@
 maps whose keys range over Coq's data type of binary naturals [N]. *)
 From iris.prelude Require Import pmap mapset.
 From iris.prelude Require Export prelude fin_maps.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Local Open Scope N_scope.
 
diff --git a/theories/prelude/numbers.v b/theories/prelude/numbers.v
index c8eacf886..e26e0e73a 100644
--- a/theories/prelude/numbers.v
+++ b/theories/prelude/numbers.v
@@ -6,7 +6,7 @@ notations. *)
 From Coq Require Export EqdepFacts PArith NArith ZArith NPeano.
 From Coq Require Import QArith Qcanon.
 From iris.prelude Require Export base decidable option.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 Open Scope nat_scope.
 
 Coercion Z.of_nat : nat >-> Z.
diff --git a/theories/prelude/option.v b/theories/prelude/option.v
index f6cc09cc5..76f72c912 100644
--- a/theories/prelude/option.v
+++ b/theories/prelude/option.v
@@ -3,7 +3,7 @@
 (** This file collects general purpose definitions and theorems on the option
 data type that are not in the Coq standard library. *)
 From iris.prelude Require Export tactics.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Inductive option_reflect {A} (P : A → Prop) (Q : Prop) : option A → Type :=
   | ReflectSome x : P x → option_reflect P Q (Some x)
diff --git a/theories/prelude/orders.v b/theories/prelude/orders.v
index 9e6e2ca20..a28f3ed55 100644
--- a/theories/prelude/orders.v
+++ b/theories/prelude/orders.v
@@ -3,7 +3,7 @@
 (** Properties about arbitrary pre-, partial, and total orders. We do not use
 the relation [⊆] because we often have multiple orders on the same structure *)
 From iris.prelude Require Export tactics.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Section orders.
   Context {A} {R : relation A}.
diff --git a/theories/prelude/pmap.v b/theories/prelude/pmap.v
index 60ded55a1..4d56bc259 100644
--- a/theories/prelude/pmap.v
+++ b/theories/prelude/pmap.v
@@ -10,7 +10,7 @@ Leibniz equality to become extensional. *)
 From Coq Require Import PArith.
 From iris.prelude Require Import mapset countable.
 From iris.prelude Require Export fin_maps.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Local Open Scope positive_scope.
 Local Hint Extern 0 (@eq positive _ _) => congruence.
diff --git a/theories/prelude/pretty.v b/theories/prelude/pretty.v
index 06924729b..61dddb240 100644
--- a/theories/prelude/pretty.v
+++ b/theories/prelude/pretty.v
@@ -3,7 +3,7 @@
 From iris.prelude Require Export strings.
 From iris.prelude Require Import relations.
 From Coq Require Import Ascii.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Class Pretty A := pretty : A → string.
 Definition pretty_N_char (x : N) : ascii :=
diff --git a/theories/prelude/proof_irrel.v b/theories/prelude/proof_irrel.v
index b40985462..6b785c8de 100644
--- a/theories/prelude/proof_irrel.v
+++ b/theories/prelude/proof_irrel.v
@@ -2,7 +2,7 @@
 (* This file is distributed under the terms of the BSD license. *)
 (** This file collects facts on proof irrelevant types/propositions. *)
 From iris.prelude Require Export base.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Hint Extern 200 (ProofIrrel _) => progress (lazy beta) : typeclass_instances.
 
diff --git a/theories/prelude/relations.v b/theories/prelude/relations.v
index 798245df8..9984fe671 100644
--- a/theories/prelude/relations.v
+++ b/theories/prelude/relations.v
@@ -6,7 +6,7 @@ small step semantics. This file defines a hint database [ars] containing
 some theorems on abstract rewriting systems. *)
 From Coq Require Import Wf_nat.
 From iris.prelude Require Export tactics base.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 (** * Definitions *)
 Section definitions.
diff --git a/theories/prelude/set.v b/theories/prelude/set.v
index 7e9385e80..22e8278f8 100644
--- a/theories/prelude/set.v
+++ b/theories/prelude/set.v
@@ -2,7 +2,7 @@
 (* This file is distributed under the terms of the BSD license. *)
 (** This file implements sets as functions into Prop. *)
 From iris.prelude Require Export collections.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Record set (A : Type) : Type := mkSet { set_car : A → Prop }.
 Add Printing Constructor set.
diff --git a/theories/prelude/sorting.v b/theories/prelude/sorting.v
index 2048c3017..4ae478e01 100644
--- a/theories/prelude/sorting.v
+++ b/theories/prelude/sorting.v
@@ -4,7 +4,7 @@
 standard library, but without using the module system. *)
 From Coq Require Export Sorted.
 From iris.prelude Require Export orders list.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Section merge_sort.
   Context {A} (R : relation A) `{∀ x y, Decision (R x y)}.
diff --git a/theories/prelude/streams.v b/theories/prelude/streams.v
index 1c9ef9aa9..2b56722d8 100644
--- a/theories/prelude/streams.v
+++ b/theories/prelude/streams.v
@@ -1,7 +1,7 @@
 (* Copyright (c) 2012-2015, Robbert Krebbers. *)
 (* This file is distributed under the terms of the BSD license. *)
 From iris.prelude Require Export tactics.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 CoInductive stream (A : Type) : Type := scons : A → stream A → stream A.
 Arguments scons {_} _ _.
diff --git a/theories/prelude/stringmap.v b/theories/prelude/stringmap.v
index 41fc9b8cb..909b65b5b 100644
--- a/theories/prelude/stringmap.v
+++ b/theories/prelude/stringmap.v
@@ -6,7 +6,7 @@ search trees (uncompressed Patricia trees) as implemented in the file [pmap]
 and guarantees logarithmic-time operations. *)
 From iris.prelude Require Export fin_maps pretty.
 From iris.prelude Require Import gmap.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Notation stringmap := (gmap string).
 Notation stringset := (gset string).
diff --git a/theories/prelude/strings.v b/theories/prelude/strings.v
index dca3404c1..3c72afe6a 100644
--- a/theories/prelude/strings.v
+++ b/theories/prelude/strings.v
@@ -4,7 +4,7 @@ From Coq Require Import Ascii.
 From Coq Require Export String.
 From iris.prelude Require Export list.
 From iris.prelude Require Import countable.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 (* To avoid randomly ending up with String.length because this module is
 imported hereditarily somewhere. *)
diff --git a/theories/prelude/tactics.v b/theories/prelude/tactics.v
index 21d0122a1..7133ba584 100644
--- a/theories/prelude/tactics.v
+++ b/theories/prelude/tactics.v
@@ -5,7 +5,7 @@ the development. *)
 From Coq Require Import Omega.
 From Coq Require Export Lia.
 From iris.prelude Require Export decidable.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 
 Lemma f_equal_dep {A B} (f g : ∀ x : A, B x) x : f = g → f x = g x.
 Proof. intros ->; reflexivity. Qed.
diff --git a/theories/prelude/vector.v b/theories/prelude/vector.v
index 4b3426458..6eb2cadab 100644
--- a/theories/prelude/vector.v
+++ b/theories/prelude/vector.v
@@ -6,7 +6,7 @@ definitions from the standard library, but renames or changes their notations,
 so that it becomes more consistent with the naming conventions in this
 development. *)
 From iris.prelude Require Export list.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 Open Scope vector_scope.
 
 (** * The fin type *)
diff --git a/theories/prelude/zmap.v b/theories/prelude/zmap.v
index c9c175919..cffb198ab 100644
--- a/theories/prelude/zmap.v
+++ b/theories/prelude/zmap.v
@@ -4,7 +4,7 @@
 maps whose keys range over Coq's data type of binary naturals [Z]. *)
 From iris.prelude Require Import pmap mapset.
 From iris.prelude Require Export prelude fin_maps.
-Set Default Proof Using "Type*".
+Set Default Proof Using "Type".
 Local Open Scope Z_scope.
 
 Record Zmap (A : Type) : Type :=
-- 
GitLab