Finset intervals in a successor-predecessor order #
This file proves relations between the various finset intervals in a successor/predecessor order.
Notes #
Please keep in sync with:
Mathlib.Algebra.Order.Interval.Finset.SuccPred
Mathlib.Algebra.Order.Interval.Set.SuccPred
Mathlib.Order.Interval.Set.SuccPred
TODO #
Copy over insert
lemmas from Mathlib.Order.Interval.Finset.Nat
.
Two-sided intervals #
theorem
Finset.Ico_succ_left_eq_Ioo
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
(a b : α)
:
theorem
Finset.Icc_succ_left_eq_Ioc_of_not_isMax
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a : α}
(ha : ¬IsMax a)
(b : α)
:
theorem
Finset.Ico_succ_right_eq_Icc_of_not_isMax
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{b : α}
(hb : ¬IsMax b)
(a : α)
:
theorem
Finset.Ioo_succ_right_eq_Ioc_of_not_isMax
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{b : α}
(hb : ¬IsMax b)
(a : α)
:
theorem
Finset.Ico_succ_succ_eq_Ioc_of_not_isMax
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{b : α}
(hb : ¬IsMax b)
(a : α)
:
Inserting into intervals #
theorem
Finset.insert_Icc_succ_left_eq_Icc
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
(h : a ≤ b)
:
theorem
Finset.insert_Icc_right_eq_Icc_succ
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
(h : a ≤ Order.succ b)
:
@[deprecated Finset.insert_Icc_right_eq_Icc_succ (since := "2025-04-19")]
theorem
Finset.insert_Icc_eq_Icc_succ_right
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
(h : a ≤ Order.succ b)
:
Alias of Finset.insert_Icc_right_eq_Icc_succ
.
theorem
Finset.insert_Ico_right_eq_Ico_succ_of_not_isMax
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
(h : a ≤ b)
(hb : ¬IsMax b)
:
@[deprecated Finset.insert_Ico_right_eq_Ico_succ_of_not_isMax (since := "2025-04-14")]
theorem
Finset.insert_Ico_right_eq_Ico_succ_right_of_not_isMax
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
(h : a ≤ b)
(hb : ¬IsMax b)
:
theorem
Finset.insert_Ico_succ_left_eq_Ico
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
(h : a < b)
:
theorem
Finset.insert_Ioc_right_eq_Ioc_succ_of_not_isMax
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
(h : a ≤ b)
(hb : ¬IsMax b)
:
theorem
Finset.insert_Ioc_succ_left_eq_Ioc
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
(h : a < b)
:
theorem
Finset.Icc_succ_left_eq_Ioc
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
[NoMaxOrder α]
(a b : α)
:
theorem
Finset.Ico_succ_right_eq_Icc
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
[NoMaxOrder α]
(a b : α)
:
theorem
Finset.Ioo_succ_right_eq_Ioc
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
[NoMaxOrder α]
(a b : α)
:
theorem
Finset.Ico_succ_succ_eq_Ioc
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
[NoMaxOrder α]
(a b : α)
:
Inserting into intervals #
theorem
Finset.insert_Ico_right_eq_Ico_succ
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
[NoMaxOrder α]
(h : a ≤ b)
:
@[deprecated Finset.insert_Ico_right_eq_Ico_succ (since := "2025-04-14")]
theorem
Finset.insert_Ico_right_eq_Ico_succ_right
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
[NoMaxOrder α]
(h : a ≤ b)
:
Alias of Finset.insert_Ico_right_eq_Ico_succ
.
theorem
Finset.insert_Ioc_right_eq_Ioc_succ
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
{a b : α}
[NoMaxOrder α]
(h : a ≤ b)
:
theorem
Finset.Ioc_pred_right_eq_Ioo
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
(a b : α)
:
theorem
Finset.Icc_pred_right_eq_Ico_of_not_isMin
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{b : α}
(hb : ¬IsMin b)
(a : α)
:
theorem
Finset.Ioc_pred_left_eq_Icc_of_not_isMin
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a : α}
(ha : ¬IsMin a)
(b : α)
:
theorem
Finset.Ioo_pred_left_eq_Ioc_of_not_isMin
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a : α}
(ha : ¬IsMin a)
(b : α)
:
theorem
Finset.Ioc_pred_pred_eq_Ico_of_not_isMin
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a : α}
(ha : ¬IsMin a)
(b : α)
:
Inserting into intervals #
theorem
Finset.insert_Icc_pred_right_eq_Icc
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
(h : a ≤ b)
:
theorem
Finset.insert_Icc_left_eq_Icc_pred
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
(h : Order.pred a ≤ b)
:
@[deprecated Finset.insert_Icc_left_eq_Icc_pred (since := "2025-04-19")]
theorem
Finset.insert_Icc_eq_Icc_pred_left
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
(h : Order.pred a ≤ b)
:
Alias of Finset.insert_Icc_left_eq_Icc_pred
.
theorem
Finset.insert_Ioc_left_eq_Ioc_pred_of_not_isMin
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
(h : a ≤ b)
(ha : ¬IsMin a)
:
@[deprecated Finset.insert_Ioc_left_eq_Ioc_pred_of_not_isMin (since := "2025-04-14")]
theorem
Finset.insert_Ioc_left_eq_Ioc_pred_left_of_not_isMin
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
(h : a ≤ b)
(ha : ¬IsMin a)
:
theorem
Finset.insert_Ioc_pred_right_eq_Ioc
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
(h : a < b)
:
theorem
Finset.insert_Ico_left_eq_Ico_pred_of_not_isMin
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
(h : a ≤ b)
(ha : ¬IsMin a)
:
theorem
Finset.insert_Ico_pred_right_eq_Ico
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
(h : a < b)
:
theorem
Finset.Icc_pred_right_eq_Ico
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
[NoMinOrder α]
(a b : α)
:
theorem
Finset.Ioc_pred_left_eq_Icc
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
[NoMinOrder α]
(a b : α)
:
theorem
Finset.Ioo_pred_left_eq_Ioc
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
[NoMinOrder α]
(a b : α)
:
theorem
Finset.Ioc_pred_pred_eq_Ico
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
[NoMinOrder α]
(a b : α)
:
Inserting into intervals #
theorem
Finset.insert_Ioc_left_eq_Ioc_pred
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
[NoMinOrder α]
(h : a ≤ b)
:
@[deprecated Finset.insert_Ioc_left_eq_Ioc_pred (since := "2025-04-14")]
theorem
Finset.insert_Ioc_left_eq_Ioc_pred_left
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
[NoMinOrder α]
(h : a ≤ b)
:
Alias of Finset.insert_Ioc_left_eq_Ioc_pred
.
theorem
Finset.insert_Ico_left_eq_Ico_pred
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[PredOrder α]
{a b : α}
[NoMinOrder α]
(h : a ≤ b)
:
theorem
Finset.Icc_succ_pred_eq_Ioo
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrder α]
[SuccOrder α]
[PredOrder α]
[Nontrivial α]
(a b : α)
:
One-sided interval towards ⊥
#
theorem
Finset.Iio_succ_eq_Iic_of_not_isMax
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrderBot α]
[SuccOrder α]
{b : α}
(hb : ¬IsMax b)
:
theorem
Finset.Iio_succ_eq_Iic
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrderBot α]
[SuccOrder α]
[NoMaxOrder α]
(b : α)
:
theorem
Finset.Iic_pred_eq_Iio_of_not_isMin
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrderBot α]
[PredOrder α]
{b : α}
(hb : ¬IsMin b)
:
theorem
Finset.Iic_pred_eq_Iio
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrderBot α]
[PredOrder α]
[NoMinOrder α]
(b : α)
:
One-sided interval towards ⊤
#
theorem
Finset.Ici_succ_eq_Ioi_of_not_isMax
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrderTop α]
[SuccOrder α]
{a : α}
(ha : ¬IsMax a)
:
theorem
Finset.Ici_succ_eq_Ioi
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrderTop α]
[SuccOrder α]
[NoMaxOrder α]
(a : α)
:
theorem
Finset.Ioi_pred_eq_Ici_of_not_isMin
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrderTop α]
[PredOrder α]
{a : α}
(ha : ¬IsMin a)
:
theorem
Finset.Ioi_pred_eq_Ici
{α : Type u_1}
[LinearOrder α]
[LocallyFiniteOrderTop α]
[PredOrder α]
[NoMinOrder α]
(a : α)
: