The Pokéball contour integral
by math_explorer, Nov 21, 2014, 3:21 AM
S&S defines the keyhole contour in order to prove the residue formula.
![[asy]
draw(arc((0,0), r=1, angle1=2, angle2=358) -- arc((0,0), r=0.1, angle1=340, angle2=20) -- cycle);
dot((0,0));
[/asy]](//latex.artofproblemsolving.com/4/7/2/47274a09bb7f678a32ed19ddf973ec22d3baf58a.png)
The idea is to provide a contour that goes around a big closed loop as well as a little circle right next to a point, avoiding actually containing the point at which a function might behave oddly (has a singularity). Then Cauchy's formula says that if the function is well-behaved (holomorphic) in the contour's interior, we can define a primitive through paths inside the contour's interior that just "works", which then proves that the integral around the contour is zero, so the integral around the big loop and the small circle are equal.
Then after you investigate the values integrals around small circles just around a singularity, you have the super-useful residue formula.
I have always been annoyed by the fact that we still have to take a limit of the keyhole's corridor length to zero to finish this proof, however. To some degree, one can try to directly just setting the corridor width to zero --- sure, the resulting contour now has a self-overlapping boundary, but it can't be too hard to clearly define its interior and values of the constructed primitive in a way that the proof still works, right?
It's possible to use two contours to achieve the same purpose without raising any such questions, however:
![[asy]
draw(arc((0,0), r=1, angle1=180, angle2=360),arrow=MidArcArrow(HookHead));
draw(arc((0,0), r=0.1, angle1=360, angle2=180));
draw((1,0)--(0.1,0),arrow=ArcArrow(HookHead, position=0.7));
draw((-0.1,0)--(-1,0),arrow=ArcArrow(HookHead, position=0.7));
draw(arc((0,0), r=1, angle1=0, angle2=180),red,arrow=MidArcArrow(HookHead));
draw((-1,0)--(-0.1,0),red+dashed,arrow=ArcArrow(HookHead, position=0.7));
draw(arc((0,0), r=0.1, angle1=180, angle2=0),red);
draw((0.1,0)--(1,0),red+dashed,arrow=ArcArrow(HookHead, position=0.7));
dot((0,0));
[/asy]](//latex.artofproblemsolving.com/9/3/7/937bd6ba0e115ef3b584da51d3b128700a176307.png)
P.S. I learned Asymptote!
![[asy]
draw(arc((0,0), r=1, angle1=2, angle2=358) -- arc((0,0), r=0.1, angle1=340, angle2=20) -- cycle);
dot((0,0));
[/asy]](http://latex.artofproblemsolving.com/4/7/2/47274a09bb7f678a32ed19ddf973ec22d3baf58a.png)
The idea is to provide a contour that goes around a big closed loop as well as a little circle right next to a point, avoiding actually containing the point at which a function might behave oddly (has a singularity). Then Cauchy's formula says that if the function is well-behaved (holomorphic) in the contour's interior, we can define a primitive through paths inside the contour's interior that just "works", which then proves that the integral around the contour is zero, so the integral around the big loop and the small circle are equal.
Then after you investigate the values integrals around small circles just around a singularity, you have the super-useful residue formula.
I have always been annoyed by the fact that we still have to take a limit of the keyhole's corridor length to zero to finish this proof, however. To some degree, one can try to directly just setting the corridor width to zero --- sure, the resulting contour now has a self-overlapping boundary, but it can't be too hard to clearly define its interior and values of the constructed primitive in a way that the proof still works, right?
It's possible to use two contours to achieve the same purpose without raising any such questions, however:
![[asy]
draw(arc((0,0), r=1, angle1=180, angle2=360),arrow=MidArcArrow(HookHead));
draw(arc((0,0), r=0.1, angle1=360, angle2=180));
draw((1,0)--(0.1,0),arrow=ArcArrow(HookHead, position=0.7));
draw((-0.1,0)--(-1,0),arrow=ArcArrow(HookHead, position=0.7));
draw(arc((0,0), r=1, angle1=0, angle2=180),red,arrow=MidArcArrow(HookHead));
draw((-1,0)--(-0.1,0),red+dashed,arrow=ArcArrow(HookHead, position=0.7));
draw(arc((0,0), r=0.1, angle1=180, angle2=0),red);
draw((0.1,0)--(1,0),red+dashed,arrow=ArcArrow(HookHead, position=0.7));
dot((0,0));
[/asy]](http://latex.artofproblemsolving.com/9/3/7/937bd6ba0e115ef3b584da51d3b128700a176307.png)
P.S. I learned Asymptote!
- Can somebody tell me why ArcArrow(HookHead, position=0.5) didn't work on the arcs whereas MidArcArrow(HookHead) did?
- Are there any good cheat sheets? (I am totally going to start writing one if not. Actually I'm probably going to write one even if there is one, but having somewhere to start would help.)