Intervals as finsets #
This file provides basic results about all the finset.Ixx, which are defined in
order.locally_finite.
TODO #
This file was originally only about finset.Ico a b where a b : ℕ. No care has yet been taken to
generalize these lemmas properly and many lemmas about Icc, Ioc, Ioo are missing. In general,
what's to do is taking the lemmas in data.x.intervals and abstract away the concrete structure.
@[simp]
theorem
finset.nonempty_Icc
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
(finset.Icc a b).nonempty ↔ a ≤ b
@[simp]
theorem
finset.nonempty_Ico
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
(finset.Ico a b).nonempty ↔ a < b
@[simp]
theorem
finset.nonempty_Ioc
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
(finset.Ioc a b).nonempty ↔ a < b
@[simp]
theorem
finset.nonempty_Ioo
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[densely_ordered α] :
(finset.Ioo a b).nonempty ↔ a < b
@[simp]
@[simp]
@[simp]
@[simp]
theorem
finset.Ioo_eq_empty_iff
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[densely_ordered α] :
theorem
finset.Icc_eq_empty
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
¬a ≤ b → finset.Icc a b = ∅
Alias of Icc_eq_empty_iff.
theorem
finset.Ico_eq_empty
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
¬a < b → finset.Ico a b = ∅
Alias of Ico_eq_empty_iff.
theorem
finset.Ioc_eq_empty
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
¬a < b → finset.Ioc a b = ∅
Alias of Ioc_eq_empty_iff.
@[simp]
theorem
finset.Ioo_eq_empty
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
(h : ¬a < b) :
finset.Ioo a b = ∅
@[simp]
theorem
finset.Icc_eq_empty_of_lt
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
(h : b < a) :
finset.Icc a b = ∅
@[simp]
theorem
finset.Ico_eq_empty_of_le
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
(h : b ≤ a) :
finset.Ico a b = ∅
@[simp]
theorem
finset.Ioc_eq_empty_of_le
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
(h : b ≤ a) :
finset.Ioc a b = ∅
@[simp]
theorem
finset.Ioo_eq_empty_of_le
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
(h : b ≤ a) :
finset.Ioo a b = ∅
@[simp]
theorem
finset.left_mem_Icc
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
a ∈ finset.Icc a b ↔ a ≤ b
@[simp]
theorem
finset.left_mem_Ico
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
a ∈ finset.Ico a b ↔ a < b
@[simp]
theorem
finset.right_mem_Icc
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
b ∈ finset.Icc a b ↔ a ≤ b
@[simp]
theorem
finset.right_mem_Ioc
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
b ∈ finset.Ioc a b ↔ a < b
@[simp]
theorem
finset.left_not_mem_Ioc
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
a ∉ finset.Ioc a b
@[simp]
theorem
finset.left_not_mem_Ioo
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
a ∉ finset.Ioo a b
@[simp]
theorem
finset.right_not_mem_Ico
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
b ∉ finset.Ico a b
@[simp]
theorem
finset.right_not_mem_Ioo
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
b ∉ finset.Ioo a b
theorem
finset.Icc_subset_Icc
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b₁ b₂ : α}
(ha : a₂ ≤ a₁)
(hb : b₁ ≤ b₂) :
finset.Icc a₁ b₁ ⊆ finset.Icc a₂ b₂
theorem
finset.Ico_subset_Ico
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b₁ b₂ : α}
(ha : a₂ ≤ a₁)
(hb : b₁ ≤ b₂) :
finset.Ico a₁ b₁ ⊆ finset.Ico a₂ b₂
theorem
finset.Ioc_subset_Ioc
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b₁ b₂ : α}
(ha : a₂ ≤ a₁)
(hb : b₁ ≤ b₂) :
finset.Ioc a₁ b₁ ⊆ finset.Ioc a₂ b₂
theorem
finset.Ioo_subset_Ioo
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b₁ b₂ : α}
(ha : a₂ ≤ a₁)
(hb : b₁ ≤ b₂) :
finset.Ioo a₁ b₁ ⊆ finset.Ioo a₂ b₂
theorem
finset.Icc_subset_Icc_left
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b : α}
(h : a₁ ≤ a₂) :
finset.Icc a₂ b ⊆ finset.Icc a₁ b
theorem
finset.Ico_subset_Ico_left
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b : α}
(h : a₁ ≤ a₂) :
finset.Ico a₂ b ⊆ finset.Ico a₁ b
theorem
finset.Ioc_subset_Ioc_left
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b : α}
(h : a₁ ≤ a₂) :
finset.Ioc a₂ b ⊆ finset.Ioc a₁ b
theorem
finset.Ioo_subset_Ioo_left
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b : α}
(h : a₁ ≤ a₂) :
finset.Ioo a₂ b ⊆ finset.Ioo a₁ b
theorem
finset.Icc_subset_Icc_right
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b₁ b₂ : α}
(h : b₁ ≤ b₂) :
finset.Icc a b₁ ⊆ finset.Icc a b₂
theorem
finset.Ico_subset_Ico_right
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b₁ b₂ : α}
(h : b₁ ≤ b₂) :
finset.Ico a b₁ ⊆ finset.Ico a b₂
theorem
finset.Ioc_subset_Ioc_right
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b₁ b₂ : α}
(h : b₁ ≤ b₂) :
finset.Ioc a b₁ ⊆ finset.Ioc a b₂
theorem
finset.Ioo_subset_Ioo_right
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b₁ b₂ : α}
(h : b₁ ≤ b₂) :
finset.Ioo a b₁ ⊆ finset.Ioo a b₂
theorem
finset.Ico_subset_Ioo_left
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b : α}
(h : a₁ < a₂) :
finset.Ico a₂ b ⊆ finset.Ioo a₁ b
theorem
finset.Ioc_subset_Ioo_right
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b₁ b₂ : α}
(h : b₁ < b₂) :
finset.Ioc a b₁ ⊆ finset.Ioo a b₂
theorem
finset.Icc_subset_Ico_right
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b₁ b₂ : α}
(h : b₁ < b₂) :
finset.Icc a b₁ ⊆ finset.Ico a b₂
theorem
finset.Ioo_subset_Ico_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
finset.Ioo a b ⊆ finset.Ico a b
theorem
finset.Ioo_subset_Ioc_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
finset.Ioo a b ⊆ finset.Ioc a b
theorem
finset.Ico_subset_Icc_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
finset.Ico a b ⊆ finset.Icc a b
theorem
finset.Ioc_subset_Icc_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
finset.Ioc a b ⊆ finset.Icc a b
theorem
finset.Ioo_subset_Icc_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α} :
finset.Ioo a b ⊆ finset.Icc a b
theorem
finset.Icc_subset_Icc_iff
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b₁ b₂ : α}
(h₁ : a₁ ≤ b₁) :
finset.Icc a₁ b₁ ⊆ finset.Icc a₂ b₂ ↔ a₂ ≤ a₁ ∧ b₁ ≤ b₂
theorem
finset.Icc_subset_Ioo_iff
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b₁ b₂ : α}
(h₁ : a₁ ≤ b₁) :
finset.Icc a₁ b₁ ⊆ finset.Ioo a₂ b₂ ↔ a₂ < a₁ ∧ b₁ < b₂
theorem
finset.Icc_subset_Ico_iff
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b₁ b₂ : α}
(h₁ : a₁ ≤ b₁) :
finset.Icc a₁ b₁ ⊆ finset.Ico a₂ b₂ ↔ a₂ ≤ a₁ ∧ b₁ < b₂
theorem
finset.Icc_subset_Ioc_iff
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b₁ b₂ : α}
(h₁ : a₁ ≤ b₁) :
finset.Icc a₁ b₁ ⊆ finset.Ioc a₂ b₂ ↔ a₂ < a₁ ∧ b₁ ≤ b₂
theorem
finset.Icc_ssubset_Icc_left
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b₁ b₂ : α}
(hI : a₂ ≤ b₂)
(ha : a₂ < a₁)
(hb : b₁ ≤ b₂) :
finset.Icc a₁ b₁ ⊂ finset.Icc a₂ b₂
theorem
finset.Icc_ssubset_Icc_right
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a₁ a₂ b₁ b₂ : α}
(hI : a₂ ≤ b₂)
(ha : a₂ ≤ a₁)
(hb : b₁ < b₂) :
finset.Icc a₁ b₁ ⊂ finset.Icc a₂ b₂
@[simp]
theorem
finset.Ico_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a : α) :
finset.Ico a a = ∅
@[simp]
theorem
finset.Ioc_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a : α) :
finset.Ioc a a = ∅
@[simp]
theorem
finset.Ioo_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a : α) :
finset.Ioo a a = ∅
def
set.fintype_of_mem_bounds
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
{s : set α}
[decidable_pred (λ (_x : α), _x ∈ s)]
(ha : a ∈ lower_bounds s)
(hb : b ∈ upper_bounds s) :
A set with upper and lower bounds in a locally finite order is a fintype
Equations
- set.fintype_of_mem_bounds ha hb = (set.Icc a b).fintype_subset _
theorem
bdd_below.finite_of_bdd_above
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{s : set α}
(h₀ : bdd_below s)
(h₁ : bdd_above s) :
s.finite
theorem
finset.Ico_filter_lt_of_le_left
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b c : α}
[decidable_pred (λ (_x : α), _x < c)]
(hca : c ≤ a) :
finset.filter (λ (_x : α), _x < c) (finset.Ico a b) = ∅
theorem
finset.Ico_filter_lt_of_right_le
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b c : α}
[decidable_pred (λ (_x : α), _x < c)]
(hbc : b ≤ c) :
finset.filter (λ (_x : α), _x < c) (finset.Ico a b) = finset.Ico a b
theorem
finset.Ico_filter_lt_of_le_right
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b c : α}
[decidable_pred (λ (_x : α), _x < c)]
(hcb : c ≤ b) :
finset.filter (λ (_x : α), _x < c) (finset.Ico a b) = finset.Ico a c
theorem
finset.Ico_filter_le_of_le_left
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b c : α}
[decidable_pred (has_le.le c)]
(hca : c ≤ a) :
finset.filter (has_le.le c) (finset.Ico a b) = finset.Ico a b
theorem
finset.Ico_filter_le_of_right_le
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[decidable_pred (has_le.le b)] :
finset.filter (has_le.le b) (finset.Ico a b) = ∅
theorem
finset.Ico_filter_le_of_left_le
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b c : α}
[decidable_pred (has_le.le c)]
(hac : a ≤ c) :
finset.filter (has_le.le c) (finset.Ico a b) = finset.Ico c b
theorem
finset.filter_lt_lt_eq_Ioo
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a b : α)
[fintype α]
[decidable_pred (λ (j : α), a < j ∧ j < b)] :
finset.filter (λ (j : α), a < j ∧ j < b) finset.univ = finset.Ioo a b
theorem
finset.filter_lt_le_eq_Ioc
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a b : α)
[fintype α]
[decidable_pred (λ (j : α), a < j ∧ j ≤ b)] :
finset.filter (λ (j : α), a < j ∧ j ≤ b) finset.univ = finset.Ioc a b
theorem
finset.filter_le_lt_eq_Ico
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a b : α)
[fintype α]
[decidable_pred (λ (j : α), a ≤ j ∧ j < b)] :
finset.filter (λ (j : α), a ≤ j ∧ j < b) finset.univ = finset.Ico a b
theorem
finset.filter_le_le_eq_Icc
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a b : α)
[fintype α]
[decidable_pred (λ (j : α), a ≤ j ∧ j ≤ b)] :
finset.filter (λ (j : α), a ≤ j ∧ j ≤ b) finset.univ = finset.Icc a b
theorem
finset.filter_lt_eq_Ioi
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a : α)
[fintype α]
[order_top α]
[decidable_pred (has_lt.lt a)] :
theorem
finset.filter_le_eq_Ici
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a : α)
[fintype α]
[order_top α]
[decidable_pred (has_le.le a)] :
theorem
finset.filter_gt_eq_Iio
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a : α)
[fintype α]
[order_bot α]
[decidable_pred (λ (_x : α), _x < a)] :
finset.filter (λ (_x : α), _x < a) finset.univ = finset.Iio a
theorem
finset.filter_ge_eq_Iic
{α : Type u_1}
[preorder α]
[locally_finite_order α]
(a : α)
[fintype α]
[order_bot α]
[decidable_pred (λ (_x : α), _x ≤ a)] :
finset.filter (λ (_x : α), _x ≤ a) finset.univ = finset.Iic a
theorem
finset.Icc_subset_Ici_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_top α] :
finset.Icc a b ⊆ finset.Ici a
theorem
finset.Ico_subset_Ici_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_top α] :
finset.Ico a b ⊆ finset.Ici a
theorem
finset.Ioc_subset_Ici_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_top α] :
finset.Ioc a b ⊆ finset.Ici a
theorem
finset.Ioo_subset_Ici_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_top α] :
finset.Ioo a b ⊆ finset.Ici a
theorem
finset.Ioi_subset_Ici_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a : α}
[order_top α] :
finset.Ioi a ⊆ finset.Ici a
theorem
finset.Ioc_subset_Ioi_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_top α] :
finset.Ioc a b ⊆ finset.Ioi a
theorem
finset.Ioo_subset_Ioi_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_top α] :
finset.Ioo a b ⊆ finset.Ioi a
theorem
bdd_below.finite
{α : Type u_1}
[preorder α]
[locally_finite_order α]
[order_top α]
{s : set α}
(hs : bdd_below s) :
s.finite
theorem
finset.Icc_subset_Iic_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_bot α] :
finset.Icc a b ⊆ finset.Iic b
theorem
finset.Ico_subset_Iic_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_bot α] :
finset.Ico a b ⊆ finset.Iic b
theorem
finset.Ioc_subset_Iic_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_bot α] :
finset.Ioc a b ⊆ finset.Iic b
theorem
finset.Ioo_subset_Iic_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_bot α] :
finset.Ioo a b ⊆ finset.Iic b
theorem
finset.Iio_subset_Iic_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{b : α}
[order_bot α] :
finset.Iio b ⊆ finset.Iic b
theorem
finset.Ico_subset_Iio_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_bot α] :
finset.Ico a b ⊆ finset.Iio b
theorem
finset.Ioo_subset_Iio_self
{α : Type u_1}
[preorder α]
[locally_finite_order α]
{a b : α}
[order_bot α] :
finset.Ioo a b ⊆ finset.Iio b
theorem
bdd_above.finite
{α : Type u_1}
[preorder α]
[locally_finite_order α]
[order_bot α]
{s : set α}
(hs : bdd_above s) :
s.finite
@[simp]
theorem
finset.Icc_self
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
(a : α) :
finset.Icc a a = {a}
@[simp]
theorem
finset.Icc_eq_singleton_iff
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b c : α} :
@[simp]
theorem
finset.Icc_erase_left
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[decidable_eq α]
(a b : α) :
(finset.Icc a b).erase a = finset.Ioc a b
@[simp]
theorem
finset.Icc_erase_right
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[decidable_eq α]
(a b : α) :
(finset.Icc a b).erase b = finset.Ico a b
@[simp]
theorem
finset.Ico_erase_left
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[decidable_eq α]
(a b : α) :
(finset.Ico a b).erase a = finset.Ioo a b
@[simp]
theorem
finset.Ioc_erase_right
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[decidable_eq α]
(a b : α) :
(finset.Ioc a b).erase b = finset.Ioo a b
@[simp]
theorem
finset.Icc_diff_both
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[decidable_eq α]
(a b : α) :
finset.Icc a b \ {a, b} = finset.Ioo a b
@[simp]
theorem
finset.Ico_insert_right
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
[decidable_eq α]
(h : a ≤ b) :
insert b (finset.Ico a b) = finset.Icc a b
@[simp]
theorem
finset.Ioc_insert_left
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
[decidable_eq α]
(h : a ≤ b) :
insert a (finset.Ioc a b) = finset.Icc a b
@[simp]
theorem
finset.Ioo_insert_left
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
[decidable_eq α]
(h : a < b) :
insert a (finset.Ioo a b) = finset.Ico a b
@[simp]
theorem
finset.Ioo_insert_right
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
[decidable_eq α]
(h : a < b) :
insert b (finset.Ioo a b) = finset.Ioc a b
@[simp]
theorem
finset.Icc_diff_Ico_self
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
[decidable_eq α]
(h : a ≤ b) :
finset.Icc a b \ finset.Ico a b = {b}
@[simp]
theorem
finset.Icc_diff_Ioc_self
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
[decidable_eq α]
(h : a ≤ b) :
finset.Icc a b \ finset.Ioc a b = {a}
@[simp]
theorem
finset.Icc_diff_Ioo_self
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
[decidable_eq α]
(h : a ≤ b) :
finset.Icc a b \ finset.Ioo a b = {a, b}
@[simp]
theorem
finset.Ico_diff_Ioo_self
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
[decidable_eq α]
(h : a < b) :
finset.Ico a b \ finset.Ioo a b = {a}
@[simp]
theorem
finset.Ioc_diff_Ioo_self
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
[decidable_eq α]
(h : a < b) :
finset.Ioc a b \ finset.Ioo a b = {b}
@[simp]
theorem
finset.Ico_inter_Ico_consecutive
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[decidable_eq α]
(a b c : α) :
finset.Ico a b ∩ finset.Ico b c = ∅
theorem
finset.Ico_disjoint_Ico_consecutive
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[decidable_eq α]
(a b c : α) :
disjoint (finset.Ico a b) (finset.Ico b c)
theorem
finset.Icc_eq_cons_Ico
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
(h : a ≤ b) :
finset.Icc a b = finset.cons b (finset.Ico a b) finset.right_not_mem_Ico
theorem
finset.Icc_eq_cons_Ioc
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
(h : a ≤ b) :
finset.Icc a b = finset.cons a (finset.Ioc a b) finset.left_not_mem_Ioc
theorem
finset.Ico_filter_le_left
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
{a b : α}
[decidable_pred (λ (_x : α), _x ≤ a)]
(hab : a < b) :
finset.filter (λ (x : α), x ≤ a) (finset.Ico a b) = {a}
theorem
finset.card_Ico_eq_card_Icc_sub_one
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
(a b : α) :
(finset.Ico a b).card = (finset.Icc a b).card - 1
theorem
finset.card_Ioc_eq_card_Icc_sub_one
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
(a b : α) :
(finset.Ioc a b).card = (finset.Icc a b).card - 1
theorem
finset.card_Ioo_eq_card_Ico_sub_one
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
(a b : α) :
(finset.Ioo a b).card = (finset.Ico a b).card - 1
theorem
finset.card_Ioo_eq_card_Ioc_sub_one
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
(a b : α) :
(finset.Ioo a b).card = (finset.Ioc a b).card - 1
theorem
finset.card_Ioo_eq_card_Icc_sub_two
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
(a b : α) :
(finset.Ioo a b).card = (finset.Icc a b).card - 2
@[simp]
theorem
finset.Ici_erase
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[order_top α]
[decidable_eq α]
(a : α) :
(finset.Ici a).erase a = finset.Ioi a
@[simp]
theorem
finset.Ioi_insert
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[order_top α]
[decidable_eq α]
(a : α) :
insert a (finset.Ioi a) = finset.Ici a
theorem
finset.Ici_eq_cons_Ioi
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[order_top α]
(a : α) :
@[simp]
theorem
finset.Iic_erase
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[order_bot α]
[decidable_eq α]
(b : α) :
(finset.Iic b).erase b = finset.Iio b
@[simp]
theorem
finset.Iio_insert
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[order_bot α]
[decidable_eq α]
(b : α) :
insert b (finset.Iio b) = finset.Iic b
theorem
finset.Iic_eq_cons_Iio
{α : Type u_1}
[partial_order α]
[locally_finite_order α]
[order_bot α]
(b : α) :
theorem
finset.Ico_subset_Ico_iff
{α : Type u_1}
[linear_order α]
[locally_finite_order α]
{a₁ b₁ a₂ b₂ : α}
(h : a₁ < b₁) :
finset.Ico a₁ b₁ ⊆ finset.Ico a₂ b₂ ↔ a₂ ≤ a₁ ∧ b₁ ≤ b₂
theorem
finset.Ico_union_Ico_eq_Ico
{α : Type u_1}
[linear_order α]
[locally_finite_order α]
{a b c : α}
(hab : a ≤ b)
(hbc : b ≤ c) :
finset.Ico a b ∪ finset.Ico b c = finset.Ico a c
theorem
finset.Ico_subset_Ico_union_Ico
{α : Type u_1}
[linear_order α]
[locally_finite_order α]
{a b c : α} :
finset.Ico a c ⊆ finset.Ico a b ∪ finset.Ico b c
theorem
finset.Ico_union_Ico'
{α : Type u_1}
[linear_order α]
[locally_finite_order α]
{a b c d : α}
(hcb : c ≤ b)
(had : a ≤ d) :
finset.Ico a b ∪ finset.Ico c d = finset.Ico (min a c) (max b d)
theorem
finset.Ico_union_Ico
{α : Type u_1}
[linear_order α]
[locally_finite_order α]
{a b c d : α}
(h₁ : min a b ≤ max c d)
(h₂ : min c d ≤ max a b) :
finset.Ico a b ∪ finset.Ico c d = finset.Ico (min a c) (max b d)
theorem
finset.Ico_inter_Ico
{α : Type u_1}
[linear_order α]
[locally_finite_order α]
{a b c d : α} :
finset.Ico a b ∩ finset.Ico c d = finset.Ico (max a c) (min b d)
@[simp]
theorem
finset.Ico_filter_lt
{α : Type u_1}
[linear_order α]
[locally_finite_order α]
(a b c : α) :
finset.filter (λ (x : α), x < c) (finset.Ico a b) = finset.Ico a (min b c)
@[simp]
theorem
finset.Ico_filter_le
{α : Type u_1}
[linear_order α]
[locally_finite_order α]
(a b c : α) :
finset.filter (λ (x : α), c ≤ x) (finset.Ico a b) = finset.Ico (max a c) b
@[simp]
theorem
finset.Ico_diff_Ico_left
{α : Type u_1}
[linear_order α]
[locally_finite_order α]
(a b c : α) :
finset.Ico a b \ finset.Ico a c = finset.Ico (max a c) b
@[simp]
theorem
finset.Ico_diff_Ico_right
{α : Type u_1}
[linear_order α]
[locally_finite_order α]
(a b c : α) :
finset.Ico a b \ finset.Ico c b = finset.Ico a (min b c)
theorem
finset.image_add_left_Icc
{α : Type u_1}
[ordered_cancel_add_comm_monoid α]
[has_exists_add_of_le α]
[decidable_eq α]
[locally_finite_order α]
(a b c : α) :
finset.image (has_add.add c) (finset.Icc a b) = finset.Icc (c + a) (c + b)
theorem
finset.image_add_left_Ico
{α : Type u_1}
[ordered_cancel_add_comm_monoid α]
[has_exists_add_of_le α]
[decidable_eq α]
[locally_finite_order α]
(a b c : α) :
finset.image (has_add.add c) (finset.Ico a b) = finset.Ico (c + a) (c + b)
theorem
finset.image_add_left_Ioc
{α : Type u_1}
[ordered_cancel_add_comm_monoid α]
[has_exists_add_of_le α]
[decidable_eq α]
[locally_finite_order α]
(a b c : α) :
finset.image (has_add.add c) (finset.Ioc a b) = finset.Ioc (c + a) (c + b)
theorem
finset.image_add_left_Ioo
{α : Type u_1}
[ordered_cancel_add_comm_monoid α]
[has_exists_add_of_le α]
[decidable_eq α]
[locally_finite_order α]
(a b c : α) :
finset.image (has_add.add c) (finset.Ioo a b) = finset.Ioo (c + a) (c + b)
theorem
finset.image_add_right_Icc
{α : Type u_1}
[ordered_cancel_add_comm_monoid α]
[has_exists_add_of_le α]
[decidable_eq α]
[locally_finite_order α]
(a b c : α) :
finset.image (λ (_x : α), _x + c) (finset.Icc a b) = finset.Icc (a + c) (b + c)
theorem
finset.image_add_right_Ico
{α : Type u_1}
[ordered_cancel_add_comm_monoid α]
[has_exists_add_of_le α]
[decidable_eq α]
[locally_finite_order α]
(a b c : α) :
finset.image (λ (_x : α), _x + c) (finset.Ico a b) = finset.Ico (a + c) (b + c)
theorem
finset.image_add_right_Ioc
{α : Type u_1}
[ordered_cancel_add_comm_monoid α]
[has_exists_add_of_le α]
[decidable_eq α]
[locally_finite_order α]
(a b c : α) :
finset.image (λ (_x : α), _x + c) (finset.Ioc a b) = finset.Ioc (a + c) (b + c)
theorem
finset.image_add_right_Ioo
{α : Type u_1}
[ordered_cancel_add_comm_monoid α]
[has_exists_add_of_le α]
[decidable_eq α]
[locally_finite_order α]
(a b c : α) :
finset.image (λ (_x : α), _x + c) (finset.Ioo a b) = finset.Ioo (a + c) (b + c)