Documentation

Mathlib.Topology.OpenPartialHomeomorph.IsImage

Partial homeomorphisms: Images of sets #

Main definitions #

Implementation notes #

Most statements are copied from their PartialEquiv versions, although some care is required especially when restricting to subsets, as these should be open subsets.

For design notes, see PartialEquiv.lean.

Local coding conventions #

If a lemma deals with the intersection of a set with either source or target of a PartialEquiv, then it should use e.source ∩ s or e.target ∩ t, not s ∩ e.source or t ∩ e.target.

OpenPartialHomeomorph.IsImage relation #

We say that t : Set Y is an image of s : Set X under an open partial homeomorphism e if any of the following equivalent conditions hold:

This definition is a restatement of PartialEquiv.IsImage for open partial homeomorphisms. In this section we transfer API about PartialEquiv.IsImage to open partial homeomorphisms and add a few OpenPartialHomeomorph-specific lemmas like OpenPartialHomeomorph.IsImage.closure.

def OpenPartialHomeomorph.IsImage {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] (e : OpenPartialHomeomorph X Y) (s : Set X) (t : Set Y) :

We say that t : Set Y is an image of s : Set X under an open partial homeomorphism e if any of the following equivalent conditions hold:

  • e '' (e.source ∩ s) = e.target ∩ t;
  • e.source ∩ e ⁻¹ t = e.source ∩ s;
  • ∀ x ∈ e.source, e x ∈ t ↔ x ∈ s (this one is used in the definition).
