src/HOL/Analysis/Conformal_Mappings.thy
changeset 68310 d0a7ddf5450e
parent 68255 009f783d1bac
child 68359 8cd3d0305269
equal deleted inserted replaced
68303:ce7855c7f5f4 68310:d0a7ddf5450e
  1574   qed
  1574   qed
  1575   have "continuous_on (S \<inter> {x. d \<bullet> x \<le> k}) f" using contf
  1575   have "continuous_on (S \<inter> {x. d \<bullet> x \<le> k}) f" using contf
  1576     by (simp add: continuous_on_subset)
  1576     by (simp add: continuous_on_subset)
  1577   then have "(f has_contour_integral 0)
  1577   then have "(f has_contour_integral 0)
  1578          (linepath a b +++ linepath b a' +++ linepath a' b' +++ linepath b' a)"
  1578          (linepath a b +++ linepath b a' +++ linepath a' b' +++ linepath b' a)"
  1579     apply (rule Cauchy_theorem_convex [where k = "{}"])
  1579     apply (rule Cauchy_theorem_convex [where K = "{}"])
  1580     apply (simp_all add: path_image_join convex_Int convex_halfspace_le \<open>convex S\<close> fcd_le ab_le
  1580     apply (simp_all add: path_image_join convex_Int convex_halfspace_le \<open>convex S\<close> fcd_le ab_le
  1581                 closed_segment_subset abc a'b' ba')
  1581                 closed_segment_subset abc a'b' ba')
  1582     by (metis \<open>d \<bullet> a' = k\<close> \<open>d \<bullet> b' = k\<close> convex_contains_segment convex_halfspace_le lek(1) mem_Collect_eq order_refl)
  1582     by (metis \<open>d \<bullet> a' = k\<close> \<open>d \<bullet> b' = k\<close> convex_contains_segment convex_halfspace_le lek(1) mem_Collect_eq order_refl)
  1583   then have 4: "contour_integral (linepath a b) f +
  1583   then have 4: "contour_integral (linepath a b) f +
  1584                 contour_integral (linepath b a') f +
  1584                 contour_integral (linepath b a') f +
  1599       by (metis (no_types) \<open>d \<noteq> 0\<close> at_within_interior interior_Int interior_halfspace_ge interior_interior)
  1599       by (metis (no_types) \<open>d \<noteq> 0\<close> at_within_interior interior_Int interior_halfspace_ge interior_interior)
  1600   qed
  1600   qed
  1601   have "continuous_on (S \<inter> {x. k \<le> d \<bullet> x}) f" using contf
  1601   have "continuous_on (S \<inter> {x. k \<le> d \<bullet> x}) f" using contf
  1602     by (simp add: continuous_on_subset)
  1602     by (simp add: continuous_on_subset)
  1603   then have "(f has_contour_integral 0) (linepath a' c +++ linepath c b' +++ linepath b' a')"
  1603   then have "(f has_contour_integral 0) (linepath a' c +++ linepath c b' +++ linepath b' a')"
  1604     apply (rule Cauchy_theorem_convex [where k = "{}"])
  1604     apply (rule Cauchy_theorem_convex [where K = "{}"])
  1605     apply (simp_all add: path_image_join convex_Int convex_halfspace_ge \<open>convex S\<close>
  1605     apply (simp_all add: path_image_join convex_Int convex_halfspace_ge \<open>convex S\<close>
  1606                       fcd_ge closed_segment_subset abc a'b' a'c)
  1606                       fcd_ge closed_segment_subset abc a'b' a'c)
  1607     by (metis \<open>d \<bullet> a' = k\<close> b'c closed_segment_commute convex_contains_segment
  1607     by (metis \<open>d \<bullet> a' = k\<close> b'c closed_segment_commute convex_contains_segment
  1608               convex_halfspace_ge ends_in_segment(2) mem_Collect_eq order_refl)
  1608               convex_halfspace_ge ends_in_segment(2) mem_Collect_eq order_refl)
  1609   then have 5: "contour_integral (linepath a' c) f + contour_integral (linepath c b') f + contour_integral (linepath b' a') f = 0"
  1609   then have 5: "contour_integral (linepath a' c) f + contour_integral (linepath c b') f + contour_integral (linepath b' a') f = 0"