data.set.intervals.infiniteMathlib.Data.Set.Intervals.Infinite

This file has been ported!

Changes since the initial port

The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(last sync)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -3,7 +3,7 @@ Copyright (c) 2020 Reid Barton. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Reid Barton
 -/
-import Mathbin.Data.Set.Finite
+import Data.Set.Finite
 
 #align_import data.set.intervals.infinite from "leanprover-community/mathlib"@"4d392a6c9c4539cbeca399b3ee0afea398fbd2eb"
 
Diff
@@ -2,14 +2,11 @@
 Copyright (c) 2020 Reid Barton. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Reid Barton
-
-! This file was ported from Lean 3 source module data.set.intervals.infinite
-! leanprover-community/mathlib commit 4d392a6c9c4539cbeca399b3ee0afea398fbd2eb
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Data.Set.Finite
 
+#align_import data.set.intervals.infinite from "leanprover-community/mathlib"@"4d392a6c9c4539cbeca399b3ee0afea398fbd2eb"
+
 /-!
 # Infinitude of intervals
 
Diff
@@ -24,18 +24,22 @@ preorder is an infinite type.
 
 variable {α : Type _} [Preorder α]
 
+#print NoMaxOrder.infinite /-
 /-- A nonempty preorder with no maximal element is infinite. This is not an instance to avoid
 a cycle with `infinite α → nontrivial α → nonempty α`. -/
 theorem NoMaxOrder.infinite [Nonempty α] [NoMaxOrder α] : Infinite α :=
   let ⟨f, hf⟩ := Nat.exists_strictMono α
   Infinite.of_injective f hf.Injective
 #align no_max_order.infinite NoMaxOrder.infinite
+-/
 
+#print NoMinOrder.infinite /-
 /-- A nonempty preorder with no minimal element is infinite. This is not an instance to avoid
 a cycle with `infinite α → nontrivial α → nonempty α`. -/
 theorem NoMinOrder.infinite [Nonempty α] [NoMinOrder α] : Infinite α :=
   @NoMaxOrder.infinite αᵒᵈ _ _ _
 #align no_min_order.infinite NoMinOrder.infinite
+-/
 
 namespace Set
 
@@ -43,67 +47,91 @@ section DenselyOrdered
 
 variable [DenselyOrdered α] {a b : α} (h : a < b)
 
+#print Set.Ioo.infinite /-
 theorem Ioo.infinite : Infinite (Ioo a b) :=
   @NoMaxOrder.infinite _ _ (nonempty_Ioo_subtype h) _
 #align set.Ioo.infinite Set.Ioo.infinite
+-/
 
+#print Set.Ioo_infinite /-
 theorem Ioo_infinite : (Ioo a b).Infinite :=
   infinite_coe_iff.1 <| Ioo.infinite h
 #align set.Ioo_infinite Set.Ioo_infinite
+-/
 
+#print Set.Ico_infinite /-
 theorem Ico_infinite : (Ico a b).Infinite :=
   (Ioo_infinite h).mono Ioo_subset_Ico_self
 #align set.Ico_infinite Set.Ico_infinite
+-/
 
+#print Set.Ico.infinite /-
 theorem Ico.infinite : Infinite (Ico a b) :=
   infinite_coe_iff.2 <| Ico_infinite h
 #align set.Ico.infinite Set.Ico.infinite
+-/
 
+#print Set.Ioc_infinite /-
 theorem Ioc_infinite : (Ioc a b).Infinite :=
   (Ioo_infinite h).mono Ioo_subset_Ioc_self
 #align set.Ioc_infinite Set.Ioc_infinite
+-/
 
+#print Set.Ioc.infinite /-
 theorem Ioc.infinite : Infinite (Ioc a b) :=
   infinite_coe_iff.2 <| Ioc_infinite h
 #align set.Ioc.infinite Set.Ioc.infinite
+-/
 
+#print Set.Icc_infinite /-
 theorem Icc_infinite : (Icc a b).Infinite :=
   (Ioo_infinite h).mono Ioo_subset_Icc_self
 #align set.Icc_infinite Set.Icc_infinite
+-/
 
+#print Set.Icc.infinite /-
 theorem Icc.infinite : Infinite (Icc a b) :=
   infinite_coe_iff.2 <| Icc_infinite h
 #align set.Icc.infinite Set.Icc.infinite
+-/
 
 end DenselyOrdered
 
 instance [NoMinOrder α] {a : α} : Infinite (Iio a) :=
   NoMinOrder.infinite
 
+#print Set.Iio_infinite /-
 theorem Iio_infinite [NoMinOrder α] (a : α) : (Iio a).Infinite :=
   infinite_coe_iff.1 Iio.infinite
 #align set.Iio_infinite Set.Iio_infinite
+-/
 
 instance [NoMinOrder α] {a : α} : Infinite (Iic a) :=
   NoMinOrder.infinite
 
+#print Set.Iic_infinite /-
 theorem Iic_infinite [NoMinOrder α] (a : α) : (Iic a).Infinite :=
   infinite_coe_iff.1 Iic.infinite
 #align set.Iic_infinite Set.Iic_infinite
+-/
 
 instance [NoMaxOrder α] {a : α} : Infinite (Ioi a) :=
   NoMaxOrder.infinite
 
+#print Set.Ioi_infinite /-
 theorem Ioi_infinite [NoMaxOrder α] (a : α) : (Ioi a).Infinite :=
   infinite_coe_iff.1 Ioi.infinite
 #align set.Ioi_infinite Set.Ioi_infinite
+-/
 
 instance [NoMaxOrder α] {a : α} : Infinite (Ici a) :=
   NoMaxOrder.infinite
 
+#print Set.Ici_infinite /-
 theorem Ici_infinite [NoMaxOrder α] (a : α) : (Ici a).Infinite :=
   infinite_coe_iff.1 Ici.infinite
 #align set.Ici_infinite Set.Ici_infinite
+-/
 
 end Set
 
Diff
@@ -24,12 +24,6 @@ preorder is an infinite type.
 
 variable {α : Type _} [Preorder α]
 
-/- warning: no_max_order.infinite -> NoMaxOrder.infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Nonempty.{succ u1} α] [_inst_3 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)], Infinite.{succ u1} α
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Nonempty.{succ u1} α] [_inst_3 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)], Infinite.{succ u1} α
-Case conversion may be inaccurate. Consider using '#align no_max_order.infinite NoMaxOrder.infiniteₓ'. -/
 /-- A nonempty preorder with no maximal element is infinite. This is not an instance to avoid
 a cycle with `infinite α → nontrivial α → nonempty α`. -/
 theorem NoMaxOrder.infinite [Nonempty α] [NoMaxOrder α] : Infinite α :=
@@ -37,12 +31,6 @@ theorem NoMaxOrder.infinite [Nonempty α] [NoMaxOrder α] : Infinite α :=
   Infinite.of_injective f hf.Injective
 #align no_max_order.infinite NoMaxOrder.infinite
 
-/- warning: no_min_order.infinite -> NoMinOrder.infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Nonempty.{succ u1} α] [_inst_3 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)], Infinite.{succ u1} α
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Nonempty.{succ u1} α] [_inst_3 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)], Infinite.{succ u1} α
-Case conversion may be inaccurate. Consider using '#align no_min_order.infinite NoMinOrder.infiniteₓ'. -/
 /-- A nonempty preorder with no minimal element is infinite. This is not an instance to avoid
 a cycle with `infinite α → nontrivial α → nonempty α`. -/
 theorem NoMinOrder.infinite [Nonempty α] [NoMinOrder α] : Infinite α :=
@@ -55,82 +43,34 @@ section DenselyOrdered
 
 variable [DenselyOrdered α] {a b : α} (h : a < b)
 
-/- warning: set.Ioo.infinite -> Set.Ioo.infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} α) Type.{u1} (Set.hasCoeToSort.{u1} α) (Set.Ioo.{u1} α _inst_1 a b)))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (Set.Elem.{u1} α (Set.Ioo.{u1} α _inst_1 a b)))
-Case conversion may be inaccurate. Consider using '#align set.Ioo.infinite Set.Ioo.infiniteₓ'. -/
 theorem Ioo.infinite : Infinite (Ioo a b) :=
   @NoMaxOrder.infinite _ _ (nonempty_Ioo_subtype h) _
 #align set.Ioo.infinite Set.Ioo.infinite
 
-/- warning: set.Ioo_infinite -> Set.Ioo_infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ioo.{u1} α _inst_1 a b))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ioo.{u1} α _inst_1 a b))
-Case conversion may be inaccurate. Consider using '#align set.Ioo_infinite Set.Ioo_infiniteₓ'. -/
 theorem Ioo_infinite : (Ioo a b).Infinite :=
   infinite_coe_iff.1 <| Ioo.infinite h
 #align set.Ioo_infinite Set.Ioo_infinite
 
