Documentation

Mathlib.Data.DFinsupp.Interval

Finite intervals of finitely supported functions #

This file provides the LocallyFiniteOrder instance for Π₀ i, α i when α itself is locally finite and calculates the cardinality of its finite intervals.

def Finset.dfinsupp {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → Zero (α i)] (s : Finset ι) (t : (i : ι) → Finset (α i)) :
Finset (Π₀ (i : ι), α i)

Finitely supported product of finsets.

Equations
    Instances For
      @[simp]
      theorem Finset.card_dfinsupp {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → Zero (α i)] (s : Finset ι) (t : (i : ι) → Finset (α i)) :
      (s.dfinsupp t).card = is, (t i).card
      theorem Finset.mem_dfinsupp_iff {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → Zero (α i)] {s : Finset ι} {f : Π₀ (i : ι), α i} {t : (i : ι) → Finset (α i)} [(i : ι) → DecidableEq (α i)] :
      f s.dfinsupp t f.support s is, f i t i
      @[simp]
      theorem Finset.mem_dfinsupp_iff_of_support_subset {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → Zero (α i)] {s : Finset ι} {f : Π₀ (i : ι), α i} [(i : ι) → DecidableEq (α i)] {t : Π₀ (i : ι), Finset (α i)} (ht : t.support s) :
      f s.dfinsupp t ∀ (i : ι), f i t i

      When t is supported on s, f ∈ s.dfinsupp t precisely means that f is pointwise in t.

      def DFinsupp.singleton {ι : Type u_1} {α : ιType u_2} [(i : ι) → Zero (α i)] (f : Π₀ (i : ι), α i) :
      Π₀ (i : ι), Finset (α i)

      Pointwise Finset.singleton bundled as a DFinsupp.

      Equations
        Instances For
          theorem DFinsupp.mem_singleton_apply_iff {ι : Type u_1} {α : ιType u_2} [(i : ι) → Zero (α i)] {f : Π₀ (i : ι), α i} {i : ι} {a : α i} :
          a f.singleton i a = f i
          def DFinsupp.rangeIcc {ι : Type u_1} {α : ιType u_2} [(i : ι) → Zero (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) :
          Π₀ (i : ι), Finset (α i)

          Pointwise Finset.Icc bundled as a DFinsupp.

          Equations
            Instances For
              @[simp]
              theorem DFinsupp.rangeIcc_apply {ι : Type u_1} {α : ιType u_2} [(i : ι) → Zero (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) (i : ι) :
              (f.rangeIcc g) i = Finset.Icc (f i) (g i)
              theorem DFinsupp.mem_rangeIcc_apply_iff {ι : Type u_1} {α : ιType u_2} [(i : ι) → Zero (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → LocallyFiniteOrder (α i)] {f g : Π₀ (i : ι), α i} {i : ι} {a : α i} :
              a (f.rangeIcc g) i f i a a g i
              theorem DFinsupp.support_rangeIcc_subset {ι : Type u_1} {α : ιType u_2} [(i : ι) → Zero (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → LocallyFiniteOrder (α i)] {f g : Π₀ (i : ι), α i} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] :
              def DFinsupp.pi {ι : Type u_1} {α : ιType u_2} [(i : ι) → Zero (α i)] [DecidableEq ι] [(i : ι) → DecidableEq (α i)] (f : Π₀ (i : ι), Finset (α i)) :
              Finset (Π₀ (i : ι), α i)

              Given a finitely supported function f : Π₀ i, Finset (α i), one can define the finset f.pi of all finitely supported functions whose value at i is in f i for all i.

              Equations
                Instances For
                  @[simp]
                  theorem DFinsupp.mem_pi {ι : Type u_1} {α : ιType u_2} [(i : ι) → Zero (α i)] [DecidableEq ι] [(i : ι) → DecidableEq (α i)] {f : Π₀ (i : ι), Finset (α i)} {g : Π₀ (i : ι), α i} :
                  g f.pi ∀ (i : ι), g i f i
                  @[simp]
                  theorem DFinsupp.card_pi {ι : Type u_1} {α : ιType u_2} [(i : ι) → Zero (α i)] [DecidableEq ι] [(i : ι) → DecidableEq (α i)] (f : Π₀ (i : ι), Finset (α i)) :
                  f.pi.card = f.prod fun (i : ι) => (f i).card
                  instance DFinsupp.instLocallyFiniteOrder {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] :
                  LocallyFiniteOrder (Π₀ (i : ι), α i)
                  Equations
                    theorem DFinsupp.Icc_eq {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) :
                    theorem DFinsupp.card_Icc {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) :
                    (Finset.Icc f g).card = if.support g.support, (Finset.Icc (f i) (g i)).card
                    theorem DFinsupp.card_Ico {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) :
                    (Finset.Ico f g).card = if.support g.support, (Finset.Icc (f i) (g i)).card - 1
                    theorem DFinsupp.card_Ioc {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) :
                    (Finset.Ioc f g).card = if.support g.support, (Finset.Icc (f i) (g i)).card - 1
                    theorem DFinsupp.card_Ioo {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → PartialOrder (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) :
                    (Finset.Ioo f g).card = if.support g.support, (Finset.Icc (f i) (g i)).card - 2
                    theorem DFinsupp.card_uIcc {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → Lattice (α i)] [(i : ι) → Zero (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f g : Π₀ (i : ι), α i) :
                    (Finset.uIcc f g).card = if.support g.support, (Finset.uIcc (f i) (g i)).card
                    theorem DFinsupp.card_Iic {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → AddCommMonoid (α i)] [(i : ι) → PartialOrder (α i)] [∀ (i : ι), CanonicallyOrderedAdd (α i)] [(i : ι) → OrderBot (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f : Π₀ (i : ι), α i) :
                    (Finset.Iic f).card = if.support, (Finset.Iic (f i)).card
                    theorem DFinsupp.card_Iio {ι : Type u_1} {α : ιType u_2} [DecidableEq ι] [(i : ι) → DecidableEq (α i)] [(i : ι) → AddCommMonoid (α i)] [(i : ι) → PartialOrder (α i)] [∀ (i : ι), CanonicallyOrderedAdd (α i)] [(i : ι) → OrderBot (α i)] [(i : ι) → LocallyFiniteOrder (α i)] (f : Π₀ (i : ι), α i) :
                    (Finset.Iio f).card = if.support, (Finset.Iic (f i)).card - 1