mathlib3documentation

topology.algebra.continuous_affine_map

Continuous affine maps. #

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

This file defines a type of bundled continuous affine maps.

Note that the definition and basic properties established here require minimal assumptions, and do not even assume compatibility between the topological and algebraic structures. Of course it is necessary to assume some compatibility in order to obtain a useful theory. Such a theory is developed elsewhere for affine spaces modelled on normed vector spaces, but not yet for general topological affine spaces (since we have not defined these yet).

Main definitions: #

• continuous_affine_map

Notation: #

We introduce the notation P →A[R] Q for continuous_affine_map R P Q. Note that this is parallel to the notation E →L[R] F for continuous_linear_map R E F.

structure continuous_affine_map (R : Type u_1) {V : Type u_2} {W : Type u_3} (P : Type u_4) (Q : Type u_5) [ring R] [ V] [ P] [ W] [ Q] :
Type (max u_2 u_3 u_4 u_5)

A continuous map of affine spaces.

Instances for continuous_affine_map
@[protected, instance]
def continuous_affine_map.affine_map.has_coe {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] :
has_coe (P →A[R] Q) (P →ᵃ[R] Q)
Equations
theorem continuous_affine_map.to_affine_map_injective {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] {f g : P →A[R] Q} (h : f = g) :
f = g
@[protected, instance]
def continuous_affine_map.continuous_map_class {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] :
Equations
@[protected, instance]
def continuous_affine_map.has_coe_to_fun {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] :
has_coe_to_fun (P →A[R] Q) (λ (_x : P →A[R] Q), P Q)

Helper instance for when there's too many metavariables to apply fun_like.has_coe_to_fun directly.

Equations
theorem continuous_affine_map.to_fun_eq_coe {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →A[R] Q) :
theorem continuous_affine_map.coe_injective {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] :
@[ext]
theorem continuous_affine_map.ext {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] {f g : P →A[R] Q} (h : (x : P), f x = g x) :
f = g
theorem continuous_affine_map.ext_iff {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] {f g : P →A[R] Q} :
f = g (x : P), f x = g x
theorem continuous_affine_map.congr_fun {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] {f g : P →A[R] Q} (h : f = g) (x : P) :
f x = g x
def continuous_affine_map.to_continuous_map {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →A[R] Q) :
C(P, Q)

Forgetting its algebraic properties, a continuous affine map is a continuous map.