-/- warning: set.Ico_infinite -> Set.Ico_infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ico.{u1} α _inst_1 a b))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ico.{u1} α _inst_1 a b))
-Case conversion may be inaccurate. Consider using '#align set.Ico_infinite Set.Ico_infiniteₓ'. -/
 theorem Ico_infinite : (Ico a b).Infinite :=
   (Ioo_infinite h).mono Ioo_subset_Ico_self
 #align set.Ico_infinite Set.Ico_infinite
 
-/- warning: set.Ico.infinite -> Set.Ico.infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} α) Type.{u1} (Set.hasCoeToSort.{u1} α) (Set.Ico.{u1} α _inst_1 a b)))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (Set.Elem.{u1} α (Set.Ico.{u1} α _inst_1 a b)))
-Case conversion may be inaccurate. Consider using '#align set.Ico.infinite Set.Ico.infiniteₓ'. -/
 theorem Ico.infinite : Infinite (Ico a b) :=
   infinite_coe_iff.2 <| Ico_infinite h
 #align set.Ico.infinite Set.Ico.infinite
 
-/- warning: set.Ioc_infinite -> Set.Ioc_infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ioc.{u1} α _inst_1 a b))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ioc.{u1} α _inst_1 a b))
-Case conversion may be inaccurate. Consider using '#align set.Ioc_infinite Set.Ioc_infiniteₓ'. -/
 theorem Ioc_infinite : (Ioc a b).Infinite :=
   (Ioo_infinite h).mono Ioo_subset_Ioc_self
 #align set.Ioc_infinite Set.Ioc_infinite
 
-/- warning: set.Ioc.infinite -> Set.Ioc.infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} α) Type.{u1} (Set.hasCoeToSort.{u1} α) (Set.Ioc.{u1} α _inst_1 a b)))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (Set.Elem.{u1} α (Set.Ioc.{u1} α _inst_1 a b)))
-Case conversion may be inaccurate. Consider using '#align set.Ioc.infinite Set.Ioc.infiniteₓ'. -/
 theorem Ioc.infinite : Infinite (Ioc a b) :=
   infinite_coe_iff.2 <| Ioc_infinite h
 #align set.Ioc.infinite Set.Ioc.infinite
 
-/- warning: set.Icc_infinite -> Set.Icc_infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Icc.{u1} α _inst_1 a b))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Icc.{u1} α _inst_1 a b))
-Case conversion may be inaccurate. Consider using '#align set.Icc_infinite Set.Icc_infiniteₓ'. -/
 theorem Icc_infinite : (Icc a b).Infinite :=
   (Ioo_infinite h).mono Ioo_subset_Icc_self
 #align set.Icc_infinite Set.Icc_infinite
 
-/- warning: set.Icc.infinite -> Set.Icc.infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} α) Type.{u1} (Set.hasCoeToSort.{u1} α) (Set.Icc.{u1} α _inst_1 a b)))
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (Set.Elem.{u1} α (Set.Icc.{u1} α _inst_1 a b)))
-Case conversion may be inaccurate. Consider using '#align set.Icc.infinite Set.Icc.infiniteₓ'. -/
 theorem Icc.infinite : Infinite (Icc a b) :=
   infinite_coe_iff.2 <| Icc_infinite h
 #align set.Icc.infinite Set.Icc.infinite
@@ -140,12 +80,6 @@ end DenselyOrdered
 instance [NoMinOrder α] {a : α} : Infinite (Iio a) :=
   NoMinOrder.infinite
 
-/- warning: set.Iio_infinite -> Set.Iio_infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Iio.{u1} α _inst_1 a)
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Iio.{u1} α _inst_1 a)
-Case conversion may be inaccurate. Consider using '#align set.Iio_infinite Set.Iio_infiniteₓ'. -/
 theorem Iio_infinite [NoMinOrder α] (a : α) : (Iio a).Infinite :=
   infinite_coe_iff.1 Iio.infinite
 #align set.Iio_infinite Set.Iio_infinite
@@ -153,12 +87,6 @@ theorem Iio_infinite [NoMinOrder α] (a : α) : (Iio a).Infinite :=
 instance [NoMinOrder α] {a : α} : Infinite (Iic a) :=
   NoMinOrder.infinite
 
-/- warning: set.Iic_infinite -> Set.Iic_infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Iic.{u1} α _inst_1 a)
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Iic.{u1} α _inst_1 a)
-Case conversion may be inaccurate. Consider using '#align set.Iic_infinite Set.Iic_infiniteₓ'. -/
 theorem Iic_infinite [NoMinOrder α] (a : α) : (Iic a).Infinite :=
   infinite_coe_iff.1 Iic.infinite
 #align set.Iic_infinite Set.Iic_infinite
