# mathlib3documentation

geometry.manifold.local_invariant_properties

# Local properties invariant under a groupoid #

THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.

We study properties of a triple `(g, s, x)` where `g` is a function between two spaces `H` and `H'`, `s` is a subset of `H` and `x` is a point of `H`. Our goal is to register how such a property should behave to make sense in charted spaces modelled on `H` and `H'`.

The main examples we have in mind are the properties "`g` is differentiable at `x` within `s`", or "`g` is smooth at `x` within `s`". We want to develop general results that, when applied in these specific situations, say that the notion of smooth function in a manifold behaves well under restriction, intersection, is local, and so on.

## Main definitions #

• `local_invariant_prop G G' P` says that a property `P` of a triple `(g, s, x)` is local, and invariant under composition by elements of the groupoids `G` and `G'` of `H` and `H'` respectively.
• `charted_space.lift_prop_within_at` (resp. `lift_prop_at`, `lift_prop_on` and `lift_prop`): given a property `P` of `(g, s, x)` where `g : H → H'`, define the corresponding property for functions `M → M'` where `M` and `M'` are charted spaces modelled respectively on `H` and `H'`. We define these properties within a set at a point, or at a point, or on a set, or in the whole space. This lifting process (obtained by restricting to suitable chart domains) can always be done, but it only behaves well under locality and invariance assumptions.

Given `hG : local_invariant_prop G G' P`, we deduce many properties of the lifted property on the charted spaces. For instance, `hG.lift_prop_within_at_inter` says that `P g s x` is equivalent to `P g (s ∩ t) x` whenever `t` is a neighborhood of `x`.

## Implementation notes #

We do not use dot notation for properties of the lifted property. For instance, we have `hG.lift_prop_within_at_congr` saying that if `lift_prop_within_at P g s x` holds, and `g` and `g'` coincide on `s`, then `lift_prop_within_at P g' s x` holds. We can't call it `lift_prop_within_at.congr` as it is in the namespace associated to `local_invariant_prop`, not in the one for `lift_prop_within_at`.

structure structure_groupoid.local_invariant_prop {H : Type u_1} {H' : Type u_3} (G : structure_groupoid H) (G' : structure_groupoid H') (P : (H H') set H H Prop) :
Prop

Structure recording good behavior of a property of a triple `(f, s, x)` where `f` is a function, `s` a set and `x` a point. Good behavior here means locality and invariance under given groupoids (both in the source and in the target). Given such a good behavior, the lift of this property to charted spaces admitting these groupoids will inherit the good behavior.

