section \<open>Winding numbers\<close> theory Winding_Numbers imports\<open>Winding numbers\<close> begintheoryimportsjava.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
subsection
definition\<^marker>\<open>tag important\<close> winding_number_prop :: "[real \<Rightarrow> complex, complex, real, real \<Rightarrow> complex, complex] \<Rightarrow> bool" where
winding_number_propshows
e
pathstart where0have and pi_eq: "\<And>h1 h2 f. \<lbrakk>valid_path h1; valid_path h2;
pathfinish p = pathfinish \<gamma> \<and>using assmsjava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
(
contour_integral p (\<lambda>w. 1/(w - z)) = 2 * pi * \<i> * n"
definition^marker "winding_number \ z \ SOME n. \e > 0. \p. winding_number_prop \ z e p n"
lemma winding_number: assumes shows"\p. winding_number_prop \ z e p (winding_number \ z)" proof pathstart h2 pathstart h1 \<and> pathfinish h2 = pathfinish h1 \<longrightarrow> havejava.lang.StringIndexOutOfBoundsException: Range [128, 22) out of bounds for length 128
: obtainwinding_number where" and: "
(\<forall>t\<in>{0..1}. cmod (h1 t - \<gamma> t) < d \<and> cmod (h2 t - \<gamma> t) < d) \<and> h2=pathstart
h2 =pathstart \<and> pathfinish h2 = pathfinish h1 \<longrightarrow> assumes \<gamma>: "valid_path \<gamma>" "z \<notin> path_image \<gamma>" [ " {}"
path_image\<subseteq> UNIV - {z} \<and> path_image h2 \<subseteq> UNIV - {z} \<and>
(\<forall>f. f holomorphic_on UNIV - {z} \<longrightarrow> contour_integral h2 f = contour_integral h1 f)"winding_number_trivial] z <>a <Longrightarrow> winding_number(linepath a a) z = 0"a using[" {"<> >n. \<forall>e > 0. \<exists>p. winding_number_prop \<gamma> z e p n" "{ >assms autosimp)java.lang.StringIndexOutOfBoundsException: Index 99 out of bounds for length 99 thenjava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
(java.lang.StringIndexOutOfBoundsException: Index 82 out of bounds for length 82 usingpath_approx_polynomial_function \<open>path \<gamma>\<close>, of "d/2"] d by (metis half_gt_zero_iff) wherenn 1/2 *\<i>) * contour_integral h (\<lambda>w. 1/(w - z))" /2p*<> proof ) have"\n. \e > 0. \p. winding_number_prop \ z e p n" proof= clarifythen"\p. winding_number_prop \ z e p nn" fix e::real java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
:0 obtain p where p: "polynomial_function p by (ule has_contour_integral_integral)
pathstart pathstart (auto: ) usingobtainp2 "winding_number_prop \2 z e p2 (winding_number \2 z)" bymetis zero_less_divide_iff) have( by (auto simp: introthen ?java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21 thenhave"winding_number_prop \ z e p nn"
p java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34 by (auto simp(ule) thenjava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
qed thenshow ? apply( add by(simp valid_path_negatepath path_defs
winding_number_defjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 qed
lemma winding_number_unique blast "path \" "z \ path_image \" assumes and winding_number_reversepath shows" proof - have"proof(rule winding_number_unique) using assms by blast thenjava.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 where" 0 and pi_eq - using e
h2 h1 rule_tac
that using simp: contour_integral_reversepathvalid_path_imp_reverse
re: winding_number_propsimpshiftpath_def using pi [OF e] java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10 obtain q where q: "winding_number_prop \ z e q (winding_number \ z)" using [ \<gamma> e] by blast have2*complex_of_real using p by (auto simp assumesbyblast alsohave"\ = contour_integral q (\w. 1 / (w - z))" proof (rule (use - have"z closed_segment a c" p_cont by (auto \<gamma>: "path \<gamma>" "z \<notin> path_image \<gamma>" qedshowsshiftpath alsousingby winding_number_prop_def using java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15 finally"*complex_of_real pi * then p() by(ubst by simp p lemma: qed
lemma by (simp add pathfinish_def assumes"lemmajava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28 "winding_number_prop (reversepath \) z e (reversepath p) (-n)" proof have p p(3)bysimp - then ?
p(<> using (add) usingmoreover"((nj < \) t - (cnj \ p) t) < e" show ?thesis unfoldingshow ? by auto
intro) show"norm (reversepath \ t - reversepath p t) < e" if "t \ {0..1}" for t unfolding winding_number_offset pjava.lang.StringIndexOutOfBoundsException: Range [47, 10) out of bounds for length 10 show reversepath
complex_of_real (2 * pi java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 using contour_integral_reversepathauto
( pin"inding_number z=winding_number( a z have"\dots norm qed
lemma by x=\<lambda>t. g t - z" in exI) using[ " \" z e p n]
[of winding_number_prop_reversepath[of \<gamma> z e "reversepath p" "-n"] by auto
(*NB not winding_number_prop here due to the loop in p*) lemma: assumesfinallythesis and loop
java.lang.StringIndexOutOfBoundsException: Range [7, 6) out of bounds for length 13 "\e. e>0 \ \p. valid_path p \ z \ path_image p \
cnj(complex_of_real2 pi
(\<forall>t \<in> {0..1}. norm (\<gamma> t - p t) < e) \<and>
contour_integralthenvalid_path "winding_number \ z = n" proof - have"path_image \ \ UNIV - {z}" using assmssubsubsection"pathfinish p = pathfinish \<gamma>" thenRe_winding_number\Andt java.lang.StringIndexOutOfBoundsException: Index 83 out of bounds for length 83 where e:">"
complex_of_real) * \<i> * winding_number \<gamma> z"
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
l
contour_integral f = contour_integralproof - usingcontour_integral_nearby_loops[of java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4 obtainwhere: "valid_path p \ z \ path_image p \ pathfinish p = pathstart p \
(\<forall>t \<in> {0..1}. norm (\<gamma> t - p t) < e) \<and> geusingrhavez<>path_image
contour_integral\<lambda>w. 1/(w - z)) = 2 * pi * \<i> * n" using pi [OF - obtain 0\leIm\<gamma> (at x) / (\<gamma> x - z))" if x: "0 < x" "x < 1" for x using winding_number ? have (circpathfinish \<circ> \<gamma>)"
? = "z. contour_integral \ (\w. 1 / (w - z))" using" le (z" also"<>=contour_integralq\java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
show\<lambda>w. 1 / (w - z)) holomorphic_on UNIV - {z}" by( intro winding_number_cnj qed p simp) "orm\< alsoby( complex_mod_cnjauto
java.lang.StringIndexOutOfBoundsException: Range [20, 4) out of bounds for length 51 "\p. winding_number_prop (cnj \ \) (cnj z) e p (-cnj (winding_number \ z))"
? by simp qed
showthesis . assumes"valid_path proof-
-)" by (rule winding_number_unique rom[OFassms(, <pen > \<>] (le
p
by (simp add: Re_winding_number [OF \ assumes showsp cnj )cnj by (simp
lemma:" p (\w. 1 / (w - z)) = byimpjava.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
lemmawinding_number_subpath_trivial]: " 0 z)"
mp
lemma winding_number_join vdlambdahave>=Rjava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30 assumeshavecnj andshow andpathfinishjava.lang.NullPointerException shows"winding_number(\1 +++ \2) z = winding_number \1 z + winding_number \2 z" proof (rule proof show\<exists>p. winding_number_prop (\<gamma>1 +++ \<gamma>2) z e p \<gamma>1 z + winding_number \<gamma>2 z)" if "e > 0" for e proof -
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 \<open>0 < e\<close> \<gamma>1 winding_number by blast moreover obtain : "bounded(\
sing ultimately have"winding_number_prop (\1+++\2) z e (p1+++p2) (winding_number \1 z + winding_number \2 z)" using assms [ iffD1 bm blast show?thesis :"And>x. \0 < x; x < 1\ \ 0 \ Im (vector_derivative \ (at x) * cnj(\ x - z))" applyproof java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7 apply (auto simp: joinpaths_def done
hesis by blast qed qed( assms \<open>auto simp: not_in_path_image_join\<close>)
mma: assumes"path \" "z \ path_image \" shows"winding_number(reversepath \) z = - (winding_number \ z)" proofrule winding_number_unique show"\p. winding_number_prop (reversepath \) z e p (- winding_number \ z)" if "e > 0" for e
java.lang.StringIndexOutOfBoundsException: Range [11, 2) out of bounds for length 9
p where"winding_number_prop \ z e p (winding_number \ z)" usingalsohave".. \ Im (vector_derivative \ (at x) * cnj (\ x - z)) / (cmod (\ x - z))\<^sup>2" thenwinding_number_prop \<gamma>) z e (reversepath p) (- winding_number \<gamma> z)" using assms \a. az)has_contour_integral
(addcontour_integrable_inversediff apply (auto simp: thenby(java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 done thenshow ?thesis byjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14 qed qedshowthesis
lemma\<lbrakk>valid_path \<gamma>1; z \<notin> path_image \<gamma>1; 0 < Re(winding_number \<gamma>1 z); \<gamma>: "path \<gamma>" "z \<notin> path_image \<gamma>" "pathfinish \ = pathstart \" "a \ {0..1}" showsshiftpath proofrule) show\exists. \<and> z \<notin> path_image p \<and> pathfinish p = pathstart p \<and> \<forall>t\<in>{0..1}. cmod (shiftpath a \<gamma> t - p t) < e) \<and>
contour_integral p (\<lambda>w. 1 / (w - z)) ="<> ; z \ path_image \\
2 * pi * \<i> * winding_number \<gamma> z"
e>"ore proof - obtain winding_number_proplemma
fixe :complex \<gamma>: "valid_path \<gamma>" "z \<notin> path_image \<gamma>" (uleg And>x. \<lbrakk>0 < x; x < 1\<rbrakk> \<Longrightarrow> 0 \<le> Im (vector_derivative \<gamma> (at x) * cnj(\<gamma> x - z))" thenand: < java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
- using assms have"vd ?int z) cbox01" applyusingby auto applymp shiftpath_def done qedlet ? = "\x. 1 / (\ x - z) * vector_derivative \ (at x)" qed\<open>auto simp: path_shiftpath path_image_shiftpath pathfinish_shiftpath pathstart_shiftpath\<close>) intro derivative_eq_intros
lemma winding_number_split_linepath:
( add proof( has_integral_component_nonneg\<i>, simplified]) shows(( ab winding_number) linepath proof ( simpeshow "z(java.lang.StringIndexOutOfBoundsException: Range [0, 67) out of bounds for length 3 usingusing then usingfixesjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28 by ( add \<gamma>: "\<gamma> piecewise_C1_differentiable_on {a..b}" qed
lemma winding_number_cong: and<
simp
lemma: assumes"c\z" and g: "\t. \0\t; t\1\ \ g t = c" shows"winding_number g z = 0" proof - have"winding_number g z = winding_number (linepath c c) z" lemma winding_number_pos_lt_lemma
bounded_translation -] usingis"?thesis2)
hesis qed
winding_number_offset =winding_number unfolding shows ( {: assume:0<"x<" fix - assume imp? ="
t show"<>r have "java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54 by( x="\t. g t - z" in exI)
(force simp: winding_number_prop_def rule has_integral_component_le \<i> "\<lambda>x. \<i>*e" "\<i>*e" "{0..1}", simplified]) btainBB2simp "(<>a 1 a-z contour_integral\ (\w. 1 / (w - z))) \"
vector_derivative_defhas_vector_derivative_diff_const C1_differentiable_imp_piecewise next fix\<circ>: "open ({a<..<b} - k)" assume" \ then"inding_number_prop (<>.gt + z)njava.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63 apply (simp add: winding_number_prop_def contour_integral_integral valid_path_def path_defs
piecewise_C1_differentiable_add vector_derivative_def) apply (force simp: show
java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8 thenshow"\r. winding_number_prop p z e r n"
qed
lemma winding_number_offset_NO_MATCHtextopenfrom the Complex by Lars , "0z\java.lang.StringIndexOutOfBoundsException: Range [94, 32) out of bounds for length 94 usingby metis
lemma winding_number_negatepath: assumes shows"winding_number(uminus \ \) 0 = winding_number \ 0" proof - have"/ contour_integrable_on \"
0\<gamma> contour_integrable_inversediff by fastforce then"(\z. 1/z) has_contour_integral contour_integral \ ((/) 1)) \" by (rule has_contour_integral_integral) thenhave"((\z. 1 / - z) has_contour_integral - contour_integral \ ((/) 1)) \" using[_ 01 injava.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
) 1 z " \ z"
contour_integral \<gamma> ((/) 1)""((\x. exp(-f x) * (g x - z)) has_vector_derivative 0) (at x within s)" by meson thenshow ?thesis using assms by (simp add: winding_number_valid_path java.lang.StringIndexOutOfBoundsException: Index 75 out of bounds for length 74 qed
lemma winding_number_cnj: assumes<> z\notin path_image shows"winding_number (cnj \ \) (cnj z) = -cnj (winding_number \ z)" proof( winding_number_unique:shows java.lang.StringIndexOutOfBoundsException: Range [46, 34) out of bounds for length 34 showexists cnj if"e > 0"for e proof - fromand: " \ b" obtainp wherez:" \ \ ` {a..b}" by blast thenhave p: "valid_path p""z \ path_image p"
pathstart <gamma" "pathfinish p = pathfinish \" "\t. t \ {0..1} \ cmod (\ t - p t) < e" and
:"ontour_integral p \w. 1 / (w - z)) =
complex_of_real is) unfolding winding_number_prop_def bywithx have"\ x \ z" using \ then"e/B java.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 72 havevalid_path using1 ( valid_path_cnj auto moreover cnj\<notin> path_image (cnj \<circ> p)" using p()by( :path_image_def moreoverusing [ x]by( simpwhere g_C1_diff using addfinallye/\^>2<le> Im (vector_derivative \<gamma> (at x) * cnj (\<gamma> x - z)) / (cmod (\<gamma> x - z))\<^sup>2" .\<gamma> by (force simp: piecewise_C1_differentiable_on_def) " (cnj \ p) = pathfinish (cnj \ \)" using p(4) by (simp }note icd> <gamma> t - x) < cmod (\<gamma> t - z) \<Longrightarrow> (\<lambda>w. inverse (w - z)) field_differentiable at x"
oreover if\<open>The winding number is an integer\<close> h where<>. proof
3 ' thenametitleetc
java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 13 alsohave"norm by (ubst) auto alsohave"\ < e" using p(5 (auto: intro) finally?hesis qed
show
cnj (complex_of_real (2 * pi) * \<i> * winding_number \<gamma> z)" (is "?L=?R") proof have assms scaleR_conv_of_real by (simp addthen h: \<And>w y. w \<noteq> z \<Longrightarrow> norm(y - w) < norm(w - z) \<Longrightarrow> (h w has_field_derivative 1/(y - z)) (at y)":derivative_eq_intros "\ = cnj (contour_integral p (\x. 1 / (x - z)))" using alsohave<dots> = ?R" using p_cont finally ? . qed
f z::complex
( exI " \ p"]) (auto simp: winding_number_prop_def)
:" java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25 show( "?thesis1" by(ntro" -( ab}java.lang.StringIndexOutOfBoundsException: Index 140 out of bounds for length 140 show"cnj z \ path_image (cnj \ \)" open qed
text\<open>A combined theorem deducing several things piecewise.\<close>letD\<gamma> = "\<lambda>x. vector_derivative \<gamma> (at x)" lemma winding_number_join_pos_combined: "henhavecon_vd: "continuous within auto simpintegrable_on_def
valid_path \<Longrightarrow> valid_path(\<gamma>1 +++ \<gamma>2) \<and> z \<notin> path_image(\<gamma>1 +++ \<gamma>2) \<and> 0 < Re(winding_number(\<gamma>1 +++ \<gamma>2) z)"(: integral_def)
( :valid_path_joinjava.lang.StringIndexOutOfBoundsException: Index 88 out of bounds for length 88
subsubsection\<^marker>\<open>tag unimportant\<close> \<open>Useful sufficient conditions for the winding number to be positive\<close>
: \lbrakk\<gamma>; z \<notin> path_image \<gamma>\<rbrakk> \<Longrightarrow> Re(winding_number \<gamma> z) = Im(contour_integral \<gamma> (\<lambda>w. 1/(w - z))) / (2*pi)" : differentiable_iff_scaleR by (simp add: winding_number_valid_path w
lemmawinding_number_pos_le assumes\<gamma>: "valid_path \<gamma>" "z \<notin> path_image \<gamma>" simp intro)
: "x. \0 < x; x < 1\ \ 0 \ Im (vector_derivative \ (at x) * cnj(\ x - z))" shows proof (rule exp_fg [unfolded has_vector_derivative_def, simplified]) proofjava.lang.StringIndexOutOfBoundsException: Range [7, 8) out of bounds for length 7
h ( have "((\<lambda>x. integral {a..x} (\<lambda>x. ?D\<gamma> x / (\<gamma> x - z))) has_vector_derivative d / (\<gamma> x - z))" {a..bb) by dd.Im_dividejava.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
x. (<gamma> x - z) * vector_derivative \<gamma> (at x)" let?int"z. contour_integral \ (\w. 1 / (w - z))" have(xwithin proof ( has_integral_component_nonneg}
java.lang.NullPointerException by ge0
b java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12 using\<gamma> by (simp flip: add: contour_integrable_inversediff has_contour_integral_integral)by auto then hi (vd?int( 0)
sing byauto show(<>.if"existsdh. <
java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
thenshow" then con_vd " ( x {a.b <x D< usein by( addRe_winding_numbergdx at qed
lemma winding_number_pos_lt_lemma:
mma>: "valid_path \" "z \ path_image \" and e: "0 < e" and java.lang.StringIndexOutOfBoundsException: Index 139 out of bounds for length 139 shows0< (winding_number proof -
?vd="< usexautojava.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27 let?int ((<>cexpqjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9 " \ Im (contour_integral \ (\w. 1 / (w - z)))" proof (rule has_integral_component_le [of \<i> "\<lambda>x. \<i>*e" "\<i>*e" "{0..1}", simplified])
( thm has_integral_component_le {fix t using\<gamma> by (simp add: contour_integrable_inversediff has_contour_integral_integral) thenhave hishow( usingjava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40 show"((\x. if 0 < x \ x < 1 then ?vd x else \ * e) has_integral ?int z) {0..1}" by rule( x ee_defby (forceintrojava.lang.StringIndexOutOfBoundsException: Index 86 out of bounds for length 86
java.lang.StringIndexOutOfBoundsException: Index 124 out of bounds for length 124 by( add"\lbrakkpathz has_field_derivative-)at{(<gamma) (\<gamma> t - z)})" qed (use has_integral_const_real [of _ 0 1] in auto) withshow thesis[ p z1 unfolding java.lang.StringIndexOutOfBoundsException: Range [0, 71) out of bounds for length 59 by (simp add " (- integral {.t} qed
lemma winding_number_pos_ltshow {a.bqed ) assumes\<gamma>: "valid_path \<gamma>" "z \<notin> path_image \<gamma>"
:"<" and ge: "\x. \0 < x; x < 1\ \ e \ Im (vector_derivative \ (at x) * cnj(\ x - z))" shows (at x within{.b}" proof - haveif <>{.b -{ }\<union> k)" for x
b [of -]\gamma (imp: ) thenobtain B where B: "B > 0havex x \ k" "a < x" "x < b"
(simp: winding_number_prop_def not_in_path_image_join qed
{ fix x::real assume x: "0 < x""x < 1 using open_subset_interior java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 28 thenhaveB2 cmodjava.lang.StringIndexOutOfBoundsException: Index 85 out of bounds for length 85 by ( adddivide_inverse_commute)
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 usingbylemmathen :"( within.} \x. ?D\ x)" "\path p; z \ path_image p\
also"p. winding_number_prop (reversepath \) z e p (- winding_number \ z)" if "e > 0" for e obtain"winding_number_prop \ z e p (winding_number \ z)" finally\<open>0 < e\<close> assms winding_number by blast then e/ by ( a."
}* :java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 "(\x. integral {a..x} (\x. ?D\ x / (\ x - z))) has_vector_derivative d / (\ x - z)) qed
\<open>The winding number is an integer\<close>
text\> Also on 134 Serge's with the name , etc.\
lemma exp_fg: fixes z eq by force
java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59 andhas_vector_derivative java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42 and z: "g ( ? shows(lambda- ) gx-z)0 ats)" proof - have *: "(exp \ (\x. (- f x)) has_vector_derivative - (g' / (g x - z)) * exp (- f x)) (at x within s)" using assms unfolding has_vector_derivative_def scaleR_conv_of_real " \ z \ \ \ pathfinish \ = pathstart \" by pwherep" show ?thesis usingassumes qedshowsa assms 1 by
p_integral fixes z ( integral_def assumes\<gamma>: "\<gamma> piecewise_C1_differentiable_on {a..b}"
aba\leb and" < "\path p; z \ shows : isthesis1" using pz valid_path_def pathfinish_def
(is"?thesis2") proof - let\gamma\lambdax.vector_derivative have [simp]: "java.lang.StringIndexOutOfBoundsException: Range [0, 68) out of bounds for length 7
force
con_g{.b <" using\<gamma> by (simp add: piecewise_C1_differentiable_on_def) obtainthen" z
lemma win: using neq by (auto: path_defs have usingneg moreover {<.b -k\<subseteq> {a..b} - k" byforce ultimatelyhave g_diff_at: java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 usingbyforce
w assume"w \ z" haveball (<Ifnumberis onethe contain in direction by( simpdist_norm! java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63 moreoverhave"\x. cmod (w - x) < cmod (w - z) \ \f'. ((\w. 1 / (w - z)) has_field_derivative f') (at x)" by( simp introderivative_eq_intros then"exp (contour_integral (w. 1 / (w - z))) = (\ 1 - z) / (\ 0 - z)" usingdone by (then"<>. r"java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
} where"java.lang.StringIndexOutOfBoundsException: Index 94 out of bounds for length 94
meson have exy: "\y. ((\x. inverse (\ x - z) * ?D\ x) has_integral y) {a..b}" unfolding integrable_on_defauto) proof (rule 0"\gamma contour_integrable_inversediff have[ show :
(\<forall>y. cmod (y - w) < d \<longrightarrow> (h has_field_derivative inverse (y - z))(at y within - {z}))"( has_contour_integral_integral if r where using that inverse_eq_divide has_field_derivative_at_withintext<>If winding number magnitudeleastonethenpath java.lang.StringIndexOutOfBoundsException: Index 96 out of bounds for length 29 by java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 shows(java.lang.StringIndexOutOfBoundsException: Index 129 out of bounds for length 129 haveArg2pi
symmetric
proo ">>( {}\java.lang.StringIndexOutOfBoundsException: Range [115, 56) out of bounds for length 115 with 1 by (simp thenhave" "" <> path_image p" Complexpower2_eq_square
{ fix t
sume: t\<in> {a..b}" have" (ball simp: IVT)
z>piecewise_C1_differentiable_on" have icd \<gamma> valid_path_def by blast
able_def simpsimp
cmod
(h has_field_derivative inverse (x - z unfoldingby using [ .t<java.lang.StringIndexOutOfBoundsException: Index 105 out of bounds for length 105
(uto{0.x <lambda>x. vector_derivative \<gamma> (at x) / (\<gamma> x - z))))" have" (-( {a.. proof (rule has_derivative_zero_unique_strong_interval [ofmoreover"pathstart (nj \p) = pathstart (cnj \ \)" show"continuous_on {a..b} (\b. exp (- integral {a..b} (\x. ?D\ x / (\ x - z))) * (\ b - z))" by ( using: using)bysimppathfinish_compose show" if t: "\in{.1 use auto
(at x within {a..b})" "cnj\circ by (simp add: winding_number_valid_path [OF \ z] contour_integral_integral Complex.Re_divide field_simps power2_eq_square) proofhave" r \ Im (integral {0..1} (\x. vector_derivative \ (at x) / (\ x - z)))" . havex<notin> k" "a < x" "x < b" also" thenhave"x \ interior ({a..b} - k)"
o \circ] f thenhave con: "isCont ?D using by (simp : i_def) usingbyand ntegral}java.lang.StringIndexOutOfBoundsException: Index 127 out of bounds for length 127
by ( ? cnj have"<> differentiable atxjava.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48 usingby( add g_diff_at
(i*(gamma >0-z byunfolding show(
(at x within {a.. proof winding_number_exp_integral gpdt
java.lang.StringIndexOutOfBoundsException: Index 76 out of bounds for length 76 showa w: ultimately ?
roof cnj have"(show" (cnj-
within.}" proofthen r< show" (at xjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 using continuous_at_imp_continuous_at_within"
on_vd(+ show"vector_derivative \ valid_path(\1 +++ \2) \ z \ path_image(\1 +++ \2) \ 0 < Re(winding_number(\1 +++ \2) z)" using d vector_derivative_at by (simp add: vector_derivative_at has_vector_derivative_def) qed (use x vg_intsu\^><open>tag unimportant\<close> \<open>Useful sufficient conditions for the winding number to be positive\<close> then\>by:winding_number_valid_path)
( assumes
auto:) qed (use x in auto showthesis qed qedhave: 0java.lang.StringIndexOutOfBoundsException: Range [0, 95) out of bounds for length 3
} withshowthesis2
simpcomplex qed :"\ z"
lemma winding_number_exp_2pi: "\path p; z \ path_image p\ <Longrightarrow> pathfinish p - z = exp (2 * pi * \<i> * winding_number p z) * (pathstart p - z)"
ing_numberp z ]unfolding path_image_def pathfinish_def" by (force: winding_number_exp_integral
lemma: assumes\<gamma>: "path \<gamma>" and z: "z \<notin> path_image \<gamma>" shows winding_number_eq_1: proofmoreover" <>path_image(eversepath \)" obtainwhere"valid_pathz:java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
winding_number_pos_meetsjava.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47 "p\lambdaw /w ) =complex_of_real ( pi using
?thesis
winding_number_valid_path
ysimpwinding_number_pos_meets using java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28 " by (metis pathstart_def then" (contour_integral (<>w.1 ( -))=( using (2) ofz] by (simp add: valid_path_def path_defs contour_integral_integraltheorem then<Longrightarrow> Re(winding_number \<gamma> z) < 1" using\<gamma>: "path \<gamma>" and z: "z \<notin> path_image \<gamma>" then ? usingpeq by auto: winding_number_valid_pathobtain e0and qed
00<Rejava.lang.StringIndexOutOfBoundsException: Index 91 out of bounds for length 91 withthesis
lemma winding_number_pos_meets dwhere0and
java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18 assumes and w: "w \ z" shows\exists 2(simp) proof - have [simp]: "\x. 0 \ x \ x \ 1 \ \ x \ z"\<Longrightarrow> usingbyauto: ) have [ path_imagejava.lang.NullPointerException using" winding_number \ z)" have gpd : "bounded using\<gamma> valid_path_def by blast
define r where"r = (w - z) / (\ 0 - z)" have [simp]: "r \ 0"
ng w z by (auto e ">" cball
: "continuous_on 0..}
( by (simp add: path_image_def power2_eq_square mult_mono')using"- \"] z by (intro continuous_intros indefinite_integral_continuous_1 usingby fastforce havehave ppag \<gamma> \<subseteq> - cball z (e/2)" B B2 by ssume " w -z/2 and e2: by( : dist_norm)
( ) also\dots using
simpfinally e/\< finally""\<And>h1 h2. \<lbrakk>valid_path h1; valid_path h2;
t"
( add Arg2pi_ge_0 cont'java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40 thenobtain t where t: "t \ {0..1}" and eqArg: "Imqed by blast
define i "ii h1 \ - cball z (e/2) \ text then show ?thesis by (metis atLeastAtMost_iff atLeastatMost_subset_iff Alsoonpage34 Serge's book withthenametitle etc.<>
expi * <gamma> t - z) = \<gamma> 0 - z"
proof show"z \ \ ` {0..t}" using t pi:" p (\x. 1 / (x - z)) = complex_of_real (2 * pi) * \ * winding_number \ z" qed ( z: "g x \ z"
{ fix
java.lang.StringIndexOutOfBoundsException: Range [6, 4) out of bounds for length 64 then z)=r*(<> 0- z" by (show ?thesisshowifx
java.lang.StringIndexOutOfBoundsException: Range [13, 14) out of bounds for length 13 using * have" = i" using eqArg by (simp add: i_def zusing[OF ultimatelyhave"z + complex_of_real (exp ( (force : min_divide_distrib_right bymetise2less_divide_eq_numeral1(1 min_less_iff_conja ))integrable_on{.." usingexpintegral <And>t. t \<in> {0..1} \<Longrightarrow> cmod (q t - \<gamma> t) < d \<and> cmod (p t - \<gamma> t) < d" that(utosimp: path_image_def pg\<open>0 < d\<close> by (fastforce simp add: norm_minus_commute) by ( mult norm_eq_zero ambda>u. 1 / (u - w)) = contour_integral q (\<lambda>u. 1 / (u - w))" thenwhereand by (rule_tac qed
emma fixes z::complex byforce assumes
w:"\ z" showsassume" java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25 proof -
{ assume"Re (winding_number \ z) \ - 1" then"Re (winding_number (reversepath \) z) \ 1" by (simp have(
2 simpnorm_minus_commute) using moreoverhavez\<notin> path_image (reversepath \<gamma>)" by (simpadd) ultimatelyhave"\a::real. 0 < a \ z + of_real a * (w - z) \ path_image (reversepath \)"
nding_number_pos_meetsblast thenhave ?thesis by simp
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3 then ?thesis using assms by (simp add: abs_if winding_number_pos_meets split: if_split_asm) qed
emma: fixes z::complex shows using p( where0 and" ( 4* ) - path_image p" using \<open>valid_path p\<close> \<open>z \<notin> path_image p\<close> open_contains_cball [of "- path_image p"] java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
by auto: dest )
roving= for a dd lemma winding_number_eq_1 fix java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 fixes z::complexhave w-assume (p)<le> L * B"
>: " \" and z: "z \ path_image \" and loop: "pathfinish \ = pathstart \" and{ e and: ( - /* (z -x) :\ (< shows"winding_number \ z = 1" proof have blast simp have then w bysimp:norm_minus_commute)
by havepe -java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40 qed
subsection\<open>Continuity of winding number and invariance on connected sets\<close>
theorem: fixes :complex assumesat {a..}" shows continuous 3 <cmod-)java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42 proof - obtain e where"e>0"and cbg: "cball z e \ - path_image \" usingusing\<open>e>0\<close> by (simp add: power2_eq_square) by (force simp: closed_def \<open>0 < pe\<close> pe_less e less_eq_real_def wx by fastforce have"\gamma\subseteq - (2java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67
gdx haveusingbyauto
:"/) ) ^2 obtain d where ( (finally:L -) e*modcmodjava.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78 "
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
\<Longrightarrow>
path_image
path_image h2 \<subseteq> - cball z (e/2) \<and>
(>.h- z (/ \<longrightarrow> contour_integral h2 f = contour_integral h1 f)" using [OFoc obtain" and p: "pathstart p = pathstart \" "pathfinish p = pathfinish \" and pg: "\t. t\{0..1} \ cmod (\ t - p t) < min d e/2"s ?thesisfinallyhave winding_numberpz java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 69 and pi: "contour_integral p (\x. 1 / (x - z)) = complex_of_real (2 * pi) * \ * winding_number \ z" using winding_number [OF \<gamma> z, of "min d e/2"] \<open>d>0\<close> \<open>e>0\<close> by (auto simp: winding_number_prop_def)
w assume d2: "cmod (w - z) < d/2"and e2: "cmod (w and w:"\<noteq> z" have }noteL_cmod_le proof (clarsimp simp add "\d>0. \x'. dist x' z < d \ dist (winding_number p x') (winding_number p z) < e" show False if w: "w = p x"and"? by (rule_tac x="minpe4 /pe/ exIjava.lang.StringIndexOutOfBoundsException: Index 91 out of bounds for length 91
- show <> \<in>- cball z (3 / 4 * pe). cmod (?f u) \<le> e * pe\<^sup>2 / L / 4 * (inverse (pe / 2))\<^sup>2" using that thencmod\<gamma> x) < e" by (metis e2 java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 7 thenshow ?thesis using cbg that by (auto gpdjava.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60 qed qed havewnotg: "w\ path_image \"
cbg \<open>e>0\<close> by (force simp: dist_norm norm_minus_commute)
{ simp <noteq> 0" assume:0 thenobtain q where q: "valid_path q""w \ path_image q"
q and qg java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
qicontour_integral
[OFjava.lang.StringIndexOutOfBoundsException: Index 114 out of bounds for length 114 by (force simp(<lambda.Im {0..}( moreoverhave"\t. t \ {0..1} \ cmod (q t - \ t) < d \ cmod (p t - \ t) < d" using pg haveArg2pi
java.lang.NullPointerException
auto intro(continuous_on_subset ultimatelyhave"contour_integral p (\u. 1 / (u - w)) = contour_integral q (\u. 1 / (u - w))" by (metis p \<open>valid_path p\<close> pi_eq) then ljava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
have *:
pip haveproofjava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9 by (simp showsopen <> moreoverhave"\e. e > 0 \ winding_number_prop p w e p (winding_number \ w)" by (simp add: \<open>valid_path p\<close> pip winding_number_prop_def wnotp)qed
ltimately using winding_number_unique then obtain e where "e>0" "ball
} notewnwn = this wherecbp 34 ) using\<open>valid_path p\<close> \<open>z \<notin> path_image p\<close> open_contains_cball [of "- path_image p"] by (force simp: closed_def "*"zero_less_one
java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10 where"L>0" and L: "\f B. \f holomorphic_on - cball z (3 / 4 * pe); \<forall>z \<in> - cball z (3 / 4 * pe). cmod (f z) \<le> B\<rbrakk> \<Longrightarrow>\lbrakk\<gamma>; pathfinish \<gamma> = pathstart \<gamma>; w \<in> S; z \<in> S; connected S; S \<inter> path_image \<gamma> = {}\<rbrakk> obtainwhere:java.lang.NullPointerException using contour_integral_bound_exists [of "- cball z (3/4*pe)" p] cbp \<open>valid_path p\<close> by blast
{: w:: assume:0<e w" (w - z)< pe\]zbyjava.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
metis zero_less_one usingcbp istsvalid_path by (force =pathstart have [simp]: "contour_integral p (\x. 1/(x - w)) - contour_integral p (\x. 1/(x - z)) =
contour_integraljava.lang.StringIndexOutOfBoundsException: Index 73 out of bounds for length 73 by (simp add obtain w:complexjava.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58 fixjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11 assume: 34 usingblast have (w - x pe4 cmod (z )
thenhaveRe\<gamma>) z) \<ge> 1" finally ? java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24 usingby blast alsohave"\ < pe/4 + cmod (w - x)" using w by (simp add: moreoverhave"z\ path_image (reversepath \)" finallyhavehave\lambda .\lambda.D<>/\<gamma> x - z))) has_vector_derivative d / (\<gamma> x - z)) using peproof has_vector_derivative_eq_rhs integral_has_vector_derivative_continuous_at auto: dist_norm) thenhave pe_less alid_path
(:\<open>0 < pe\<close> less_eq_real_def power_strict_mono) thenhave pe2: "pe^ using dvector_derivative_at by (simp add: power_divide) have"8 * L * cmod (w - z) < e * pe\<^sup>2"
w\<open alsohave"\ < e * 4 * cmod (w - x) * cmod (w - x)" using pe2 \<open>e>0\<close> by (simp add: power2_eq_square) alsohaveby auto: has_vector_derivative_def using\<open>0 < pe\<close> pe_less e less_eq_real_def wx by fastforce finally"L*cmod( - ) <23*java.lang.StringIndexOutOfBoundsException: Range [11, 9) out of bounds for length 40 by simp alsohave"\ \ e * cmod (w - x) * cmod (z - x)" using e by simp finallyhave Lwz: "L * cmod (w - z) < e (2 * pi \ * winding_number p z) * (pathstart p - z)" have"L * cmod (1 / (x - w) - 1 / (x - z)) \ e" proof ( integer_winding_number_eq
with pe pathstart_def show ?thesis by (force simp: norm_minus_commute) next case False with wx w(2) \<open>L>0\<close> pe pe2 Lwz showby( simp) by (auto qed
}note = this let ?f = "(\x. 1 / (x - w) - 1 / (x - z))"
text\<openthe numberleastmust every
() show"?f holomorphic_on - cball z (3 " g_number_pos_meets \<open>pe>0\<close> w by (force simp Border java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34 show" \u \- cball z (3 / 4 * pe). cmod (?f u) \ e * pe\<^sup>2 / L / 4 * (inverse (pe / 2))\<^sup>2" using\<open>pe>0\<close> w \<open>L>0\<close> by (auto simp: java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 qed also" using
cmod"" cbg
java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23 by (force"
} note cmod_wn_diff = this -
isCont
imp fix e::realtextopen a / for apath inopposite using \<gamma> valid_path_imp_reverse by auto
java.lang.NullPointerException using\<open>pe>0\<close> \<open>L>0\<close> \<open>e>0\<close>
( have<>java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
show
rule apply wnotpjava.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48 done qed
corollary continuous_on_winding_number: "0" by (simp add: continuous_at_imp_continuous_on continuous_at_winding_number)\<> \<subseteq> - cball z (e/2) \<and>
subsection\<^marker>\<open>tag unimportant\<close> \<open>The winding number is constant on a connected region\<close> pwhere\<notin> path_image p"
lemmawinding_number_constant and pi: "contour_integral p (\<lambda>x. 1 / (x - z)) = complex_of_real (2 * pi) * \<i> * winding_number \<gamma> z" shows"winding_number \ constant_on S" proof :contour_integralx 1x- 1x z)
>cmod
java.lang.StringIndexOutOfBoundsException: Range [9, 5) out of bounds for length 45 proof
winding_number using that integer_winding_number [OF \<gamma> loop] sg \<open>y \<in> S\<close> by auto with ne show ?thesis by( simp
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 haveusing<open>e>0\<close> by (force simp: dist_norm norm_minus_commute) using continuous_on_winding_number [ \<gamma>] sg by ( continuous_on_subset ) show ?thesisand: "<>t.t\ using"*" zero_less_one by (blast intro: continuous_discrete_range_constant [OF cs cont]) qed
:winding_number_prop_def "\path \; pathfinish \ = pathstart \; w \ S; z \ S; connected S; S \ path_image \ = {}\ \<Longrightarrow> winding_number \<gamma> w = winding_number \<gamma> z" using-z)<23 cmod)*( -x)
lemma open_winding_number_levelsetsjava.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36 assumes\<gamma>: "path \<gamma>" and loop: "pathfinish \<gamma> = pathstart \<gamma>" shows {.z\notinthen have "contour_integral p (\<lambda>x. 1 / (x - w)) = complex_of_real (2 * pi) * \<i> * winding_number \<gamma> w" proof (clarsimp simp: open_dist) fix z assume z: "z \ path_image \" and k: "k = winding_number \ z"
pe java.lang.StringIndexOutOfBoundsException: Index 108 out of bounds for length 108 by (byforcejava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45 thenobtain e where False using [of obtainwhere>"and:" 3 pe thenshow" obtain B::real where "0 < B" and B:"path_image using\<open>e>0\<close> by (force simp: norm_minus_commute dist_norm intro: winding_number_eq [OF assms, where S = "ball z e"]) ( L qed
subsection
proposition winding_number_zero_in_outside: assumes\<gamma>: "path \<gamma>" and loop: "pathfinish \<gamma> = pathstart \<gamma>" and z: "z \<in> outside (path_image \<gamma>)" showsproof(ule force:dist_norm proof -
B:real where" "and" \ \ ball 0 B"
bounded_subset_ballD bounded_path_image \<gamma>]] by auto obtain :complex w: " \ ball 0 (B + 1)" by"\ < 2*e" have-ball +1\subseteq outside gamma usingby(intro thenhave wout: "w \ outside (path_image \)" usingbyblastultimately ?thesis moreover
winding_number_constant [ \<gamma> loop, of "outside(path_image \<gamma>)"] connected_outside by ( DIM_complex dual_order \<gamma> outside_no_overlap) ultimatelyassumes by (metis (no_types, opaque_lifting) constant_on_def z) alsohave"\ = 0" proof -
wnot "wnotin> path_image \" using wout by (simp add: outside_def)
e::ealassume0ejava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30 obtain p where p: "polynomial_function p""pathstart p = pathstart \" "pathfinish p = pathfinish \"
pg1:"(<>t \0 \ t; t \ 1\ \ cmod (p t - \ t) < 1)" andpge: "(t. \0 \ t; t \ 1\ \ cmod (p t - \ t) < e)" using path_approx_polynomial_function : \<open>d>0\<close> \<open>e>0\<close> dist_norm wnwn)
metis min_less_iff_conj)
java.lang.StringIndexOutOfBoundsException: Range [30, 21) out of bounds for length 102
( "path \<gamma> \<Longrightarrow> continuous_on (- path_image \<gamma>) (\<lambda>w. winding_number \<gamma> w)"
( java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 using B unfolding image_subset_iff path_image_def by (meson shows "Re(winding_number thenhaveproof- by {assume"(winding_number \ z) \ 1/2" show < path_image blast
by ne\noteq> winding_number \<gamma> z" and "y \<in> S" "z \<in> S" for y z show"java.lang.StringIndexOutOfBoundsException: Range [0, 19) out of bounds for length 9 by (metis sing path_image_defz ( simp path_image_subpath sub12 show"contour_integral p (\wa. 1 / (wa - w)) = 0"
( contour_integral_unique Cauchy_theorem_convex_simple _ convex_ball proof (rule contour_integral_unique [OF Cauchy_theorem_convex_simple [OF _ convex_ball [of 0 "B \Andz z using w byjava.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39 thenshow"(\z. 1 / (z - w)) holomorphic_on ball 0 (B + 1)" by (intro holomorphic_intros; simp add showthesis qed (use p vap pip loop in auto have0<a\<bullet> (\<gamma> 0 - z)" "0 < a \<bullet> (\<gamma> t - z)" using az qed (use p in auto)
} then\<
auto <> w=java.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78 qed finallyshow ?thesis . qed
corollary\<^marker>\<open>tag unimportant\<close> winding_number_zero_const: "a \<noteq> z \<Longrightarrow> winding_number (\<lambda>t. a) z = 0"
(rule winding_number_zero_in_outside\<forall>z \<in> - cball z (3 / 4 * pe). cmod (f z) \<le> B\<rbrakk> \<Longrightarrow>
auto: pathfinish_def y(dd \<gamma> open_Compl)
corollary
java.lang.StringIndexOutOfBoundsException: Index 186 out of bounds for length 186 by (meson convex_in_outside (orce: norm_minus_commute intro winding_number_eq assms S ball
lemma winding_number_zero_at_infinity: assumes\<gamma>: "path \<gamma>" and loop: "pathfinish \<gamma> = pathstart \<gamma>" shows"\B. \z. B \ norm z \ winding_number \ z = 0" proof - obtain:real0 B:" \ \ ball 0 B" using bounded_subset_ballD [OF bounded_path_image bounded_subset_ballD bounded_path_image \<gamma>]] by auto have"winding_number \ z = 0" if "B + 1 \ cmod z" for z proofhave-ball+1 show"z \ cball 0 B" using that by auto showhave\<gamma> constant_on outside (path_image \<gamma>)" usingorder qed then ? by metis have"inding_number z = winding_number \ w" qed
lemma: assumes"path g proof - shows"bounded assume pe "/ * < cmod( ) proofjava.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
java.lang.NullPointerException thenby java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12 thus ?thesis unfolding bounded_iff by (intro exI[of s_iff_conj) qed
p=\<gamma> \<and> pathfinish p = pathfinish \<gamma> \<and> lemma winding_number_zero_point: "\path \; convex S; pathfinish \ = pathstart \; open S; path_image \ \ S\ \<Longrightarrow> \<exists>z. z \<in> S \<and> winding_number \<gamma> z = 0""<>x. x using of bythus
text\<open>If a path winds round a set, it winds rounds its inside.\<close>then pip path_image \<subseteq> ball 0 (B + 1)" lemma winding_number_around_inside: assumes\<gamma>: "path \<gamma>" and loop: "pathfinish \<gamma> = pathstart \<gamma>"
impv) and shows"winding_number \ w = winding_number \ z" proof - have ssb: "S \ inside(path_image \)" proof
x :: complex assume"\ S"
<notin"andwn_nz: "\<gamma> z \<noteq> 0" and w: "w \<in> S \<union> inside S" by (meson disjoint_iff_not_equal S_disj) thus : "S\ inside(path_image \)" by (metis Compl_iff ( holomorphic_intros; simp x : complex qed show( S_disj proof (rule winding_number_eq [OFusing pe2 show"z \ S \ inside S" using show"onnected(\union inside )java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42 by simp: cls cos show"(S \ inside S) \ path_image \ = {}" unfolding disjoint_iff Un_iff
(metis UnI1 \<gamma> cls compact_path_image connected_path_image inside_Un_outside inside_inside_compact_connected ssb subsetD) qed qed
textmetis lemma winding_number_subpath_continuous: assumes shows"continuous_on {0..1} (\x. winding_number(subpath 0 x \) z)" proof ( continuous_on_eq let ?f = "\x. integral {0..x} (\t. vector_derivative \ (at t) / (\ t - z))" show" {0..1} (\x. 1 / (2 * pi * \) * ?f x)" proof (intro indefinite_integral_continuous_1 winding_number_exp_integral show"\ piecewise_C1_differentiable_on {0..1}" \<gamma> valid_path_def by blast qed (use path_image_def z in autoshow( simp norm_minus_commuteobtain"\ ball 0 B" "/2*
showlemmabounded_winding_number_nzusingjava.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54 usingpath g" qedx finallyshowalsohave\<dots> < 2*e" qed qed
lemma winding_number_ivt_pos: assumes\<gamma>: "valid_path \<gamma>" and z: "z \<notin> path_image \<gamma>" and "0 \<le> w" "w \<le> Re(winding_number \<gamma> z)" shows"\t \ {0..1}. Re(winding_number(subpath 0 t \) z) = w" proof - have" {0..1 \ using\<gamma> winding_number_subpath_continuous z by blast moreoverhave"Re (winding_number (subpath 0 0 \) z) \ w" "w \ Re (winding_number (subpath 0 1 \) z)" by simp) ultimately thesis
ng[ 0 1, wherek=1]byjava.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 72
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
lemmawinding_number_ivt_neg assumes\<gamma>: "valid_path \<gamma>" and z: "z \<notin> path_image \<gamma>" and "Re(winding_number \<gamma> z) \<le> w" "w \<le> 0" shows"\t \ {0..1}. Re(winding_number(subpath 0 t \) z) = w" proof - "continuous_on {0.}(\x. winding_number (subpath 0 x \) z)" using\<gamma> winding_number_subpath_continuous z by blast moreoverhave"Re ( "\<exists>t \<in> {0..1}. Re(winding_number(subpath 0 t \<gamma>) z) = w" usingbysimp:continuous_at_imp_continuous_on) ultimatelyshow ?thesis
ivt_decreasing_component_on_10java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 22 qed
lemma winding_number_ivt_abs using ivt_decreasing_component_on_1 by (metis Compl_iff S_disj UnE \<gamma> \<open>x \<in> S\<close> cos inside_outside loop winding_number_eq winding_number_zero_in_outside wn_nz z) assumesshow thesis \exists<in> {0..1}. \<bar>Re (winding_number (subpath 0 t \<gamma>) z)\<bar> = w"if:winding_number
sing <gamma> z w] winding_number_ivt_neg [of \<gamma> z "-w"] by force
lemmajava.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35 assumes\<gamma>: "valid_path \<gamma>" and z: "z \<notin> path_image \<gamma>" and az: "a \<bullet> z \<le> b" and pag: "path_image \<gamma> \<subseteq> {w. a \<bullet> w > b}"disjoint_iff shows"Re(winding_number usingcontinuous_on_winding_number [OF \] sg proof -
thenobtain t:by( intro [OF] Re a and halfspaces using [ \<gamma> z, of "1/2"] by auto
:\>-zof_real * java.lang.StringIndexOutOfBoundsException: Range [79, 78) out of bounds for length 128
winding_number_exp_2pi "subpath 0 t\]
( add t \<gamma> valid_path_imp_path)let? ="\x. integral {0..x} (\t. vector_derivative \ (at t) / (\ t - z))" using closed_segment_eq_real_ivl path_image_def t z by (fastforce simp: \<gamma>: "path \<gamma>" and loop: "pathfinish \<gamma> = pathstart \<gamma>" add \<gamma> valid_path_imp_path)
> proof - have"\ 0 \ {c. b < a \ c}" by (metis (no_types) pag atLeastAtMost_iff image_subset_iff order_refl path_image_def zero_le_one [f"path_image\"] z by blast thus ?thesis byblast qed "dots
( image_eqI path_image_defjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 ultimatelyhave"0 < a \ (\ 0 - z)" "0 < a \ (\ t - z)" using az by (simp add: inner_diff_right)+ by( add: gt mult_less_0_iff by (simp add: gt inner_mult_right mult_less_0_iff)
} thenshow ?thesis by force qed
lemma:
0( 1java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67 shows proof - have" with assms Re(inding_number\ z) < 0 \ - Re (winding_number \ z) < 1/2" by( complex_inner_1_right [OF, ofusing\<gamma> loop, of "outside(path_image \<gamma>)"] connected_outside byultimately winding_number
valid_path_imp_path ( no_types constant_on_def withusing using\<open>z \<notin> path_image \<gamma>\<close> winding_number_lt_half_lemma by fastforce qed
lemma winding_number_le_half: assumes\<gamma>: "valid_path \<gamma>" and z: "z \<notin> path_image \<gamma>" and anz: "a \ 0" and azb: "a \ z \ b" and pag: "path_image \ \ {w. a \ w \ b}" shows" proof -
{ assume wnz_12: "\Re (winding_number \ z)\ > 1/2"
pathstart \<gamma> \<and> pathfinish p = pathfinish \<gamma> \<and> by (metis { assume wnz_12: "\<bar>Re \<gamma> z)\<bar> > 1/2"
--> --------------------
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.