@@ -166,12 +94,6 @@ theorem Iic_infinite [NoMinOrder α] (a : α) : (Iic a).Infinite :=
 instance [NoMaxOrder α] {a : α} : Infinite (Ioi a) :=
   NoMaxOrder.infinite
 
-/- warning: set.Ioi_infinite -> Set.Ioi_infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Ioi.{u1} α _inst_1 a)
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Ioi.{u1} α _inst_1 a)
-Case conversion may be inaccurate. Consider using '#align set.Ioi_infinite Set.Ioi_infiniteₓ'. -/
 theorem Ioi_infinite [NoMaxOrder α] (a : α) : (Ioi a).Infinite :=
   infinite_coe_iff.1 Ioi.infinite
 #align set.Ioi_infinite Set.Ioi_infinite
@@ -179,12 +101,6 @@ theorem Ioi_infinite [NoMaxOrder α] (a : α) : (Ioi a).Infinite :=
 instance [NoMaxOrder α] {a : α} : Infinite (Ici a) :=
   NoMaxOrder.infinite
 
-/- warning: set.Ici_infinite -> Set.Ici_infinite is a dubious translation:
-lean 3 declaration is
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Ici.{u1} α _inst_1 a)
-but is expected to have type
-  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Ici.{u1} α _inst_1 a)
-Case conversion may be inaccurate. Consider using '#align set.Ici_infinite Set.Ici_infiniteₓ'. -/
 theorem Ici_infinite [NoMaxOrder α] (a : α) : (Ici a).Infinite :=
   infinite_coe_iff.1 Ici.infinite
 #align set.Ici_infinite Set.Ici_infinite
Diff
@@ -24,22 +24,30 @@ preorder is an infinite type.
 
 variable {α : Type _} [Preorder α]
 
-#print NoMaxOrder.infinite /-
+/- warning: no_max_order.infinite -> NoMaxOrder.infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Nonempty.{succ u1} α] [_inst_3 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)], Infinite.{succ u1} α
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Nonempty.{succ u1} α] [_inst_3 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)], Infinite.{succ u1} α
+Case conversion may be inaccurate. Consider using '#align no_max_order.infinite NoMaxOrder.infiniteₓ'. -/
 /-- A nonempty preorder with no maximal element is infinite. This is not an instance to avoid
 a cycle with `infinite α → nontrivial α → nonempty α`. -/
 theorem NoMaxOrder.infinite [Nonempty α] [NoMaxOrder α] : Infinite α :=
   let ⟨f, hf⟩ := Nat.exists_strictMono α
   Infinite.of_injective f hf.Injective
 #align no_max_order.infinite NoMaxOrder.infinite
--/
 
-#print NoMinOrder.infinite /-
+/- warning: no_min_order.infinite -> NoMinOrder.infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Nonempty.{succ u1} α] [_inst_3 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)], Infinite.{succ u1} α
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : Nonempty.{succ u1} α] [_inst_3 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)], Infinite.{succ u1} α
+Case conversion may be inaccurate. Consider using '#align no_min_order.infinite NoMinOrder.infiniteₓ'. -/
 /-- A nonempty preorder with no minimal element is infinite. This is not an instance to avoid
 a cycle with `infinite α → nontrivial α → nonempty α`. -/
 theorem NoMinOrder.infinite [Nonempty α] [NoMinOrder α] : Infinite α :=
   @NoMaxOrder.infinite αᵒᵈ _ _ _
 #align no_min_order.infinite NoMinOrder.infinite
--/
 
 namespace Set
 
@@ -47,91 +55,139 @@ section DenselyOrdered
 
 variable [DenselyOrdered α] {a b : α} (h : a < b)
 
-#print Set.Ioo.infinite /-
+/- warning: set.Ioo.infinite -> Set.Ioo.infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} α) Type.{u1} (Set.hasCoeToSort.{u1} α) (Set.Ioo.{u1} α _inst_1 a b)))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (Set.Elem.{u1} α (Set.Ioo.{u1} α _inst_1 a b)))
+Case conversion may be inaccurate. Consider using '#align set.Ioo.infinite Set.Ioo.infiniteₓ'. -/
 theorem Ioo.infinite : Infinite (Ioo a b) :=
   @NoMaxOrder.infinite _ _ (nonempty_Ioo_subtype h) _
 #align set.Ioo.infinite Set.Ioo.infinite