Equations
@[protected, instance]
def continuous_affine_map.continuous_map.has_coe {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] :
has_coe (P →A[R] Q) C(P, Q)
Equations
@[simp]
theorem continuous_affine_map.to_affine_map_eq_coe {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →A[R] Q) :
@[simp]
theorem continuous_affine_map.to_continuous_map_coe {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →A[R] Q) :
@[simp, norm_cast]
theorem continuous_affine_map.coe_to_affine_map {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →A[R] Q) :
@[simp, norm_cast]
theorem continuous_affine_map.coe_to_continuous_map {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →A[R] Q) :
theorem continuous_affine_map.to_continuous_map_injective {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] {f g : P →A[R] Q} (h : f = g) :
f = g
@[norm_cast]
theorem continuous_affine_map.coe_affine_map_mk {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →ᵃ[R] Q) (h : continuous f.to_fun) :
{to_affine_map := f, cont := h} = f
@[norm_cast]
theorem continuous_affine_map.coe_continuous_map_mk {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →ᵃ[R] Q) (h : continuous f.to_fun) :
@[simp]
theorem continuous_affine_map.coe_mk {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →ᵃ[R] Q) (h : continuous f.to_fun) :
@[simp]
theorem continuous_affine_map.mk_coe {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →A[R] Q) (h : continuous f.to_fun) :
{to_affine_map := f, cont := h} = f
@[protected, continuity]
theorem continuous_affine_map.continuous {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (f : P →A[R] Q) :
def continuous_affine_map.const (R : Type u_1) {V : Type u_2} {W : Type u_3} (P : Type u_4) {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (q : Q) :
P →A[R] Q

The constant map is a continuous affine map.

Equations
@[simp]
theorem continuous_affine_map.coe_const (R : Type u_1) {V : Type u_2} {W : Type u_3} (P : Type u_4) {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] (q : Q) :
q) =
@[protected, instance]
noncomputable def continuous_affine_map.inhabited (R : Type u_1) {V : Type u_2} {W : Type u_3} (P : Type u_4) {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] :
Equations
def continuous_affine_map.comp {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] {W₂ : Type u_6} {Q₂ : Type u_7} [add_comm_group W₂] [ W₂] [ Q₂] (f : Q →A[R] Q₂) (g : P →A[R] Q) :
P →A[R] Q₂

The composition of morphisms is a morphism.

Equations
@[simp, norm_cast]
theorem continuous_affine_map.coe_comp {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] {W₂ : Type u_6} {Q₂ : Type u_7} [add_comm_group W₂] [ W₂] [ Q₂] (f : Q →A[R] Q₂) (g : P →A[R] Q) :
(f.comp g) = f g
theorem continuous_affine_map.comp_apply {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} {Q : Type u_5} [ring R] [ V] [ P] [ W] [ Q] {W₂ : Type u_6} {Q₂ : Type u_7} [add_comm_group W₂] [ W₂] [ Q₂] (f : Q →A[R] Q₂) (g : P →A[R] Q) (x : P) :
(f.comp g) x = f (g x)
@[protected, instance]
def continuous_affine_map.has_zero {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W]  :
Equations
@[simp, norm_cast]
theorem continuous_affine_map.coe_zero {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W]  :
0 = 0
theorem continuous_affine_map.zero_apply {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] (x : P) :
0 x = 0
@[protected, instance]
def continuous_affine_map.has_smul {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] {S : Type u_8} [monoid S] [ W] [ W]  :
(P →A[R] W)
Equations
@[simp, norm_cast]
theorem continuous_affine_map.coe_smul {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] {S : Type u_8} [monoid S] [ W] [ W] (t : S) (f : P →A[R] W) :
(t f) = t f
theorem continuous_affine_map.smul_apply {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] {S : Type u_8} [monoid S] [ W] [ W] (t : S) (f : P →A[R] W) (x : P) :
(t f) x = t f x
@[protected, instance]
def continuous_affine_map.is_central_scalar {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] {S : Type u_8} [monoid S] [ W] [ W] [ W] :
(P →A[R] W)
@[protected, instance]
def continuous_affine_map.mul_action {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] {S : Type u_8} [monoid S] [ W] [ W]  :
(P →A[R] W)
Equations
@[protected, instance]
def continuous_affine_map.has_add {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W]  :
Equations
@[simp, norm_cast]
theorem continuous_affine_map.coe_add {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] (f g : P →A[R] W) :
(f + g) = f + g
theorem continuous_affine_map.add_apply {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] (f g : P →A[R] W) (x : P) :
(f + g) x = f x + g x
@[protected, instance]
def continuous_affine_map.has_sub {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W]  :
Equations
@[simp, norm_cast]
theorem continuous_affine_map.coe_sub {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] (f g : P →A[R] W) :
(f - g) = f - g
theorem continuous_affine_map.sub_apply {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] (f g : P →A[R] W) (x : P) :
(f - g) x = f x - g x
@[protected, instance]
def continuous_affine_map.has_neg {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W]  :
Equations
@[simp, norm_cast]
theorem continuous_affine_map.coe_neg {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] (f : P →A[R] W) :
theorem continuous_affine_map.neg_apply {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] (f : P →A[R] W) (x : P) :
(-f) x = -f x
@[protected, instance]
def continuous_affine_map.add_comm_group {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W]  :
Equations
@[protected, instance]
def continuous_affine_map.distrib_mul_action {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] {S : Type u_8} [monoid S] [ W] [ W]  :
(P →A[R] W)
Equations
@[protected, instance]
def continuous_affine_map.module {R : Type u_1} {V : Type u_2} {W : Type u_3} {P : Type u_4} [ring R] [ V] [ P] [ W] {S : Type u_8} [semiring S] [ W] [ W]  :
(P →A[R] W)
Equations
def continuous_linear_map.to_continuous_affine_map {R : Type u_1} {V : Type u_2} {W : Type u_3} [ring R] [ V] [ W] (f : V →L[R] W) :
V →A[R] W

A continuous linear map can be regarded as a continuous affine map.

Equations
@[simp]
theorem continuous_linear_map.coe_to_continuous_affine_map {R : Type u_1} {V : Type u_2} {W : Type u_3} [ring R] [ V] [ W] (f : V →L[R] W) :
@[simp]
theorem continuous_linear_map.to_continuous_affine_map_map_zero {R : Type u_1} {V : Type u_2} {W : Type u_3} [ring R] [ V] [ W] (f : V →L[R] W) :
= 0