src/HOL/Analysis/Further_Topology.thy
changeset 71745 ad84f8a712b4
parent 71633 07bec530f02e
child 71771 7c0de1eb6075
equal deleted inserted replaced
71744:63eb6b3ebcfc 71745:ad84f8a712b4
   237   have sub0T: "(\<lambda>y. y /\<^sub>R norm y) ` (T - {0}) \<subseteq> sphere 0 1 \<inter> T"
   237   have sub0T: "(\<lambda>y. y /\<^sub>R norm y) ` (T - {0}) \<subseteq> sphere 0 1 \<inter> T"
   238     by (fastforce simp: assms(2) subspace_mul)
   238     by (fastforce simp: assms(2) subspace_mul)
   239   obtain c where homhc: "homotopic_with_canon (\<lambda>z. True) (sphere 0 1 \<inter> S) (sphere 0 1 \<inter> T) h (\<lambda>x. c)"
   239   obtain c where homhc: "homotopic_with_canon (\<lambda>z. True) (sphere 0 1 \<inter> S) (sphere 0 1 \<inter> T) h (\<lambda>x. c)"
   240     apply (rule_tac c="-d" in that)
   240     apply (rule_tac c="-d" in that)
   241     apply (rule homotopic_with_eq)
   241     apply (rule homotopic_with_eq)
   242        apply (rule homotopic_compose_continuous_left [OF hom_hd conT0 sub0T])
   242        apply (rule homotopic_with_compose_continuous_left [OF hom_hd conT0 sub0T])
   243     using d apply (auto simp: h_def)
   243     using d apply (auto simp: h_def)
   244     done
   244     done
   245   show ?thesis
   245   show ?thesis
   246     apply (rule_tac x=c in exI)
   246     apply (rule_tac x=c in exI)
   247     apply (rule homotopic_with_trans [OF _ homhc])
   247     apply (rule homotopic_with_trans [OF _ homhc])
   248     apply (rule homotopic_with_eq)
   248     apply (rule homotopic_with_eq)
   249        apply (rule homotopic_compose_continuous_left [OF homfg conT0 sub0T])
   249        apply (rule homotopic_with_compose_continuous_left [OF homfg conT0 sub0T])
   250       apply (auto simp: h_def)
   250       apply (auto simp: h_def)
   251     done
   251     done
   252 qed
   252 qed
   253 
   253 
   254 
   254 
  4219       by (meson continuous_on_compose [OF contf] conth continuous_on_subset fim)
  4219       by (meson continuous_on_compose [OF contf] conth continuous_on_subset fim)
  4220     show "(h \<circ> f) ` sphere a r \<subseteq> sphere 0 1"
  4220     show "(h \<circ> f) ` sphere a r \<subseteq> sphere 0 1"
  4221       using fim him by force
  4221       using fim him by force
  4222   qed auto
  4222   qed auto
  4223   then have "homotopic_with_canon (\<lambda>f. True) (sphere a r) (sphere b s) (k \<circ> (h \<circ> f)) (k \<circ> (\<lambda>x. c))"
  4223   then have "homotopic_with_canon (\<lambda>f. True) (sphere a r) (sphere b s) (k \<circ> (h \<circ> f)) (k \<circ> (\<lambda>x. c))"
  4224     by (rule homotopic_compose_continuous_left [OF _ contk kim])
  4224     by (rule homotopic_with_compose_continuous_left [OF _ contk kim])
  4225   then have "homotopic_with_canon (\<lambda>z. True) (sphere a r) (sphere b s) f (\<lambda>x. k c)"
  4225   then have "homotopic_with_canon (\<lambda>z. True) (sphere a r) (sphere b s) f (\<lambda>x. k c)"
  4226     apply (rule homotopic_with_eq, auto)
  4226     apply (rule homotopic_with_eq, auto)
  4227     by (metis fim hk homeomorphism_def image_subset_iff mem_sphere)
  4227     by (metis fim hk homeomorphism_def image_subset_iff mem_sphere)
  4228   then show ?thesis
  4228   then show ?thesis
  4229     by (metis that)
  4229     by (metis that)