Documentation

Mathlib.Order.Filter.Partial

Tendsto for relations and partial functions #

This file generalizes Filter definitions from functions to partial functions and relations.

Considering functions and partial functions as relations #

A function f : α → β can be considered as the relation Rel α β which relates x and f x for all x, and nothing else. This relation is called Function.Graph f.

A partial function f : α →. β can be considered as the relation Rel α β which relates x and f x for all x for which f x exists, and nothing else. This relation is called PFun.Graph' f.

In this regard, a function is a relation for which every element in α is related to exactly one element in β and a partial function is a relation for which every element in α is related to at most one element in β.

This file leverages this analogy to generalize Filter definitions from functions to partial functions and relations.

Notes #

Set.preimage can be generalized to relations in two ways:

Both generalizations are sensible in the context of filters, so Filter.comap and Filter.Tendsto get two generalizations each.

We first take care of relations. Then the definitions for partial functions are taken as special cases of the definitions for relations.

Relations #

def Filter.rmap {α : Type u} {β : Type v} (r : SetRel α β) (l : Filter α) :

The forward map of a filter under a relation. Generalization of Filter.map to relations. Note that Rel.core generalizes Set.preimage.

Equations
Instances For
    theorem Filter.rmap_sets {α : Type u} {β : Type v} (r : SetRel α β) (l : Filter α) :
    @[simp]
    theorem Filter.mem_rmap {α : Type u} {β : Type v} (r : SetRel α β) (l : Filter α) (s : Set β) :
    s rmap r l r.core s l
    @[simp]
    theorem Filter.rmap_rmap {α : Type u} {β : Type v} {γ : Type w} (r : SetRel α β) (s : SetRel β γ) (l : Filter α) :
    rmap s (rmap r l) = rmap (r.comp s) l
    @[simp]
    theorem Filter.rmap_compose {α : Type u} {β : Type v} {γ : Type w} (r : SetRel α β) (s : SetRel β γ) :
    rmap s rmap r = rmap (r.comp s)
    def Filter.RTendsto {α : Type u} {β : Type v} (r : SetRel α β) (l₁ : Filter α) (l₂ : Filter β) :

    Generic "limit of a relation" predicate. RTendsto r l₁ l₂ asserts that for every l₂-neighborhood a, the r-core of a is an l₁-neighborhood. One generalization of Filter.Tendsto to relations.

    Equations
    Instances For
      theorem Filter.rtendsto_def {α : Type u} {β : Type v} (r : SetRel α β) (l₁ : Filter α) (l₂ : Filter β) :
      RTendsto r l₁ l₂ sl₂, r.core s l₁
      def Filter.rcomap {α : Type u} {β : Type v} (r : SetRel α β) (f : Filter β) :

      One way of taking the inverse map of a filter under a relation. One generalization of Filter.comap to relations. Note that Rel.core generalizes Set.preimage.

      Equations
      Instances For
        theorem Filter.rcomap_sets {α : Type u} {β : Type v} (r : SetRel α β) (f : Filter β) :
        (rcomap r f).sets = SetRel.image {(s, t) : Set β × Set α | r.core s t} f.sets
        theorem Filter.rcomap_rcomap {α : Type u} {β : Type v} {γ : Type w} (r : SetRel α β) (s : SetRel β γ) (l : Filter γ) :
        rcomap r (rcomap s l) = rcomap (r.comp s) l
        @[simp]
        theorem Filter.rcomap_compose {α : Type u} {β : Type v} {γ : Type w} (r : SetRel α β) (s : SetRel β γ) :
        theorem Filter.rtendsto_iff_le_rcomap {α : Type u} {β : Type v} (r : SetRel α β) (l₁ : Filter α) (l₂ : Filter β) :
        RTendsto r l₁ l₂ l₁ rcomap r l₂
        def Filter.rcomap' {α : Type u} {β : Type v} (r : SetRel α β) (f : Filter β) :

        One way of taking the inverse map of a filter under a relation. Generalization of Filter.comap to relations.

        Equations
        Instances For
          @[simp]
          theorem Filter.mem_rcomap' {α : Type u} {β : Type v} (r : SetRel α β) (l : Filter β) (s : Set α) :
          s rcomap' r l tl, r.preimage t s
          theorem Filter.rcomap'_sets {α : Type u} {β : Type v} (r : SetRel α β) (f : Filter β) :
          @[simp]
          theorem Filter.rcomap'_rcomap' {α : Type u} {β : Type v} {γ : Type w} (r : SetRel α β) (s : SetRel β γ) (l : Filter γ) :
          rcomap' r (rcomap' s l) = rcomap' (r.comp s) l
          @[simp]
          theorem Filter.rcomap'_compose {α : Type u} {β : Type v} {γ : Type w} (r : SetRel α β) (s : SetRel β γ) :
          def Filter.RTendsto' {α : Type u} {β : Type v} (r : SetRel α β) (l₁ : Filter α) (l₂ : Filter β) :

          Generic "limit of a relation" predicate. RTendsto' r l₁ l₂ asserts that for every l₂-neighborhood a, the r-preimage of a is an l₁-neighborhood. One generalization of Filter.Tendsto to relations.

          Equations
          Instances For
            theorem Filter.rtendsto'_def {α : Type u} {β : Type v} (r : SetRel α β) (l₁ : Filter α) (l₂ : Filter β) :
            RTendsto' r l₁ l₂ sl₂, r.preimage s l₁
            theorem Filter.tendsto_iff_rtendsto {α : Type u} {β : Type v} (l₁ : Filter α) (l₂ : Filter β) (f : αβ) :
            Tendsto f l₁ l₂ RTendsto (Function.graph f) l₁ l₂
            theorem Filter.tendsto_iff_rtendsto' {α : Type u} {β : Type v} (l₁ : Filter α) (l₂ : Filter β) (f : αβ) :
            Tendsto f l₁ l₂ RTendsto' (Function.graph f) l₁ l₂

            Partial functions #

            def Filter.pmap {α : Type u} {β : Type v} (f : α →. β) (l : Filter α) :

            The forward map of a filter under a partial function. Generalization of Filter.map to partial functions.

            Equations
            Instances For
              @[simp]
              theorem Filter.mem_pmap {α : Type u} {β : Type v} (f : α →. β) (l : Filter α) (s : Set β) :
              s pmap f l f.core s l
              def Filter.PTendsto {α : Type u} {β : Type v} (f : α →. β) (l₁ : Filter α) (l₂ : Filter β) :

              Generic "limit of a partial function" predicate. PTendsto r l₁ l₂ asserts that for every l₂-neighborhood a, the p-core of a is an l₁-neighborhood. One generalization of Filter.Tendsto to partial function.

              Equations
              Instances For
                theorem Filter.ptendsto_def {α : Type u} {β : Type v} (f : α →. β) (l₁ : Filter α) (l₂ : Filter β) :
                PTendsto f l₁ l₂ sl₂, f.core s l₁
                theorem Filter.ptendsto_iff_rtendsto {α : Type u} {β : Type v} (l₁ : Filter α) (l₂ : Filter β) (f : α →. β) :
                PTendsto f l₁ l₂ RTendsto f.graph' l₁ l₂
                theorem Filter.pmap_res {α : Type u} {β : Type v} (l : Filter α) (s : Set α) (f : αβ) :
                pmap (PFun.res f s) l = map f (lprincipal s)
                theorem Filter.tendsto_iff_ptendsto {α : Type u} {β : Type v} (l₁ : Filter α) (l₂ : Filter β) (s : Set α) (f : αβ) :
                Tendsto f (l₁principal s) l₂ PTendsto (PFun.res f s) l₁ l₂
                theorem Filter.tendsto_iff_ptendsto_univ {α : Type u} {β : Type v} (l₁ : Filter α) (l₂ : Filter β) (f : αβ) :
                Tendsto f l₁ l₂ PTendsto (PFun.res f Set.univ) l₁ l₂
                def Filter.pcomap' {α : Type u} {β : Type v} (f : α →. β) (l : Filter β) :

                Inverse map of a filter under a partial function. One generalization of Filter.comap to partial functions.

                Equations
                Instances For
                  def Filter.PTendsto' {α : Type u} {β : Type v} (f : α →. β) (l₁ : Filter α) (l₂ : Filter β) :

                  Generic "limit of a partial function" predicate. PTendsto' r l₁ l₂ asserts that for every l₂-neighborhood a, the p-preimage of a is an l₁-neighborhood. One generalization of Filter.Tendsto to partial functions.

                  Equations
                  Instances For
                    theorem Filter.ptendsto'_def {α : Type u} {β : Type v} (f : α →. β) (l₁ : Filter α) (l₂ : Filter β) :
                    PTendsto' f l₁ l₂ sl₂, f.preimage s l₁
                    theorem Filter.ptendsto_of_ptendsto' {α : Type u} {β : Type v} {f : α →. β} {l₁ : Filter α} {l₂ : Filter β} :
                    PTendsto' f l₁ l₂PTendsto f l₁ l₂
                    theorem Filter.ptendsto'_of_ptendsto {α : Type u} {β : Type v} {f : α →. β} {l₁ : Filter α} {l₂ : Filter β} (h : f.Dom l₁) :
                    PTendsto f l₁ l₂PTendsto' f l₁ l₂