Set intervals in an additive successor-predecessor order #
This file proves relations between the various set intervals in an additive successor/predecessor order.
Notes #
Please keep in sync with:
Mathlib/Algebra/Order/Interval/Finset/SuccPred.leanMathlib/Order/Interval/Finset/SuccPred.leanMathlib/Order/Interval/Set/SuccPred.lean
TODO #
Copy over insert lemmas from Mathlib/Order/Interval/Finset/Nat.lean.
Two-sided intervals #
theorem Set.Ico_add_one_left_eq_Ioo {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] (a b : α) :
theorem Set.Icc_add_one_left_eq_Ioc_of_not_isMax {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {a : α} (ha : ¬IsMax a) (b : α) :
theorem Set.Ico_add_one_right_eq_Icc_of_not_isMax {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {b : α} (hb : ¬IsMax b) (a : α) :
theorem Set.Ioo_add_one_right_eq_Ioc_of_not_isMax {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {b : α} (hb : ¬IsMax b) (a : α) :
theorem Set.Ico_add_one_add_one_eq_Ioc_of_not_isMax {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {b : α} (hb : ¬IsMax b) (a : α) :
Inserting into intervals #
theorem Set.insert_Icc_add_one_left_eq_Icc {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {a b : α} (h : a ≤ b) :
theorem Set.insert_Icc_right_eq_Icc_add_one {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {a b : α} (h : a ≤ b + 1) :
theorem Set.insert_Ico_right_eq_Ico_add_one_of_not_isMax {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {a b : α} (h : a ≤ b) (hb : ¬IsMax b) :
theorem Set.insert_Ico_add_one_left_eq_Ico {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {a b : α} (h : a < b) :
theorem Set.insert_Ioc_add_one_left_eq_Ioc {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {a b : α} (h : a < b) :
theorem Set.Icc_add_one_left_eq_Ioc {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] [NoMaxOrder α] (a b : α) :
theorem Set.Ico_add_one_right_eq_Icc {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] [NoMaxOrder α] (a b : α) :
theorem Set.Ioo_add_one_right_eq_Ioc {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] [NoMaxOrder α] (a b : α) :
theorem Set.Ico_add_one_add_one_eq_Ioc {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] [NoMaxOrder α] (a b : α) :
Inserting into intervals #
theorem Set.insert_Ico_right_eq_Ico_add_one {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {a b : α} [NoMaxOrder α] (h : a ≤ b) :
theorem Set.insert_Ioc_right_eq_Ioc_add_one {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {a b : α} [NoMaxOrder α] (h : a ≤ b) :
theorem Set.Ioc_sub_one_right_eq_Ioo {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] (a b : α) :
theorem Set.Icc_sub_one_right_eq_Ico_of_not_isMin {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {b : α} (hb : ¬IsMin b) (a : α) :
theorem Set.Ioc_sub_one_left_eq_Icc_of_not_isMin {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a : α} (ha : ¬IsMin a) (b : α) :
theorem Set.Ioo_sub_one_left_eq_Ico_of_not_isMin {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a : α} (ha : ¬IsMin a) (b : α) :
@[deprecated Set.Ioo_sub_one_left_eq_Ico_of_not_isMin (since := "2026-09-03")]
theorem Set.Ioo_sub_one_left_eq_Ioc_of_not_isMin {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a : α} (ha : ¬IsMin a) (b : α) :
Alias of Set.Ioo_sub_one_left_eq_Ico_of_not_isMin.
theorem Set.Ioc_sub_one_sub_one_eq_Ico_of_not_isMin {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a : α} (ha : ¬IsMin a) (b : α) :
Inserting into intervals #
theorem Set.insert_Icc_sub_one_right_eq_Icc {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a b : α} (h : a ≤ b) :
theorem Set.insert_Icc_left_eq_Icc_sub_one {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a b : α} (h : a - 1 ≤ b) :
theorem Set.insert_Ioc_left_eq_Ioc_sub_one_of_not_isMin {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a b : α} (h : a ≤ b) (ha : ¬IsMin a) :
theorem Set.insert_Ioc_sub_one_right_eq_Ioc {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a b : α} (h : a < b) :
theorem Set.insert_Ico_sub_one_right_eq_Ico {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a b : α} (h : a < b) :
theorem Set.Icc_sub_one_right_eq_Ico {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] [NoMinOrder α] (a b : α) :
theorem Set.Ioc_sub_one_left_eq_Icc {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] [NoMinOrder α] (a b : α) :
theorem Set.Ioo_sub_one_left_eq_Ico {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] [NoMinOrder α] (a b : α) :
@[deprecated Set.Ioo_sub_one_left_eq_Ico (since := "2026-09-03")]
theorem Set.Ioo_sub_one_left_eq_Ioc {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] [NoMinOrder α] (a b : α) :
Alias of Set.Ioo_sub_one_left_eq_Ico.
theorem Set.Ioc_sub_one_sub_one_eq_Ico {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] [NoMinOrder α] (a b : α) :
Inserting into intervals #
theorem Set.insert_Ioc_left_eq_Ioc_sub_one {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a b : α} [NoMinOrder α] (h : a ≤ b) :
theorem Set.insert_Ico_left_eq_Ico_sub_one {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a b : α} [NoMinOrder α] (h : a ≤ b) :
theorem Set.Icc_add_one_sub_one_eq_Ioo {α : Type u_1} [LinearOrder α] [One α] [Add α] [Sub α] [SuccAddOrder α] [PredSubOrder α] [Nontrivial α] (a b : α) :
One-sided interval towards ⊥ #
theorem Set.Iio_add_one_eq_Iic_of_not_isMax {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {b : α} (hb : ¬IsMax b) :
theorem Set.Iio_add_one_eq_Iic {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] [NoMaxOrder α] (b : α) :
theorem Set.Iic_sub_one_eq_Iio_of_not_isMin {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {b : α} (hb : ¬IsMin b) :
theorem Set.Iic_sub_one_eq_Iio {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] [NoMinOrder α] (b : α) :
One-sided interval towards ⊤ #
theorem Set.Ici_add_one_eq_Ioi_of_not_isMax {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] {a : α} (ha : ¬IsMax a) :
theorem Set.Ici_add_one_eq_Ioi {α : Type u_1} [LinearOrder α] [One α] [Add α] [SuccAddOrder α] [NoMaxOrder α] (a : α) :
theorem Set.Ioi_sub_one_eq_Ici_of_not_isMin {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] {a : α} (ha : ¬IsMin a) :
theorem Set.Ioi_sub_one_eq_Ici {α : Type u_1} [LinearOrder α] [One α] [Sub α] [PredSubOrder α] [NoMinOrder α] (a : α) :