--/
 
-#print Set.Ioo_infinite /-
+/- warning: set.Ioo_infinite -> Set.Ioo_infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ioo.{u1} α _inst_1 a b))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ioo.{u1} α _inst_1 a b))
+Case conversion may be inaccurate. Consider using '#align set.Ioo_infinite Set.Ioo_infiniteₓ'. -/
 theorem Ioo_infinite : (Ioo a b).Infinite :=
   infinite_coe_iff.1 <| Ioo.infinite h
 #align set.Ioo_infinite Set.Ioo_infinite
--/
 
-#print Set.Ico_infinite /-
+/- warning: set.Ico_infinite -> Set.Ico_infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ico.{u1} α _inst_1 a b))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ico.{u1} α _inst_1 a b))
+Case conversion may be inaccurate. Consider using '#align set.Ico_infinite Set.Ico_infiniteₓ'. -/
 theorem Ico_infinite : (Ico a b).Infinite :=
   (Ioo_infinite h).mono Ioo_subset_Ico_self
 #align set.Ico_infinite Set.Ico_infinite
--/
 
-#print Set.Ico.infinite /-
+/- warning: set.Ico.infinite -> Set.Ico.infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} α) Type.{u1} (Set.hasCoeToSort.{u1} α) (Set.Ico.{u1} α _inst_1 a b)))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (Set.Elem.{u1} α (Set.Ico.{u1} α _inst_1 a b)))
+Case conversion may be inaccurate. Consider using '#align set.Ico.infinite Set.Ico.infiniteₓ'. -/
 theorem Ico.infinite : Infinite (Ico a b) :=
   infinite_coe_iff.2 <| Ico_infinite h
 #align set.Ico.infinite Set.Ico.infinite
--/
 
-#print Set.Ioc_infinite /-
+/- warning: set.Ioc_infinite -> Set.Ioc_infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ioc.{u1} α _inst_1 a b))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Ioc.{u1} α _inst_1 a b))
+Case conversion may be inaccurate. Consider using '#align set.Ioc_infinite Set.Ioc_infiniteₓ'. -/
 theorem Ioc_infinite : (Ioc a b).Infinite :=
   (Ioo_infinite h).mono Ioo_subset_Ioc_self
 #align set.Ioc_infinite Set.Ioc_infinite
--/
 
-#print Set.Ioc.infinite /-
+/- warning: set.Ioc.infinite -> Set.Ioc.infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} α) Type.{u1} (Set.hasCoeToSort.{u1} α) (Set.Ioc.{u1} α _inst_1 a b)))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (Set.Elem.{u1} α (Set.Ioc.{u1} α _inst_1 a b)))
+Case conversion may be inaccurate. Consider using '#align set.Ioc.infinite Set.Ioc.infiniteₓ'. -/
 theorem Ioc.infinite : Infinite (Ioc a b) :=
   infinite_coe_iff.2 <| Ioc_infinite h
 #align set.Ioc.infinite Set.Ioc.infinite
--/
 
-#print Set.Icc_infinite /-
+/- warning: set.Icc_infinite -> Set.Icc_infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Icc.{u1} α _inst_1 a b))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Set.Infinite.{u1} α (Set.Icc.{u1} α _inst_1 a b))
+Case conversion may be inaccurate. Consider using '#align set.Icc_infinite Set.Icc_infiniteₓ'. -/
 theorem Icc_infinite : (Icc a b).Infinite :=
   (Ioo_infinite h).mono Ioo_subset_Icc_self
 #align set.Icc_infinite Set.Icc_infinite
--/
 
-#print Set.Icc.infinite /-
+/- warning: set.Icc.infinite -> Set.Icc.infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toHasLt.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (coeSort.{succ u1, succ (succ u1)} (Set.{u1} α) Type.{u1} (Set.hasCoeToSort.{u1} α) (Set.Icc.{u1} α _inst_1 a b)))
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : DenselyOrdered.{u1} α (Preorder.toLT.{u1} α _inst_1)] {a : α} {b : α}, (LT.lt.{u1} α (Preorder.toLT.{u1} α _inst_1) a b) -> (Infinite.{succ u1} (Set.Elem.{u1} α (Set.Icc.{u1} α _inst_1 a b)))
+Case conversion may be inaccurate. Consider using '#align set.Icc.infinite Set.Icc.infiniteₓ'. -/
 theorem Icc.infinite : Infinite (Icc a b) :=
   infinite_coe_iff.2 <| Icc_infinite h
 #align set.Icc.infinite Set.Icc.infinite