theorem structure_groupoid.local_invariant_prop.congr_set {H : Type u_1} {H' : Type u_3} {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {s t : set H} {x : H} {f : H H'} (hu : s =ᶠ[nhds x] t) :
P f s x P f t x
theorem structure_groupoid.local_invariant_prop.is_local_nhds {H : Type u_1} {H' : Type u_3} {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {s u : set H} {x : H} {f : H H'} (hu : u s) :
P f s x P f (s u) x
theorem structure_groupoid.local_invariant_prop.congr_iff_nhds_within {H : Type u_1} {H' : Type u_3} {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {s : set H} {x : H} {f g : H H'} (h1 : f =ᶠ[ s] g) (h2 : f x = g x) :
P f s x P g s x
theorem structure_groupoid.local_invariant_prop.congr_nhds_within {H : Type u_1} {H' : Type u_3} {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {s : set H} {x : H} {f g : H H'} (h1 : f =ᶠ[ s] g) (h2 : f x = g x) (hP : P f s x) :
P g s x
theorem structure_groupoid.local_invariant_prop.congr_nhds_within' {H : Type u_1} {H' : Type u_3} {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {s : set H} {x : H} {f g : H H'} (h1 : f =ᶠ[ s] g) (h2 : f x = g x) (hP : P g s x) :
P f s x
theorem structure_groupoid.local_invariant_prop.congr_iff {H : Type u_1} {H' : Type u_3} {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {s : set H} {x : H} {f g : H H'} (h : f =ᶠ[nhds x] g) :
P f s x P g s x
theorem structure_groupoid.local_invariant_prop.congr {H : Type u_1} {H' : Type u_3} {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {s : set H} {x : H} {f g : H H'} (h : f =ᶠ[nhds x] g) (hP : P f s x) :
P g s x
theorem structure_groupoid.local_invariant_prop.congr' {H : Type u_1} {H' : Type u_3} {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {s : set H} {x : H} {f g : H H'} (h : f =ᶠ[nhds x] g) (hP : P g s x) :
P f s x
theorem structure_groupoid.local_invariant_prop.left_invariance {H : Type u_1} {H' : Type u_3} {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {s : set H} {x : H} {f : H H'} {e' : H'} (he' : e' G') (hfs : x) (hxe' : f x e'.to_local_equiv.source) :
P (e' f) s x P f s x
theorem structure_groupoid.local_invariant_prop.right_invariance {H : Type u_1} {H' : Type u_3} {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {s : set H} {x : H} {f : H H'} {e : H} (he : e G) (hxe : x e.to_local_equiv.source) :
P (f (e.symm)) ((e.symm) ⁻¹' s) (e x) P f s x
def charted_space.lift_prop_within_at {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] (P : (H H') set H H Prop) (f : M M') (s : set M) (x : M) :
Prop

Given a property of germs of functions and sets in the model space, then one defines a corresponding property in a charted space, by requiring that it holds at the preferred chart at this point. (When the property is local and invariant, it will in fact hold using any chart, see `lift_prop_within_at_indep_chart`). We require continuity in the lifted property, as otherwise one single chart might fail to capture the behavior of the function.

Equations
def charted_space.lift_prop_on {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] (P : (H H') set H H Prop) (f : M M') (s : set M) :
Prop

Given a property of germs of functions and sets in the model space, then one defines a corresponding property of functions on sets in a charted space, by requiring that it holds around each point of the set, in the preferred charts.

Equations
def charted_space.lift_prop_at {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] (P : (H H') set H H Prop) (f : M M') (x : M) :
Prop

Given a property of germs of functions and sets in the model space, then one defines a corresponding property of a function at a point in a charted space, by requiring that it holds in the preferred chart.

Equations
theorem charted_space.lift_prop_at_iff {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {P : (H H') set H H Prop} {f : M M'} {x : M} :
P ( (f x)) f x).symm)) set.univ ( x)
def charted_space.lift_prop {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] (P : (H H') set H H Prop) (f : M M') :
Prop

Given a property of germs of functions and sets in the model space, then one defines a corresponding property of a function in a charted space, by requiring that it holds in the preferred chart around every point.

Equations
theorem charted_space.lift_prop_iff {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {P : (H H') set H H Prop} {f : M M'} :
(x : M), P ( (f x)) f x).symm)) set.univ ( x)
theorem structure_groupoid.lift_prop_within_at_univ {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {P : (H H') set H H Prop} {g : M M'} {x : M} :
theorem structure_groupoid.lift_prop_on_univ {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {P : (H H') set H H Prop} {g : M M'} :
theorem structure_groupoid.lift_prop_within_at_self {H : Type u_1} {H' : Type u_3} {P : (H H') set H H Prop} {f : H H'} {s : set H} {x : H} :
x P f s x
theorem structure_groupoid.lift_prop_within_at_self_source {H : Type u_1} {H' : Type u_3} {M' : Type u_4} [ M'] {P : (H H') set H H Prop} {f : H M'} {s : set H} {x : H} :
x P ( (f x)) f) s x
theorem structure_groupoid.lift_prop_within_at_self_target {H : Type u_1} {M : Type u_2} {H' : Type u_3} [ M] {P : (H H') set H H Prop} {s : set M} {x : M} {f : M H'} :
x P (f x).symm)) ( x).symm) ⁻¹' s) ( x)
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_iff {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {s : set M} {x : M} (hG : P) {f : M M'} :
x P ( (f x)) f x).symm)) x).symm) ⁻¹' (s f ⁻¹' (f x)).to_local_equiv.source)) ( x)

`lift_prop_within_at P f s x` is equivalent to a definition where we restrict the set we are considering to the domain of the charts at `x` and `f x`.

theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_indep_chart_source_aux {H : Type u_1} {M : Type u_2} {H' : Type u_3} [ M] {G : structure_groupoid H} {G' : structure_groupoid H'} {e e' : H} {P : (H H') set H H Prop} {s : set M} {x : M} (hG : P) (g : M H') (he : e ) (xe : x e.to_local_equiv.source) (he' : e' ) (xe' : x e'.to_local_equiv.source) :
P (g (e.symm)) ((e.symm) ⁻¹' s) (e x) P (g (e'.symm)) ((e'.symm) ⁻¹' s) (e' x)
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_indep_chart_target_aux2 {H : Type u_1} {H' : Type u_3} {M' : Type u_4} [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {f f' : H'} {P : (H H') set H H Prop} (hG : P) (g : H M') {x : H} {s : set H} (hf : f ) (xf : g x f.to_local_equiv.source) (hf' : f' ) (xf' : g x f'.to_local_equiv.source) (hgs : x) :
P (f g) s x P (f' g) s x
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_indep_chart_target_aux {H : Type u_1} {H' : Type u_3} {M' : Type u_4} {X : Type u_5} [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {f f' : H'} {P : (H H') set H H Prop} (hG : P) {g : X M'} {e : H} {x : X} {s : set X} (xe : x e.to_local_equiv.source) (hf : f ) (xf : g x f.to_local_equiv.source) (hf' : f' ) (xf' : g x f'.to_local_equiv.source) (hgs : x) :
P (f g (e.symm)) ((e.symm) ⁻¹' s) (e x) P (f' g (e.symm)) ((e.symm) ⁻¹' s) (e x)
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_indep_chart_aux {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {e e' : H} {f f' : H'} {P : (H H') set H H Prop} {g : M M'} {s : set M} {x : M} (hG : P) (he : e ) (xe : x e.to_local_equiv.source) (he' : e' ) (xe' : x e'.to_local_equiv.source) (hf : f ) (xf : g x f.to_local_equiv.source) (hf' : f' ) (xf' : g x f'.to_local_equiv.source) (hgs : x) :
P (f g (e.symm)) ((e.symm) ⁻¹' s) (e x) P (f' g (e'.symm)) ((e'.symm) ⁻¹' s) (e' x)

If a property of a germ of function `g` on a pointed set `(s, x)` is invariant under the structure groupoid (by composition in the source space and in the target space), then expressing it in charted spaces does not depend on the element of the maximal atlas one uses both in the source and in the target manifolds, provided they are defined around `x` and `g x` respectively, and provided `g` is continuous within `s` at `x` (otherwise, the local behavior of `g` at `x` can not be captured with a chart in the target).

theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_indep_chart {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {e : H} {f : H'} {P : (H H') set H H Prop} {g : M M'} {s : set M} {x : M} (hG : P) [ G] [ G'] (he : e ) (xe : x e.to_local_equiv.source) (hf : f ) (xf : g x f.to_local_equiv.source) :
x P (f g (e.symm)) ((e.symm) ⁻¹' s) (e x)
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_indep_chart_source {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {e : H} {P : (H H') set H H Prop} {g : M M'} {s : set M} {x : M} (hG : P) [ G] (he : e ) (xe : x e.to_local_equiv.source) :
(g (e.symm)) ((e.symm) ⁻¹' s) (e x)

A version of `lift_prop_within_at_indep_chart`, only for the source.

theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_indep_chart_target {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {f : H'} {P : (H H') set H H Prop} {g : M M'} {s : set M} {x : M} (hG : P) [ G'] (hf : f ) (xf : g x f.to_local_equiv.source) :
x s x

A version of `lift_prop_within_at_indep_chart`, only for the target.

theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_indep_chart' {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {e : H} {f : H'} {P : (H H') set H H Prop} {g : M M'} {s : set M} {x : M} (hG : P) [ G] [ G'] (he : e ) (xe : x e.to_local_equiv.source) (hf : f ) (xf : g x f.to_local_equiv.source) :
x (f g (e.symm)) ((e.symm) ⁻¹' s) (e x)

A version of `lift_prop_within_at_indep_chart`, that uses `lift_prop_within_at` on both sides.

theorem structure_groupoid.local_invariant_prop.lift_prop_on_indep_chart {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {e : H} {f : H'} {P : (H H') set H H Prop} {g : M M'} {s : set M} (hG : P) [ G] [ G'] (he : e ) (hf : f ) (h : s) {y : H} (hy : y e.to_local_equiv.target (e.symm) ⁻¹' (s ) :
P (f g (e.symm)) ((e.symm) ⁻¹' s) y
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_inter' {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g : M M'} {s t : set M} {x : M} (hG : P) (ht : t s) :
(s t) x
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_inter {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g : M M'} {s t : set M} {x : M} (hG : P) (ht : t nhds x) :
(s t) x
theorem structure_groupoid.local_invariant_prop.lift_prop_at_of_lift_prop_within_at {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g : M M'} {s : set M} {x : M} (hG : P) (h : x) (hs : s nhds x) :
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_of_lift_prop_at_of_mem_nhds {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g : M M'} {s : set M} {x : M} (hG : P) (h : x) (hs : s nhds x) :
theorem structure_groupoid.local_invariant_prop.lift_prop_on_of_locally_lift_prop_on {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g : M M'} {s : set M} (hG : P) (h : (x : M), x s ( (u : set M), x u (s u))) :
theorem structure_groupoid.local_invariant_prop.lift_prop_of_locally_lift_prop_on {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g : M M'} (hG : P) (h : (x : M), (u : set M), x u ) :
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_congr_of_eventually_eq {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g g' : M M'} {s : set M} {x : M} (hG : P) (h : x) (h₁ : g' =ᶠ[ s] g) (hx : g' x = g x) :
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_congr_iff_of_eventually_eq {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g g' : M M'} {s : set M} {x : M} (hG : P) (h₁ : g' =ᶠ[ s] g) (hx : g' x = g x) :
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_congr_iff {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g g' : M M'} {s : set M} {x : M} (hG : P) (h₁ : (y : M), y s g' y = g y) (hx : g' x = g x) :
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_congr {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g g' : M M'} {s : set M} {x : M} (hG : P) (h : x) (h₁ : (y : M), y s g' y = g y) (hx : g' x = g x) :
theorem structure_groupoid.local_invariant_prop.lift_prop_at_congr_iff_of_eventually_eq {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g g' : M M'} {x : M} (hG : P) (h₁ : g' =ᶠ[nhds x] g) :
theorem structure_groupoid.local_invariant_prop.lift_prop_at_congr_of_eventually_eq {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g g' : M M'} {x : M} (hG : P) (h : x) (h₁ : g' =ᶠ[nhds x] g) :
theorem structure_groupoid.local_invariant_prop.lift_prop_on_congr {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g g' : M M'} {s : set M} (hG : P) (h : s) (h₁ : (y : M), y s g' y = g y) :
theorem structure_groupoid.local_invariant_prop.lift_prop_on_congr_iff {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} {g g' : M M'} {s : set M} (hG : P) (h₁ : (y : M), y s g' y = g y) :
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_mono_of_mem {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {P : (H H') set H H Prop} {g : M M'} {s t : set M} {x : M} (mono_of_mem : ⦃s : set H⦄ ⦃x : H⦄ ⦃t : set H⦄ ⦃f : H H'⦄, s t P f s x P f t x) (h : x) (hst : s t) :
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_mono {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {P : (H H') set H H Prop} {g : M M'} {s t : set M} {x : M} (mono : ⦃s : set H⦄ ⦃x : H⦄ ⦃t : set H⦄ ⦃f : H H'⦄, t s P f s x P f t x) (h : x) (hts : t s) :
theorem structure_groupoid.local_invariant_prop.lift_prop_within_at_of_lift_prop_at {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {P : (H H') set H H Prop} {g : M M'} {s : set M} {x : M} (mono : ⦃s : set H⦄ ⦃x : H⦄ ⦃t : set H⦄ ⦃f : H H'⦄, t s P f s x P f t x) (h : x) :
theorem structure_groupoid.local_invariant_prop.lift_prop_on_mono {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {P : (H H') set H H Prop} {g : M M'} {s t : set M} (mono : ⦃s : set H⦄ ⦃x : H⦄ ⦃t : set H⦄ ⦃f : H H'⦄, t s P f s x P f t x) (h : t) (hst : s t) :
theorem structure_groupoid.local_invariant_prop.lift_prop_on_of_lift_prop {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {P : (H H') set H H Prop} {g : M M'} {s : set M} (mono : ⦃s : set H⦄ ⦃x : H⦄ ⦃t : set H⦄ ⦃f : H H'⦄, t s P f s x P f t x) (h : g) :
theorem structure_groupoid.local_invariant_prop.lift_prop_at_of_mem_maximal_atlas {H : Type u_1} {M : Type u_2} [ M] {G : structure_groupoid H} {e : H} {x : M} {Q : (H H) set H H Prop} [ G] (hG : Q) (hQ : (y : H), y) (he : e ) (hx : x e.to_local_equiv.source) :
theorem structure_groupoid.local_invariant_prop.lift_prop_on_of_mem_maximal_atlas {H : Type u_1} {M : Type u_2} [ M] {G : structure_groupoid H} {e : H} {Q : (H H) set H H Prop} [ G] (hG : Q) (hQ : (y : H), y) (he : e ) :
theorem structure_groupoid.local_invariant_prop.lift_prop_at_symm_of_mem_maximal_atlas {H : Type u_1} {M : Type u_2} [ M] {G : structure_groupoid H} {e : H} {Q : (H H) set H H Prop} [ G] {x : H} (hG : Q) (hQ : (y : H), y) (he : e ) (hx : x e.to_local_equiv.target) :
x
theorem structure_groupoid.local_invariant_prop.lift_prop_on_symm_of_mem_maximal_atlas {H : Type u_1} {M : Type u_2} [ M] {G : structure_groupoid H} {e : H} {Q : (H H) set H H Prop} [ G] (hG : Q) (hQ : (y : H), y) (he : e ) :
theorem structure_groupoid.local_invariant_prop.lift_prop_at_chart {H : Type u_1} {M : Type u_2} [ M] {G : structure_groupoid H} {x : M} {Q : (H H) set H H Prop} [ G] (hG : Q) (hQ : (y : H), y) :
theorem structure_groupoid.local_invariant_prop.lift_prop_on_chart {H : Type u_1} {M : Type u_2} [ M] {G : structure_groupoid H} {x : M} {Q : (H H) set H H Prop} [ G] (hG : Q) (hQ : (y : H), y) :
theorem structure_groupoid.local_invariant_prop.lift_prop_at_chart_symm {H : Type u_1} {M : Type u_2} [ M] {G : structure_groupoid H} {x : M} {Q : (H H) set H H Prop} [ G] (hG : Q) (hQ : (y : H), y) :
( x)
theorem structure_groupoid.local_invariant_prop.lift_prop_on_chart_symm {H : Type u_1} {M : Type u_2} [ M] {G : structure_groupoid H} {x : M} {Q : (H H) set H H Prop} [ G] (hG : Q) (hQ : (y : H), y) :
theorem structure_groupoid.local_invariant_prop.lift_prop_at_of_mem_groupoid {H : Type u_1} {G : structure_groupoid H} {Q : (H H) set H H Prop} (hG : Q) (hQ : (y : H), y) {f : H} (hf : f G) {x : H} (hx : x f.to_local_equiv.source) :
theorem structure_groupoid.local_invariant_prop.lift_prop_on_of_mem_groupoid {H : Type u_1} {G : structure_groupoid H} {Q : (H H) set H H Prop} (hG : Q) (hQ : (y : H), y) {f : H} (hf : f G) :
theorem structure_groupoid.local_invariant_prop.lift_prop_id {H : Type u_1} {M : Type u_2} [ M] {G : structure_groupoid H} {Q : (H H) set H H Prop} (hG : Q) (hQ : (y : H), y) :
theorem structure_groupoid.local_invariant_prop.lift_prop_at_iff_comp_inclusion {H : Type u_1} {M : Type u_2} {H' : Type u_3} {M' : Type u_4} [ M] [ M'] {G : structure_groupoid H} {G' : structure_groupoid H'} {P : (H H') set H H Prop} (hG : P) {U V : topological_space.opens M} (hUV : U V) (f : V M') (x : U) :
(set.inclusion hUV x) (f set.inclusion hUV) x
theorem structure_groupoid.local_invariant_prop.lift_prop_inclusion {H : Type u_1} {M : Type u_2} [ M] {G : structure_groupoid H} {Q : (H H) set H H Prop} (hG : Q) (hQ : (y : H), y) {U V : topological_space.opens M} (hUV : U V) :
def structure_groupoid.is_local_structomorph_within_at {H : Type u_1} (G : structure_groupoid H) (f : H H) (s : set H) (x : H) :
Prop

A function from a model space `H` to itself is a local structomorphism, with respect to a structure groupoid `G` for `H`, relative to a set `s` in `H`, if for all points `x` in the set, the function agrees with a `G`-structomorphism on `s` in a neighbourhood of `x`.

Equations

For a groupoid `G` which is `closed_under_restriction`, being a local structomorphism is a local invariant property.

theorem local_homeomorph.is_local_structomorph_within_at_iff {H : Type u_1} {G : structure_groupoid H} (f : H) {s : set H} {x : H} (hx : x ) :
x s ( (e : H), e G e (s e.to_local_equiv.source)

A slight reformulation of `is_local_structomorph_within_at` when `f` is a local homeomorph. This gives us an `e` that is defined on a subset of `f.source`.

theorem local_homeomorph.is_local_structomorph_within_at_iff' {H : Type u_1} {G : structure_groupoid H} (f : H) {s : set H} {x : H} (hs : f.to_local_equiv.source s) (hx : x ) :
x s ( (e : H), e G

A slight reformulation of `is_local_structomorph_within_at` when `f` is a local homeomorph and the set we're considering is a superset of `f.source`.

theorem local_homeomorph.is_local_structomorph_within_at_source_iff {H : Type u_1} {G : structure_groupoid H} (f : H) {x : H} :
( (e : H), e G

A slight reformulation of `is_local_structomorph_within_at` when `f` is a local homeomorph and the set we're considering is `f.source`.

theorem structure_groupoid.has_groupoid.comp {H₁ : Type u_6} {H₂ : Type u_7} {H₃ : Type u_8} [ H₂] [ H₃] {G₁ : structure_groupoid H₁} [ G₁] (G₂ : structure_groupoid H₂) [ G₂] (H : (e : H₂), ) :
G₁