Equations
    Instances For
      theorem OpenPartialHomeomorph.IsImage.apply_mem_iff {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} {x : X} (h : e.IsImage s t) (hx : x e.source) :
      e x t x s
      theorem OpenPartialHomeomorph.IsImage.symm {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} (h : e.IsImage s t) :
      theorem OpenPartialHomeomorph.IsImage.symm_apply_mem_iff {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} {y : Y} (h : e.IsImage s t) (hy : y e.target) :
      e.symm y s y t
      theorem OpenPartialHomeomorph.IsImage.mapsTo {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} (h : e.IsImage s t) :
      Set.MapsTo (↑e) (e.source s) (e.target t)
      theorem OpenPartialHomeomorph.IsImage.image_eq {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} (h : e.IsImage s t) :
      e '' (e.source s) = e.target t
      theorem OpenPartialHomeomorph.IsImage.preimage_eq {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} :
      e.IsImage s te.source e ⁻¹' t = e.source s

      Alias of the forward direction of OpenPartialHomeomorph.IsImage.iff_preimage_eq.

      theorem OpenPartialHomeomorph.IsImage.of_image_eq {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} (h : e '' (e.source s) = e.target t) :
      e.IsImage s t
      theorem OpenPartialHomeomorph.IsImage.inter {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} {s' : Set X} {t' : Set Y} (h : e.IsImage s t) (h' : e.IsImage s' t') :
      e.IsImage (s s') (t t')
      theorem OpenPartialHomeomorph.IsImage.union {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} {s' : Set X} {t' : Set Y} (h : e.IsImage s t) (h' : e.IsImage s' t') :
      e.IsImage (s s') (t t')
      theorem OpenPartialHomeomorph.IsImage.diff {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} {s' : Set X} {t' : Set Y} (h : e.IsImage s t) (h' : e.IsImage s' t') :
      e.IsImage (s \ s') (t \ t')
      theorem OpenPartialHomeomorph.IsImage.leftInvOn_piecewise {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} {e' : OpenPartialHomeomorph X Y} [(i : X) → Decidable (i s)] [(i : Y) → Decidable (i t)] (h : e.IsImage s t) (h' : e'.IsImage s t) :
      Set.LeftInvOn (t.piecewise e.symm e'.symm) (s.piecewise e e') (s.ite e.source e'.source)
      theorem OpenPartialHomeomorph.IsImage.inter_eq_of_inter_eq_of_eqOn {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} {e' : OpenPartialHomeomorph X Y} (h : e.IsImage s t) (h' : e'.IsImage s t) (hs : e.source s = e'.source s) (Heq : Set.EqOn (↑e) (↑e') (e.source s)) :
      e.target t = e'.target t
      theorem OpenPartialHomeomorph.IsImage.symm_eqOn_of_inter_eq_of_eqOn {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} {e' : OpenPartialHomeomorph X Y} (h : e.IsImage s t) (hs : e.source s = e'.source s) (Heq : Set.EqOn (↑e) (↑e') (e.source s)) :
      Set.EqOn (↑e.symm) (↑e'.symm) (e.target t)
      theorem OpenPartialHomeomorph.IsImage.map_nhdsWithin_eq {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} {x : X} (h : e.IsImage s t) (hx : x e.source) :
      Filter.map (↑e) (nhdsWithin x s) = nhdsWithin (e x) t
      def OpenPartialHomeomorph.IsImage.restr {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} (h : e.IsImage s t) (hs : IsOpen (e.source s)) :

      Restrict an OpenPartialHomeomorph to a pair of corresponding open sets.

      Equations
        Instances For
          @[simp]
          theorem OpenPartialHomeomorph.IsImage.restr_apply {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} (h : e.IsImage s t) (hs : IsOpen (e.source s)) :
          (h.restr hs) = e
          @[simp]
          theorem OpenPartialHomeomorph.IsImage.restr_toPartialEquiv {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} (h : e.IsImage s t) (hs : IsOpen (e.source s)) :
          @[simp]
          theorem OpenPartialHomeomorph.IsImage.restr_symm_apply {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e : OpenPartialHomeomorph X Y} {s : Set X} {t : Set Y} (h : e.IsImage s t) (hs : IsOpen (e.source s)) :
          (h.restr hs).symm = e.symm

          Preimage of interior or interior of preimage coincide for open partial homeomorphisms, when restricted to the source.

          Restriction #

          Restricting an open partial homeomorphism e to e.source ∩ s when s is open. This is sometimes hard to use because of the openness assumption, but it has the advantage that when it can be used then its PartialEquiv is defeq to PartialEquiv.restr.

          Equations
            Instances For
              @[simp]
              theorem OpenPartialHomeomorph.coe_restrOpen {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] (e : OpenPartialHomeomorph X Y) {s : Set X} (hs : IsOpen s) :
              (e.restrOpen s hs) = e
              @[simp]
              theorem OpenPartialHomeomorph.coe_restrOpen_symm {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] (e : OpenPartialHomeomorph X Y) {s : Set X} (hs : IsOpen s) :
              (e.restrOpen s hs).symm = e.symm

              Restricting an open partial homeomorphism e to e.source ∩ interior s. We use the interior to make sure that the restriction is well defined whatever the set s, since open partial homeomorphisms are by definition defined on open sets. In applications where s is open, this coincides with the restriction of partial equivalences.

              Equations
                Instances For
                  @[simp]
                  theorem OpenPartialHomeomorph.restr_apply {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] (e : OpenPartialHomeomorph X Y) (s : Set X) :
                  (e.restr s) = e

                  ofSet #

                  The identity on a set s

                  The identity partial equivalence on a set s

                  Equations
                    Instances For
                      @[simp]
                      theorem OpenPartialHomeomorph.ofSet_apply {X : Type u_1} [TopologicalSpace X] (s : Set X) (hs : IsOpen s) :
                      (ofSet s hs) = id
                      @[simp]
                      theorem OpenPartialHomeomorph.ofSet_symm {X : Type u_1} [TopologicalSpace X] {s : Set X} (hs : IsOpen s) :
                      (ofSet s hs).symm = ofSet s hs

                      EqOnSource: equivalence on their source

                      EqOnSource e e' means that e and e' have the same source, and coincide there. They should really be considered the same partial equivalence.

                      Equations
                        Instances For

                          If two open partial homeomorphisms are equivalent, so are their inverses.

                          Two equivalent open partial homeomorphisms have the same source.

                          Two equivalent open partial homeomorphisms have the same target.

                          theorem OpenPartialHomeomorph.EqOnSource.eqOn {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e e' : OpenPartialHomeomorph X Y} (h : e e') :
                          Set.EqOn (↑e) (↑e') e.source

                          Two equivalent open partial homeomorphisms have coinciding toFun on the source

                          Two equivalent open partial homeomorphisms have coinciding invFun on the target

                          theorem OpenPartialHomeomorph.EqOnSource.restr {X : Type u_1} {Y : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] {e e' : OpenPartialHomeomorph X Y} (he : e e') (s : Set X) :
                          e.restr s e'.restr s

                          Restriction of open partial homeomorphisms respects equivalence

                          Two equivalent open partial homeomorphisms are equal when the source and target are univ.

                          @[deprecated Homeomorph.refl_toOpenPartialHomeomorph (since := "2025-08-29")]

                          Alias of Homeomorph.refl_toOpenPartialHomeomorph.

                          @[deprecated Homeomorph.symm_toOpenPartialHomeomorph (since := "2025-08-29")]

                          Alias of Homeomorph.symm_toOpenPartialHomeomorph.