--/
 
 end DenselyOrdered
 
 instance [NoMinOrder α] {a : α} : Infinite (Iio a) :=
   NoMinOrder.infinite
 
-#print Set.Iio_infinite /-
+/- warning: set.Iio_infinite -> Set.Iio_infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Iio.{u1} α _inst_1 a)
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Iio.{u1} α _inst_1 a)
+Case conversion may be inaccurate. Consider using '#align set.Iio_infinite Set.Iio_infiniteₓ'. -/
 theorem Iio_infinite [NoMinOrder α] (a : α) : (Iio a).Infinite :=
   infinite_coe_iff.1 Iio.infinite
 #align set.Iio_infinite Set.Iio_infinite
--/
 
 instance [NoMinOrder α] {a : α} : Infinite (Iic a) :=
   NoMinOrder.infinite
 
-#print Set.Iic_infinite /-
+/- warning: set.Iic_infinite -> Set.Iic_infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMinOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Iic.{u1} α _inst_1 a)
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMinOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Iic.{u1} α _inst_1 a)
+Case conversion may be inaccurate. Consider using '#align set.Iic_infinite Set.Iic_infiniteₓ'. -/
 theorem Iic_infinite [NoMinOrder α] (a : α) : (Iic a).Infinite :=
   infinite_coe_iff.1 Iic.infinite
 #align set.Iic_infinite Set.Iic_infinite
--/
 
 instance [NoMaxOrder α] {a : α} : Infinite (Ioi a) :=
   NoMaxOrder.infinite
 
-#print Set.Ioi_infinite /-
+/- warning: set.Ioi_infinite -> Set.Ioi_infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Ioi.{u1} α _inst_1 a)
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Ioi.{u1} α _inst_1 a)
+Case conversion may be inaccurate. Consider using '#align set.Ioi_infinite Set.Ioi_infiniteₓ'. -/
 theorem Ioi_infinite [NoMaxOrder α] (a : α) : (Ioi a).Infinite :=
   infinite_coe_iff.1 Ioi.infinite
 #align set.Ioi_infinite Set.Ioi_infinite
--/
 
 instance [NoMaxOrder α] {a : α} : Infinite (Ici a) :=
   NoMaxOrder.infinite
 
-#print Set.Ici_infinite /-
+/- warning: set.Ici_infinite -> Set.Ici_infinite is a dubious translation:
+lean 3 declaration is
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMaxOrder.{u1} α (Preorder.toHasLt.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Ici.{u1} α _inst_1 a)
+but is expected to have type
+  forall {α : Type.{u1}} [_inst_1 : Preorder.{u1} α] [_inst_2 : NoMaxOrder.{u1} α (Preorder.toLT.{u1} α _inst_1)] (a : α), Set.Infinite.{u1} α (Set.Ici.{u1} α _inst_1 a)
+Case conversion may be inaccurate. Consider using '#align set.Ici_infinite Set.Ici_infiniteₓ'. -/
 theorem Ici_infinite [NoMaxOrder α] (a : α) : (Ici a).Infinite :=
   infinite_coe_iff.1 Ici.infinite
 #align set.Ici_infinite Set.Ici_infinite
--/
 
 end Set
 

Changes in mathlib4

mathlib3
mathlib4
chore: banish Type _ and Sort _ (#6499)

We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.

This has nice performance benefits.

Diff
@@ -16,7 +16,7 @@ preorder is an infinite type.
 -/
 
 
-variable {α : Type _} [Preorder α]
+variable {α : Type*} [Preorder α]
 
 /-- A nonempty preorder with no maximal element is infinite. This is not an instance to avoid
 a cycle with `Infinite α → Nontrivial α → Nonempty α`. -/
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -2,14 +2,11 @@
 Copyright (c) 2020 Reid Barton. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Reid Barton
-
-! This file was ported from Lean 3 source module data.set.intervals.infinite
-! leanprover-community/mathlib commit 1f0096e6caa61e9c849ec2adbd227e960e9dff58
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Data.Set.Finite
 
+#align_import data.set.intervals.infinite from "leanprover-community/mathlib"@"1f0096e6caa61e9c849ec2adbd227e960e9dff58"
+
 /-!
 # Infinitude of intervals
 
feat: port Data.Set.Intervals.Infinite (#1792)

Dependencies 6 + 211

212 files ported (97.2%)
93862 lines ported (97.8%)
Show graph

The unported dependencies are