Module mathcomp.analysis.homotopy_theory.continuous_path
From HB Require Import structures.From mathcomp Require Import boot order generic_quotient algebra finmap.
From mathcomp Require Import boolp classical_sets functions cardinality fsbigop.
From mathcomp Require Import reals topology wedge_sigT.
Unset SsrOldRewriteGoalsOrder.
Set Implicit Arguments.
Unset Strict Implicit.
Unset Printing Implicit Defensive.
Reserved Notation "{ 'path' i 'from' x 'to' y }" (
at level 0, i at level 69, x at level 69, y at level 69,
only parsing,
format "{ 'path' i 'from' x 'to' y }").
Reserved Notation "{ 'path' i 'from' x 'to' y 'in' T }" (
at level 0, i at level 69, x at level 69, y at level 69, T at level 69,
format "{ 'path' i 'from' x 'to' y 'in' T }").
Local Open Scope classical_set_scope.
Local Open Scope ring_scope.
Local Open Scope quotient_scope.
.
Source code
Source code
Source code
Source code
(f : i -> T) & isContinuous i T f := {
path_zero : f zero = x;
path_one : f one = y;
}.
Source code
Source code
Source code
.
Source code
Source code
Source code
Source code
(x y : T) := { of isPath i T x y f & isContinuous i T f}.
Notation
Source code
Notation
Source code
(@pathType i T x y) : type_scope.
.
Source code
Source code
Source code
{T : topologicalType} (x y : T) := gen_eqMixin {path i from x to y}.
.
Source code
Source code
Source code
{T : topologicalType} (x y : T) := gen_choiceMixin {path i from x to y}.
.
Source code
Source code
Source code
{T : topologicalType} (x y : T) :=
Topological.copy {path i from x to y}
(@initial_topology {path i from x to y} {compact-open, i -> T} id).
Section path_eq.
Context { : topologicalType} { : bpTopologicalType} ( : T).
Lemma
Source code
Proof.
move: a b => [/= f [[+ +]]] [/= g [[+ +]]] fgE.
move/funext : fgE => -> /= a1 [b1 c1] a2 [b2 c2]; congr (_ _).
rewrite (Prop_irrelevance a1 a2) (Prop_irrelevance b1 b2).
by rewrite (Prop_irrelevance c1 c2).
Qed.
End path_eq.
Section cst_path.
Context { : topologicalType} { : bpTopologicalType} (: T).
.
Source code
Source code
Source code
End cst_path.
Section path_domain_path.
Context { : bpTopologicalType}.
.
Source code
Source code
Source code
End path_domain_path.
Section path_compose.
Context { : topologicalType} (: bpTopologicalType) ( : T).
Context ( : continuousType T U) ( : {path i from x to y}).
Local Lemma
Source code
Proof.
Local Lemma
Source code
Proof.
.
Source code
Source code
Source code
fp_zero fp_one.
End path_compose.
Section path_reparameterize.
Context { : topologicalType} ( : bpTopologicalType) ( : T).
Context ( : {path i from x to y}) (
Source code
Definition
wedge_fun : forall {I : choiceType} [X : I -> topologicalType] [p0 : forall i : I, X i] {Z : Type}, (forall i : I, X i -> Z) -> wedge (X:=X) p0 -> Z wedge_fun is not universe polymorphic Arguments wedge_fun {I} [X p0]%_function_scope {Z}%_type_scope f%_function_scope _ wedge_fun is transparent Expands to: Constant mathcomp.analysis.homotopy_theory.wedge_sigT.wedge_fun Declared in library mathcomp.analysis.homotopy_theory.wedge_sigT, line 205, characters 11-20
Source code
Let
Source code
Proof.
Let
Source code
Proof.
Let
Source code
Proof.
.
Source code
Source code
Source code
.
Source code
Source code
Source code
fphi_zero fphi_one.
End path_reparameterize.
Section mk_path.
Context { : bpTopologicalType} { : topologicalType}.
Context { : T} ( : i -> T) (
Source code
Context ( : f zero = x) ( : f one = y).
Definition
wedge_prod : forall {I : choiceType} [X : I -> topologicalType] [p0 : forall i : I, X i], wedge (X:=X) p0 -> prod_topology (fun x : I => X x) wedge_prod is not universe polymorphic Arguments wedge_prod {I} [X p0]%_function_scope _ i wedge_prod is transparent Expands to: Constant mathcomp.analysis.homotopy_theory.wedge_sigT.wedge_prod Declared in library mathcomp.analysis.homotopy_theory.wedge_sigT, line 238, characters 11-21
Source code
.
Source code
Source code
Source code
.
Source code
Source code
Source code
End mk_path.
Definition
pwedge : forall {I : pointedType}, (I -> ptopologicalType) -> Type pwedge is not universe polymorphic Arguments pwedge {I} X%_function_scope pwedge is transparent Expands to: Constant mathcomp.analysis.homotopy_theory.wedge_sigT.pwedge Declared in library mathcomp.analysis.homotopy_theory.wedge_sigT, line 383, characters 11-17
Source code
( : i -> T) ( : j -> T) : bpwedge i j -> T :=
wedge_fun (fun => if return (if b then i else j) -> T then f else g).
Lemma
Source code
( : i -> T) ( : j -> T) :
continuous f ->
continuous g ->
f one = g zero ->
continuous (chain_path f g).
Proof.
Section chain_path.
Context { : topologicalType} { : bpTopologicalType} ( : T).
Context ( : {path i from x to y}) ( : {path j from y to z}).
Let
Source code
Proof.
by case => //= [][] //=; rewrite ?path_one ?path_zero.
Qed.
Let
Source code
Proof.
by case => //= [][] //=; rewrite ?path_one ?path_zero.
Qed.
Let
Source code
Proof.
.
Source code
Source code
Source code
chain_path_cts.
.
Source code
Source code
Source code
chain_path_zero chain_path_one.
End chain_path.