src/HOL/Multivariate_Analysis/Brouwer_Fixpoint.thy
changeset 61808 fc1556774cfe
parent 61609 77b453bd616f
child 61945 1135b8de26c3
equal deleted inserted replaced
61807:965769fe2b63 61808:fc1556774cfe
   140 subsection \<open>The key "counting" observation, somewhat abstracted.\<close>
   140 subsection \<open>The key "counting" observation, somewhat abstracted.\<close>
   141 
   141 
   142 lemma kuhn_counting_lemma:
   142 lemma kuhn_counting_lemma:
   143   fixes bnd compo compo' face S F
   143   fixes bnd compo compo' face S F
   144   defines "nF s == card {f\<in>F. face f s \<and> compo' f}"
   144   defines "nF s == card {f\<in>F. face f s \<and> compo' f}"
   145   assumes [simp, intro]: "finite F" -- "faces" and [simp, intro]: "finite S" -- "simplices"
   145   assumes [simp, intro]: "finite F" \<comment> "faces" and [simp, intro]: "finite S" \<comment> "simplices"
   146     and "\<And>f. f \<in> F \<Longrightarrow> bnd f \<Longrightarrow> card {s\<in>S. face f s} = 1"
   146     and "\<And>f. f \<in> F \<Longrightarrow> bnd f \<Longrightarrow> card {s\<in>S. face f s} = 1"
   147     and "\<And>f. f \<in> F \<Longrightarrow> \<not> bnd f \<Longrightarrow> card {s\<in>S. face f s} = 2"
   147     and "\<And>f. f \<in> F \<Longrightarrow> \<not> bnd f \<Longrightarrow> card {s\<in>S. face f s} = 2"
   148     and "\<And>s. s \<in> S \<Longrightarrow> compo s \<Longrightarrow> nF s = 1"
   148     and "\<And>s. s \<in> S \<Longrightarrow> compo s \<Longrightarrow> nF s = 1"
   149     and "\<And>s. s \<in> S \<Longrightarrow> \<not> compo s \<Longrightarrow> nF s = 0 \<or> nF s = 2"
   149     and "\<And>s. s \<in> S \<Longrightarrow> \<not> compo s \<Longrightarrow> nF s = 0 \<or> nF s = 2"
   150     and "odd (card {f\<in>F. compo' f \<and> bnd f})"
   150     and "odd (card {f\<in>F. compo' f \<and> bnd f})"
  1930   using brouwer_weak[OF compact_cball convex_cball, of a e f]
  1930   using brouwer_weak[OF compact_cball convex_cball, of a e f]
  1931   unfolding interior_cball ball_eq_empty
  1931   unfolding interior_cball ball_eq_empty
  1932   using assms by auto
  1932   using assms by auto
  1933 
  1933 
  1934 text \<open>Still more general form; could derive this directly without using the
  1934 text \<open>Still more general form; could derive this directly without using the
  1935   rather involved @{text "HOMEOMORPHIC_CONVEX_COMPACT"} theorem, just using
  1935   rather involved \<open>HOMEOMORPHIC_CONVEX_COMPACT\<close> theorem, just using
  1936   a scaling and translation to put the set inside the unit cube.\<close>
  1936   a scaling and translation to put the set inside the unit cube.\<close>
  1937 
  1937 
  1938 lemma brouwer:
  1938 lemma brouwer:
  1939   fixes f :: "'a::euclidean_space \<Rightarrow> 'a"
  1939   fixes f :: "'a::euclidean_space \<Rightarrow> 'a"
  1940   assumes "compact s"
  1940   assumes "compact s"