Documentation

Mathlib.Data.Finset.Range

Finite sets made of a range of elements. #

Main declarations #

Finset constructions #

Tags #

finite sets, finset

range #

range n is the set of natural numbers less than n.

Equations
Instances For
    @[simp]
    theorem Finset.range_val (n : ℕ) :
    @[simp]
    theorem Finset.mem_range {n m : ℕ} :
    m ∈ range n ↔ m < n
    @[simp]
    theorem Finset.coe_range (n : ℕ) :
    ↑(range n) = Set.Iio n
    @[simp]
    @[simp]
    theorem Finset.range_one :
    range 1 = {0}
    theorem Finset.range_succ {n : ℕ} :
    range n.succ = insert n (range n)
    theorem Finset.range_add_one {n : ℕ} :
    range (n + 1) = insert n (range n)
    @[simp]
    theorem Finset.range_subset {n m : ℕ} :

    Alias of the reverse direction of Finset.range_subset.

    theorem Finset.mem_range_succ_iff {a b : ℕ} :
    a ∈ range b.succ ↔ a ≤ b
    theorem Finset.mem_range_le {n x : ℕ} (hx : x ∈ range n) :
    x ≤ n
    theorem Finset.mem_range_sub_ne_zero {n x : ℕ} (hx : x ∈ range n) :
    n - x ≠ 0
    @[simp]
    theorem Finset.nonempty_range_iff {n : ℕ} :
    (range n).Nonempty ↔ n ≠ 0
    theorem Finset.Aesop.range_nonempty {n : ℕ} :
    n ≠ 0 → (range n).Nonempty

    Alias of the reverse direction of Finset.nonempty_range_iff.

    @[simp]
    theorem Finset.nonempty_range_succ {n : ℕ} :
    (range (n + 1)).Nonempty
    theorem Finset.range_nontrivial {n : ℕ} (hn : 1 < n) :
    (range n).Nontrivial
    def notMemRangeEquiv (k : ℕ) :
    { n : ℕ // n ∉ Multiset.range k } ≃ ℕ

    Equivalence between the set of natural numbers which are ≥ k and ℕ, given by n → n - k.

    Equations
    Instances For
      @[simp]
      theorem coe_notMemRangeEquiv (k : ℕ) :
      ⇑(notMemRangeEquiv k) = fun (i : { n : ℕ // n ∉ Multiset.range k }) => ↑i - k
      @[simp]
      theorem coe_notMemRangeEquiv_symm (k : ℕ) :
      ⇑(notMemRangeEquiv k).symm = fun (j : ℕ) => ⟨j + k, ⋯⟩