homeowmorphismWebpage of a math cat.
http://localhost:4000/
Sun, 14 Jan 2018 19:31:26 -0500Sun, 14 Jan 2018 19:31:26 -0500Jekyll v3.3.1Beautiful Link: Mapping Class Groups, Teichmuller Spaces and Hyperbolic Surfaces. <p>I asked <a href="http://www.math.toronto.edu/~rafi/">Kasra Rafi</a> about the link between hyperbolic surfaces, Teichmüller spaces and Mapping Class Groups with the goal of getting an intuitive overview of these concepts. During the span of several office hours, he generously replied with a beautiful torus story linking the three, which I adapt and fill in below.</p>
<!--more-->
<ul id="markdown-toc">
<li><a href="#quick-recap-of-definitions" id="markdown-toc-quick-recap-of-definitions">Quick recap of definitions</a></li>
<li><a href="#a-humble-beginning-with-lattices" id="markdown-toc-a-humble-beginning-with-lattices">A humble beginning with lattices</a></li>
<li><a href="#torus-time" id="markdown-toc-torus-time">Torus time!</a></li>
<li><a href="#scale-equivalence-and-textsl2mathbbr-action" id="markdown-toc-scale-equivalence-and-textsl2mathbbr-action">Scale equivalence and <script type="math/tex">\text{SL}_2(\mathbb{R})</script> action</a></li>
<li><a href="#rotation-and-identification-of-torus-with-point-in-upper-half-plane" id="markdown-toc-rotation-and-identification-of-torus-with-point-in-upper-half-plane">Rotation and identification of torus with point in upper half-plane</a></li>
<li><a href="#the-teichmller-space-of-the-torus" id="markdown-toc-the-teichmller-space-of-the-torus">The Teichmüller space of the torus</a></li>
<li><a href="#markings-on-a-torus" id="markdown-toc-markings-on-a-torus">Markings on a torus</a> <ul>
<li><a href="#topological-definition" id="markdown-toc-topological-definition">Topological definition</a></li>
<li><a href="#group-theoretic-connection" id="markdown-toc-group-theoretic-connection">Group theoretic connection</a></li>
<li><a href="#interesting-combinational-fact" id="markdown-toc-interesting-combinational-fact">Interesting combinational fact</a></li>
</ul>
</li>
<li><a href="#mapping-class-group-of-the-torus" id="markdown-toc-mapping-class-group-of-the-torus">Mapping Class Group of the Torus</a> <ul>
<li><a href="#group-theoretic" id="markdown-toc-group-theoretic">Group Theoretic</a></li>
<li><a href="#topological" id="markdown-toc-topological">Topological</a></li>
<li><a href="#combinatorial" id="markdown-toc-combinatorial">Combinatorial</a></li>
<li><a href="#note-on-moduli-spaces" id="markdown-toc-note-on-moduli-spaces">Note on Moduli Spaces</a></li>
</ul>
</li>
<li><a href="#putting-it-all-together" id="markdown-toc-putting-it-all-together">Putting it all together</a></li>
<li><a href="#sources-and-resources" id="markdown-toc-sources-and-resources">Sources and Resources</a></li>
<li><a href="#acknowledgements" id="markdown-toc-acknowledgements">Acknowledgements</a></li>
<li><a href="#get-in-touch" id="markdown-toc-get-in-touch">Get in touch</a></li>
</ul>
<h2 id="quick-recap-of-definitions">Quick recap of definitions</h2>
<blockquote>
<p><strong>Hyperbolic surface:</strong> A topological surface endowed with a hyperbolic metric such that the space has constant negative curvature. Recall from differential geometry that for Riemann surface with metric <script type="math/tex">ds</script> where <script type="math/tex">ds^2 = g_1 dx_1^2 + g_2 dx_2^2</script>, the curvature is given by <script type="math/tex">K = -\frac{1}{\sqrt{g_1 g_2}}\left(\frac{\partial}{\partial x_1}\left(\frac{1}{\sqrt{g_1}} \frac{\partial \sqrt{g_2}}{\partial x_1}\right) + \frac{\partial}{\partial x_2}\left(\frac{1}{\sqrt{g_2}} \frac{\partial \sqrt{g_1}}{\partial x_2}\right) \right).</script><label for="source hyp" class="margin-toggle sidenote-number"></label><input type="checkbox" id="source hyp" class="margin-toggle" /><span class="sidenote">Adapted from <em>Hyperbolic Geometry</em> by Caroline Series and Wikipedia. </span></p>
</blockquote>
<blockquote>
<p><strong>Teichmüller space:</strong> Let S be a compact surface. The Teichmüller space <script type="math/tex">\tau(S)</script> is the set of isotopy classes of complex structures on <script type="math/tex">S</script>. By a complex structure on <script type="math/tex">S</script>, we mean a fixed homeomorphism <script type="math/tex">f: S \to X</script>, where <script type="math/tex">X</script> is a metrized surface with distinguished curves. Equivalently, <script type="math/tex">\tau(S)</script> is a space that parametrizes complex structures on <script type="math/tex">S</script> up to the action of homeomorphisms that are isotopic to the identity. We may record the complex structure <script type="math/tex">f: S \to X</script> by the triple <script type="math/tex">(S,X,f)</script>. The homeomorphism is referred to as a <em>marking</em> which has named curves, and either <script type="math/tex">X</script> or <script type="math/tex">(X,f)</script> can be referred to as a <em>marked surface</em>.<label for="source tech" class="margin-toggle sidenote-number"></label><input type="checkbox" id="source tech" class="margin-toggle" /><span class="sidenote">Adapted from <em>A Primer on Mapping Class Groups</em> by Farb and Margalit and Wikipedia. </span></p>
</blockquote>
<blockquote>
<p><strong>Mapping class group:</strong> The group of orientation-preserving homeomorphisms of a surface up to isotopy, where the group structure is inherited from functional composition of homeomorphisms. In other words, <script type="math/tex">\text{MCG}(S) = \text{Homeo}^+(S)/\text{Homeo}_0(S)</script>.<label for="iso" class="margin-toggle sidenote-number"></label><input type="checkbox" id="iso" class="margin-toggle" /><span class="sidenote">where <script type="math/tex">text{Homeo}_0(S)</script> are homeomorphisms isotopic to the identity. </span> The group multiplication of the mapping class group of <script type="math/tex">S</script> gives it a natural action on the Teichmüller space of <script type="math/tex">S</script> by composition of homeomorphisms.<label for="source tech" class="margin-toggle sidenote-number"></label><input type="checkbox" id="source tech" class="margin-toggle" /><span class="sidenote">Adapted from <em>A Primer on Mapping Class Groups</em> by Farb and Margalit and Wikipedia. </span></p>
</blockquote>
<p>At first glance, these seem tricky and confusing – let’s see what they mean in the context of <em>one</em> example.</p>
<h2 id="a-humble-beginning-with-lattices">A humble beginning with lattices</h2>
<p>Our story starts with a simple problem. We can define a <em>lattice</em> in <script type="math/tex">\mathbb{R}^2</script> to be an injective homomorphism from <script type="math/tex">\mathbb{Z}^2 \to \mathbb{R}^2</script>.</p>
<figure><figcaption>We will be calling the two vectors defining a lattice the *basis* of the lattice. In the picture above, the left (green) represents the linear map $$\{(1,0), (0,1)\} \mapsto \{(1,0), (0,1)\}$$ and the right represents the linear map $$ \{(1,0), (0,1)\} \mapsto \{(1,0), (1,1)\}.$$</figcaption><img src="/assets/img/2017/hyperbolic/lattice-map.jpeg" /></figure>
<p><strong>Key idea</strong>: <em>Up to what should these maps be equivalent? What is a good notion of equivalence to use?</em></p>
<p>One way to interpret this question is to define up to equivalence maps which have the same images. For example, the linear map <script type="math/tex">\{(1,0), (0,1)\} \mapsto \{(1,0), (0,1)\}</script> and the linear map <script type="math/tex">\{(1,0), (0,1)\} \to \{(1,0), (1,1)\}</script> have the same image, which is <script type="math/tex">\mathbb{Z}^2 \subset \mathbb{R}^2.</script></p>
<figure><figcaption>Picture illustrating how the two maps have the same image as they span the same lattice points.</figcaption><img src="/assets/img/2017/hyperbolic/lattice-map2.jpg" /></figure>
<p>On the other hand, the linear map <script type="math/tex">\{(1,0),(0,1)\} \mapsto \{(2,0), (1,2)\}</script> (in blue) does not have the same image as the other two (in brown). For example, the point <script type="math/tex">(1,1)</script> (in pink) is not in the image of the linear map.</p>
<figure><figcaption>In blue: the parallelogram formed by vectors $${(2,0), (1,2)}.$$ In brown: the tesselation formed by the previous lattice. In pink: points not covered by the blue tesselation that are covered in the brown tesselation.</figcaption><img src="/assets/img/2017/hyperbolic/lattice-othermap.jpg" /></figure>
<p>Already, we have a new notion of equivalence. Since we can choose to care about only the span of the image of the chosen basis elements for <script type="math/tex">\mathbb{Z}^2</script>, two maps could be equivalent under change of basis which preserves the span of the image. Thus, an equivalence of maps from <script type="math/tex">\mathbb{Z}^2 \to \mathbb{Z}^2 \subset \mathbb{R}^2</script> must necessarily be area preserving (so that both base and height are <script type="math/tex">1</script> in the domain as fractions are not allowed). IF we choose to preserve orientation,<label for="orientation" class="margin-toggle sidenote-number"></label><input type="checkbox" id="orientation" class="margin-toggle" /><span class="sidenote">which we will (spoiler alert!) because we will want to associate each lattice with a marked torus, and a torus is an oriented surface. </span> the group acting on these maps must be <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> the special linear group of two-dimensional integer matrices with determinant <script type="math/tex">1</script>.</p>
<figure><figcaption>Picture illustrating how $$\text{SL}_2(\mathbb{Z})$$ works on bases of $$\mathbb{Z}^2$$ the domain of the lattice maps. The map pictured here is the natural embedding (in blue) of $$\mathbb{Z}^2$$ into $$\mathbb{R}^2,$$ but it could be anything that is an injective linear map.</figcaption><img src="/assets/img/2017/hyperbolic/change-of-basis.jpeg" /></figure>
<p><script type="math/tex">\text{SL}_2(\mathbb{Z})</script> is also known as the <em>mapping class group of the torus</em>. What torus? How do we get there?</p>
<h2 id="torus-time">Torus time!</h2>
<p>Since each parallelogram is exactly the same in a given lattice, it doesn’t matter which one we pick as a representative!</p>
<figure><figcaption>Map each lattice to a single parallelogram representative. </figcaption><img src="/assets/img/2017/hyperbolic/rep-lattice.jpeg" /></figure>
<p>Under the assumption that all parallelograms in a given lattice is the same, we may identify the sides of the parallelograms accordingly. The resulting surface is a torus identified with a particular lattice <script type="math/tex">\mathbb{Z}^2 \to \mathbb{R}^2</script>.</p>
<p><strong>Key idea:</strong> <em>How do we transfer the equivalence relation between parallelograms onto its torus representative?</em></p>
<p>Unfortunately, genus 1 tori are all the same as topological spaces, which we write as <script type="math/tex">\mathbb{R}^2/\mathbb{Z}^2</script>. Since there is only one equivalence class for genus 1 tori under homeomorphisms, we will need finer notion of equivalence to get “interesting” equivalence classes”.</p>
<h2 id="scale-equivalence-and-textsl2mathbbr-action">Scale equivalence and <script type="math/tex">\text{SL}_2(\mathbb{R})</script> action</h2>
<p>Notice we have only talked about equivalence in the domain space <script type="math/tex">\mathbb{Z}^2</script>. In the image space, the completeness of <script type="math/tex">\mathbb{R}^2</script> allows for richer equivalences.</p>
<p>Indeed, maybe instead of the image of maps being the distinguishing factor, we only care about the <em>shape</em> of the parallelograms in the lattice. That translates to equivalences up to <em>scaling and rotation</em>. Notice that both are features that we think of as invariant in a torus. These equivalences will lead us to the Teichmüller space of the torus. Notice</p>
<p>Let’s start with scaling and see what natural group action arises from it. If we decide to mod the lattices by a scaling factor, we may consider only the set of lattices whose parallelograms have area <script type="math/tex">1</script>.<label for="stretch" class="margin-toggle sidenote-number"></label><input type="checkbox" id="stretch" class="margin-toggle" /><span class="sidenote">Imagine stretching your parallelogram freely until you get area <script type="math/tex">1</script>. </span></p>
<figure><figcaption>Scaling our parallelogram to have area $$1$$. </figcaption><img src="/assets/img/2017/hyperbolic/para-scale.jpg" /></figure>
<p>Then, the group acting on parallelograms with area <script type="math/tex">1</script> is <script type="math/tex">\text{SL}_2(\mathbb{R})</script>, the special linear group of two-dimensional real matrices with determinant <script type="math/tex">1</script>.</p>
<figure><figcaption>Diagram showing where $$\text{SL}_2(\mathbb{R})$$ acts. </figcaption><img src="/assets/img/2017/hyperbolic/SL2R.jpg" /></figure>
<h2 id="rotation-and-identification-of-torus-with-point-in-upper-half-plane">Rotation and identification of torus with point in upper half-plane</h2>
<p>For a given set of two vectors in <script type="math/tex">\mathbb{R}^2</script>, we may rotate a parallelograms such that the second basis vector is always in the upper half-plane. This does not change the torus we are looking at and neither does the scaling.</p>
<figure><figcaption>We may represent our two-dimensional space as the complex plane. Then, then since the vector $$v$$ can always be rotated to be on the upper half-plane, we may uniquely identify our torus with the rotated coordinates of our vector $$v = \tau = a + bi,$$ assuming the torus has area $$1.$$</figcaption><img src="/assets/img/2017/hyperbolic/para-rotate.jpg" /></figure>
<p>The group action of <script type="math/tex">\text{SL}_2(\mathbb{R})</script> on the image of the lattice becomes <script type="math/tex">\text{SL}_2(\mathbb{R})/O(2)</script> where <script type="math/tex">O(2)</script> is the group of two-dimensional rotation.</p>
<p>Due to our equivalence of parallelograms being up to rotation and scale, we can fix our first basis vector to be of length <script type="math/tex">1</script> lying on the real-axis. We may then uniquely identify each representative of our equivalence class by the coordinates of the second basis vector, which we will refer to as the parameter <script type="math/tex">\tau = a + bi</script> in the complex upper half-plane.</p>
<blockquote>
<p><strong>Possible point of confusion:</strong> <em>Are irrational coordinates allowed?</em></p>
</blockquote>
<blockquote>
<p>Irrational coordinates are allowed by definition. The domain of the <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> action should not be confused with that of <script type="math/tex">\text{SL}_2(\mathbb{R})</script>.</p>
<figure><figcaption></figcaption><img src="/assets/img/2017/hyperbolic/irrational-coords.jpeg" /></figure>
</blockquote>
<h2 id="the-teichmller-space-of-the-torus">The Teichmüller space of the torus</h2>
<p><strong>The space of possible coordinates of <script type="math/tex">\tau</script> which uniquely identifies a torus under our new equivalence is exactly the Teichmüller space of the torus. Thus <script type="math/tex">\tau(T^2) = \mathbb{H}</script>, the complex upper half-plane.</strong></p>
<blockquote>
<p><strong>Note:</strong> From the identification of the complex upper half-plane to this (Teichmüller) space of tori, we inherit the hyperbolic metric <script type="math/tex">ds = \lvert{dz}\rvert/\Im z</script>, which gives a useful notion of distance between tori in the Teichmüller space (for reasons not explored here).</p>
</blockquote>
<p>But how do we make sense of that? In the definition of the Teichmüller space, there was mention of distinguished curves and markings, and of mapping class group action…</p>
<p><em>This concludes the first part of this post (yay! We did it!). In the second part, we will explore markings of the torus, the mapping class group and tie all the previous concepts we explored together. If you were new to the material, this is a good break point.</em></p>
<h2 id="markings-on-a-torus">Markings on a torus</h2>
<p>Let’s start with an example.</p>
<p>As seen previously, the maps which embed the bases <script type="math/tex">\{(1,0), (0,1)\}</script> (in green) and <script type="math/tex">\{(1,0), (1,1)\}</script> (in pink) have the same image, so one could consider them the same as maps. However, if we ‘mark’ the resulting torus by the curves they embed, they become different as marked tori.</p>
<figure><figcaption>Shortest curves in blue on the green torus, which both correspond with the generators of the fundamental group (the edges of the square).</figcaption><img src="/assets/img/2017/hyperbolic/marking1.jpg" /></figure>
<figure><figcaption>Shortest curves in blue on the pink torus, where only one correspond with the generators of the fundamental group (the edges of the pink parallelogram).</figcaption><img src="/assets/img/2017/hyperbolic/shortest-curves2.jpeg" /></figure>
<p>Indeed, the green basis maps to the shortest curves on the torus, whereas the pink basis maps the second vector to a curve that is not the shortest.</p>
<blockquote>
<p>A torus is fundamentally a product of two circles <script type="math/tex">S^1 \times S^1</script>. If you have a parallelogram with identified edges, you have infinitely many circles to choose from. The standard two circles (in blue) are supposed to represent the shortest two loops on any torus. As the blue curves illustrate, the shortest curves are not necessarily always the curves you pick to generate your torus (ex: pink torus).</p>
</blockquote>
<p>Here are different interpretations of markings.</p>
<h3 id="topological-definition">Topological definition</h3>
<p>Let <script type="math/tex">\gamma_1, \gamma_2</script> be two circles, and let <script type="math/tex">S</script> be the genus <script type="math/tex">1</script> surfaces generated by <script type="math/tex">S = S^1 \times S^1 = \gamma_1 \times \gamma_2</script>.</p>
<blockquote>
<p>In our examples, such an <script type="math/tex">S</script> would be a fixed parallelogram <script type="math/tex">P</script> in <script type="math/tex">\mathbb{Z}^2</script> with the sides identified - let’s take <script type="math/tex">P</script> to be a square with sides <script type="math/tex">1</script> for simplicity. The horizontal sides of <script type="math/tex">P</script> would correspond to <script type="math/tex">\gamma_1</script> and the vertical sides to <script type="math/tex">\gamma_2</script>.</p>
</blockquote>
<p>A <em>marking</em> of the torus is a orientation-preserving homeomorphism <script type="math/tex">f</script> from <script type="math/tex">S</script> to a <a href="https://en.wikipedia.org/wiki/Riemann_surface">Riemann surface</a> <script type="math/tex">X</script> where <script type="math/tex">f</script> is <em>fixed</em> by once-intersecting simple closed curve <script type="math/tex">(\lambda_1, \lambda_2)</script> on <script type="math/tex">X = \lambda_1 \times \lambda_2</script> such that <script type="math/tex">f(\gamma_1) = \lambda_1, f(\gamma_2) = \lambda_2</script>.</p>
<figure><figcaption></figcaption><img src="/assets/img/2017/hyperbolic/markings.jpeg" /></figure>
<blockquote>
<p>In the pink torus example, <script type="math/tex">X</script> is the pink torus and <script type="math/tex">(\lambda_1, \lambda_2)</script> are the pink curves, and they are the (non-standard) generators the fundamental group <script type="math/tex">\pi_1(X)</script>. The blue curves represent the <em>standard</em> generators of <script type="math/tex">\pi_1(X)</script>. The map sending the parallelogram <script type="math/tex">P</script> to the pink torus is the homeomorphism map <script type="math/tex">f</script> from <script type="math/tex">S</script> to <script type="math/tex">X</script>. The green torus example is similar, except that the green curves coincide with the blue curves because they are the standard generators of the fundamental group.</p>
</blockquote>
<p>We say that <script type="math/tex">X</script> and <script type="math/tex">Y</script> are <em>equivalent as markings</em> if there is an isometry <script type="math/tex">\varphi</script> between the homeomorphisms <script type="math/tex">f : S \to X</script>, <script type="math/tex">g : S \to Y</script> such that <script type="math/tex">\varphi</script> is isotopic (or homotopic) to the identity.</p>
<blockquote>
<p>An example of such a homeomorphism isotopic to the identity is “introducing a wiggle” to a curve. Indeed, two curves as isotopic if they bound a disk. The proof relies on the “Alexander trick” on a disk, which can be generalized to prove isotopies of hyperbolic surfaces. (More in <em>A Primer of Mapping Class Groups</em> section 2.2.)</p>
</blockquote>
<figure><figcaption></figcaption><img src="/assets/img/2017/hyperbolic/iso.jpeg" /></figure>
<blockquote>
<p>A non-example of a homeomorphism homotopic to the identity is a <a href="https://en.wikipedia.org/wiki/Dehn_twist">Dehn twist</a>, which consists of cutting, rotating and gluing back.</p>
</blockquote>
<figure><figcaption></figcaption><img src="/assets/img/2017/hyperbolic/non-iso.jpeg" /></figure>
<blockquote>
<p>The markings of green and pink tori differ because the pink marking has a Dehn twist. (Scroll up!)</p>
</blockquote>
<p>Schwartz’s <a href="https://www.math.brown.edu/~res/Papers/surfacebook.pdf">Mostly Surfaces</a> Chapter 20 offers good coverage of this point of view.</p>
<h3 id="group-theoretic-connection">Group theoretic connection</h3>
<p>We may consider different <em>choices</em> of <em>curves</em> representing the generators of the fundamental group as different markings of the torus.<label for="note" class="margin-toggle sidenote-number"></label><input type="checkbox" id="note" class="margin-toggle" /><span class="sidenote"><strong>Note:</strong> emphasis on choice of curves, not the generators themselves. </span></p>
<blockquote>
<p>Let <script type="math/tex">(X_1, \lambda_1, \lambda_2)</script> be the green torus with green distinguished curves and <script type="math/tex">(X_2, \Lambda_1, \Lambda_2)</script> the pink one with pink curves. Then <script type="math/tex">\pi_1(X_1) = \pi_1(X_2) = \langle a, b \mid ab = ba \rangle</script>. For the green torus, we have picked <script type="math/tex">\lambda_1 = a, \lambda_2 = b</script> (the distinguished curves are the standard elements of the fundamental group as we expect). For the pink torus, we pick the pink curves to represent<script type="math/tex">\Lambda_1 = ba = a + b</script>, <script type="math/tex">\Lambda_2 = b</script>.</p>
</blockquote>
<p>If we go back to thinking of the marked tori as parallelograms in <script type="math/tex">\mathbb{R}^2</script> and then are markings as different choices of bases of <script type="math/tex">\mathbb{R}^2</script> which we identify with arrows.</p>
<h3 id="interesting-combinational-fact">Interesting combinational fact</h3>
<p>Let <script type="math/tex">X</script> be the torus identified with the distinguished curves <script type="math/tex">\alpha, \beta</script> of rational slope <script type="math/tex">p/q, r/s</script>. In general, slopes need not be rational as the Teichmüller space admits irrational coordinates. But let’s stick to rational slopes for the sake of the interesting result that will follow.</p>
<p>We may re-shape the torus such that the distinguished curves lie at the center of the square-looking torus.</p>
<figure><figcaption>In this example, $$\text{slope}(\alpha) = 2/1, \text{slope}(\beta) = 2/1$$.</figcaption><img src="/assets/img/2017/hyperbolic/combinatorial-1.jpeg" /></figure>
<p>Then, we may lift torus to its universal cover <script type="math/tex">\mathbb{R}^2</script> along with the distinguished curves, such that a unit square is a copy of the square torus, and the distinguished curves become segments from <script type="math/tex">(0,0)</script> to <script type="math/tex">(q,p)</script> and <script type="math/tex">(r,s)</script> respectively.</p>
<figure><figcaption>In this example, $$(q,p) = (1,2), (r,s) = (2, 1).$$</figcaption><img src="/assets/img/2017/hyperbolic/combinatorial-2.jpeg" /></figure>
<p>We are interested in knowing how many lattice points there are on the on the curves <script type="math/tex">\alpha, \beta</script>, as these correspond to the number of intersection points <script type="math/tex">i(\alpha, \beta)</script>. The interior lattice points biject to the intersection points via redrawing the distinguished slopes (see below)</p>
<blockquote>
<p>In our example, the number of intersection point is clearly <script type="math/tex">3</script> by inspection.</p>
</blockquote>
<figure><figcaption>Added green dots illustrate the bijection. Note: The bijection took me a while to get. </figcaption><img src="/assets/img/2017/hyperbolic/combinatorial-3.jpeg" /></figure>
<p>Using <a href="https://en.wikipedia.org/wiki/Pick%27s_theorem">Pick’s theorem</a>, the area of a parellogram is given by <script type="math/tex">A = j + \frac{b}{2} - 1</script> where <script type="math/tex">j</script> is the number of interior points and <script type="math/tex">b</script> is the number of points on the boundary. Some interior points, will biject (from our previous correspondance) to points on the boundary. Since we don’t want to double count for degenerate cases, we say that there are <script type="math/tex">4</script> points on the boundary which are the <script type="math/tex">4</script> corners of the parallelogram – the rest will be counted by <script type="math/tex">j</script>.</p>
<figure><figcaption>Example of double counting of points on the boundary. The lift of $$\beta$$ has a lattice point on its at (1,0), which is already counted by the green interior point.</figcaption><img src="/assets/img/2017/hyperbolic/combinatorial-4.jpeg" /></figure>
<p>Thus, the number of intersection points in the interior of the lattice is given by</p>
<div class="mathblock"><script type="math/tex; mode=display">
\begin{align*}
& j = A - \frac{b}{2} + 1 \\
& j = \det(P) - \frac{4}{2} + 1 \\
& j = \left|rq - ps\right| - 1
\end{align*}
</script></div>
<p>Now, <script type="math/tex">j + 1 = i(\alpha, \beta)</script>, since the number of intersections is one plus the number of interior points by the argument above. Thus</p>
<div class="mathblock"><script type="math/tex; mode=display">
i(\alpha, \beta) = \left| rq-ps \right|
</script></div>
<p>This number is also known as the <em>algebraic intersection</em> of the torus.<label for="algebraic" class="margin-toggle sidenote-number"></label><input type="checkbox" id="algebraic" class="margin-toggle" /><span class="sidenote">algebraic as opposed to geometric. Algebraic intersection numbers are oriented whereas geometric intersection numbers are not. </span></p>
<p><strong>Punchline</strong> A torus has intersection number <script type="math/tex">1</script> if and only if it’s determinant is <script type="math/tex">1</script>!</p>
<h2 id="mapping-class-group-of-the-torus">Mapping Class Group of the Torus</h2>
<p>The Mapping class group of the torus is <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> . It is well-known that <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> are generated by the elements<label for="well-known" class="margin-toggle sidenote-number"></label><input type="checkbox" id="well-known" class="margin-toggle" /><span class="sidenote">Not that <em>I</em> knew lol. Prof. Rafi subsequently remarked that the operations which do not change the determinant are adding one row with one another, and switching two rows, which is exactly what these two matrices represent. <em>Now we know :)!</em> </span></p>
<div class="mathblock"><script type="math/tex; mode=display">
A =
\begin{pmatrix}
1 & 1 \\ 0 & 1
\end{pmatrix},
\quad
B =
\begin{pmatrix}
0 & 1 \\ -1 & 0
\end{pmatrix}.
</script></div>
<p>This is the change of basis group for <script type="math/tex">\mathbb{Z}^2</script> that we have hinted at at the beginning. It has a natural action on the Teichmüller space, as we will see in the next section.</p>
<p>For now, we are going to offer a few interpretations of the action of the mapping class group as relating to the torus itself.</p>
<blockquote>
<p><strong>Note: Computing the mapping class group.</strong> Roughly speaking, the mapping class group can be computed using a variant of the Alexander method on the annulus. We are not going to do this here. Farb and Margalit do this in <em>Primer to Mapping Class Groups</em> section 2.2. There will be more references on this at the end.</p>
</blockquote>
<h3 id="group-theoretic">Group Theoretic</h3>
<p>Each element of the mapping class group takes the standard basis to a to unique basis of <script type="math/tex">\mathbb{Z}^2</script>. Equivalently, the mapping class group acts faithfully on the isomorphism maps between <script type="math/tex">\pi_1(S) \to \pi_1(X)</script>.</p>
<h3 id="topological">Topological</h3>
<p>The action of the map is given by natural the composition of the homeomorphism <script type="math/tex">h</script> on the homeomorphisms given by the markings.</p>
<p><script type="math/tex">A</script> corresponds to making a Dehn twist on the second generator,</p>
<figure><figcaption></figcaption><img src="/assets/img/2017/hyperbolic/topogen1.jpeg" /></figure>
<p>whereas the <script type="math/tex">B</script> interchanges the markings and reverses the direction of one of them.</p>
<figure><figcaption></figcaption><img src="/assets/img/2017/hyperbolic/topogen2.jpeg" /></figure>
<p>At first, these maps can seem odd and difficult to picture as homeomorphisms compared to our vanilla interpretations of homeomorphism (at least in the homotop sense which we are used to when we picture a cup changing into a donut), and made me doubt they were actual homeomorphisms<label for="homeomorphisms" class="margin-toggle sidenote-number"></label><input type="checkbox" id="homeomorphisms" class="margin-toggle" /><span class="sidenote">so continuous and bijective </span> but then we realize that’s because the mapping class group is <em>exactly</em> the homeomorphisms which are <em>not</em> isotopic to the identity!</p>
<p>Then, I remembered the <a href="/articles/16/Torus-vs-Its-Embedding-in-Three-Space">torus vs its embedding in three-space</a>. Viewing the tori as what they actually are, which is the cross-section of two circles, the continuity and bijectivity of the maps are clearer.</p>
<figure><figcaption>This map is continuous since every small variation in its image is induced by a small variation in its domain. It is bijective since it has an inverse, which is marking an arc in the opposite direction on the second coordinate. Note that this picture is misleading since the domain is over integers, not continuous circles. Thus, there are no arcs that don't form a loop such as the purple one (that is drawn for intuition).</figcaption><img src="/assets/img/2017/hyperbolic/topogen12.jpeg" /></figure>
<figure><figcaption></figcaption><img src="/assets/img/2017/hyperbolic/topogen22.jpeg" /></figure>
<h3 id="combinatorial">Combinatorial</h3>
<p>(<em>Nice connection with Farey graph</em>)</p>
<p>Perhaps the most beautiful connection,</p>
<p><script type="math/tex">\mid rq - ps \mid = 1 \iff \frac{p}{q}, \frac{r}{s}</script> form an edge on the Farey graph. <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> acts on the graph in the following way.</p>
<div class="mathblock"><script type="math/tex; mode=display">
\begin{pmatrix} 1 & 1 \\ 0 & 1 \end{pmatrix} \begin{pmatrix} p & q \\ r & s \end{pmatrix} = \begin{pmatrix} p + r & q + s \\ r & s \end{pmatrix} \\
\begin{pmatrix} 0 & 1 \\ -1 & 0 \end{pmatrix} \begin{pmatrix} p & q \\ r & s \end{pmatrix}= \begin{pmatrix} r & s \\ -p & -q \end{pmatrix}
</script></div>
<p>which we interpret as</p>
<div class="mathblock"><script type="math/tex; mode=display">
\left(\frac{p}{q}, \frac{r}{s}\right) \to \left(\frac{p+r}{q+s}, \frac{r}{s}\right) \text{ and } \left(\frac{p}{q}, \frac{r}{s}\right) \to \left(\frac{r}{s}, \frac{-p}{-q}\right)
</script></div>
<p>respectively.</p>
<p>The first generators sends the edge <script type="math/tex">(1/0, 0/1) \mapsto (1/1, 0/1) \mapsto (1/2, 0/1) \mapsto (1/3, 0/1)</script> and so on. The second generator inverts the direction of the edge.</p>
<figure><figcaption>Picture illustrating the action of the MCG on the Farey graph. The orientation of the arrow indicates which vertex stays fixed at each step.</figcaption><img src="/assets/img/2017/hyperbolic/farey-gen1.png" /></figure>
<p>If we applied the second generator we would start with <script type="math/tex">(0/1, -1/0) \mapsto (-1/1, -1/0) \mapsto (-2/1, -1/0) \mapsto (-3/1, -1/0)</script> and so on.</p>
<figure><figcaption>Picture illustrating the action of the MCG on the Farey graph. The orientation of the arrow indicates which vertex stays fixed at each step.</figcaption><img src="/assets/img/2017/hyperbolic/farey-gen2.png" /></figure>
<p>This is beautifully illustrated on the Farey graph, where <script type="math/tex">1/0 = -1/0 = \infty</script>.</p>
<p><script type="math/tex">% <![CDATA[
\begin{pmatrix} 1 & 1 \\ 0 & 1 \end{pmatrix}^{-1} %]]></script> sends <script type="math/tex">(1/0, 0/1) \mapsto (-1/1, 0/1)</script> <script type="math/tex">\mapsto (-1/2, 0/1) \mapsto (-1/3, 0/1).</script></p>
<figure><figcaption>Picture illustrating the action of the MCG on the Farey graph. The orientation of the arrow indicates which vertex stays fixed at each step.</figcaption><img src="/assets/img/2017/hyperbolic/farey-gen3.png" /></figure>
<p>With these pictures, it is easy to see that the action of the mapping class group is transitive on the Farey graph.</p>
<blockquote>
<p><strong>Possible point of confusion:</strong> <em>Are irrational slopes not markings since they are elements of the Teichmuller space? Shouldn’t the mapping class group act transitively on those too?</em></p>
<p>I was confused about this for a while. Yes, the irrational slopes are also markings since they have representative in <script type="math/tex">\mathbb{H}</script>, which is the space of markings. They do not correspond to an element of the mapping class group in the sense there is no bijection between an element of the MCG and an irrational basis in the edges of the Farey graph like there is for rational bases (by sending <script type="math/tex">p/q</script> to the element mapping <script type="math/tex">0 \mapsto p/q</script>.)</p>
<p>Indeed, the mapping class group has a natural <em>action</em> on the Teichmüller space (say by adding a Dehn twist to a marking or inverting the markings), but its definition is first and foremost a topological definition relating to classes of orientation-preserving homeomorphisms. <em>It’s very easy to confuse the mapping class group with the group permuting the markings, but it is not.</em> The group acting transitively the markings for the torus is <script type="math/tex">\text{PSL}_2(\mathbb{R})</script>,while the mapping class group is <script type="math/tex">\text{SL}_2(\mathbb{Z})</script>, which does have a natural <script type="math/tex">\text{PSL}_2(\mathbb{Z})</script> action on the Teichmüller space, as we will see in the last section.</p>
</blockquote>
<h3 id="note-on-moduli-spaces">Note on Moduli Spaces</h3>
<p>You may be wondering what’s left of <script type="math/tex">\mathbb{H}</script>** once we mod by the action of <script type="math/tex">\text{SL}_2(\mathbb{R})</script>. That is precisely what the moduli space of the torus is.<strong>The moduli space of the torus is given by the Teichmüller space modulo the action of the mapping class group</strong>.</p>
<blockquote>
<p>The tori with basis <script type="math/tex">\{(1,0), (0,1\}</script> and <script type="math/tex">\{(1,0),(1,1)\}</script> we saw at the beginning have different <script type="math/tex">\tau</script> parameters (<script type="math/tex">i</script> and <script type="math/tex">i+1</script> respectively) and thus are distinct as points in the Teichmüller space.
However, they represent the same point in the <em>moduli space</em> of the torus because they differ by a Dehn twist.</p>
</blockquote>
<p>To come back to the previous possible point of confusion, if the MCG acted transitively on the Teichmüller, then the moduli space would be trivial. Instead, it is represented by the fundamental domain of <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> over the <script type="math/tex">\mathbb{H}</script>.</p>
<figure><figcaption>In grey: the fundamental domain representing the moduli space of the torus. In blue: planar version of the Farey graph bouding free regular sets. Read more in source: [wikipedia](https://en.wikipedia.org/wiki/Fundamental_domain).</figcaption><img src="/assets/img/2017/hyperbolic/modspacetor.png" /></figure>
<h2 id="putting-it-all-together">Putting it all together</h2>
<p>Here comes the last punchline. Recall from complex analysis that <script type="math/tex">\text{PSL}_2(\mathbb{R})</script> acts isometrically transitively on the upper-half plane <script type="math/tex">\mathbb{H}</script><label for="recall" class="margin-toggle sidenote-number"></label><input type="checkbox" id="recall" class="margin-toggle" /><span class="sidenote">If you can’t recall this, that’s totally fine - it’s a fact of complex analysis that should be available in any textbook :) </span>, which can be thought of as the Teichmüller space of the torus. An element of <script type="math/tex">\text{PSL}_2(\mathbb{R})</script> is of the form</p>
<div class="mathblock"><script type="math/tex; mode=display">
\begin{pmatrix} a & b \\ c & d \end{pmatrix}, a, b, c, d \in \mathbb{R} \qquad ac - bd = 1.
</script></div>
<p>and acts by Mobius transformation on an element <script type="math/tex">\tau \in \mathbb{H}</script></p>
<div class="mathblock"><script type="math/tex; mode=display">
\begin{pmatrix} a & b \\ c & d \end{pmatrix} \tau = \frac{a\tau + b}{c\tau + d}.
</script></div>
<p>The elements of <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> are of the same form as those of <script type="math/tex">\text{PSL}_2(\mathbb{Z})</script>, but we picked its action to be linear over the bases of <script type="math/tex">\mathbb{Z}^2</script> (change of basis action).</p>
<p><strong>Thus, there is a map from the mapping class group <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> of the torus to the Mobius transformation <script type="math/tex">\text{PSL}_2(\mathbb{R})</script> of the upper-half plane, and this group turns out to be the group of isometries in the hyperbolic plane <script type="math/tex">\mathbb{H}</script>.</strong></p>
<p>Recall the generators for <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> and <script type="math/tex">\text{PSL}_2(\mathbb{Z}) = \text{SL}_2(\mathbb{Z})/\langle \pm 1 \rangle</script><label for="pslsl" class="margin-toggle sidenote-number"></label><input type="checkbox" id="pslsl" class="margin-toggle" /><span class="sidenote">Meaning <script type="math/tex">A, -A \in \text{SL}_2(\mathbb{Z})</script> represent the same element in <script type="math/tex">\text{PSL}_2(\mathbb{Z})</script>. This is because the minus sign cancel on the top and bottom of the fraction (write it out if you do not see it)! </span>:</p>
<div class="mathblock"><script type="math/tex; mode=display">
A =
\begin{pmatrix}
1 & 1 \\ 0 & 1
\end{pmatrix},
\quad
B =
\begin{pmatrix}
0 & 1 \\ -1 & 0
\end{pmatrix}.
</script></div>
<p><script type="math/tex">A</script> sends by linear fractional transformation the point <script type="math/tex">\tau</script> on the upper half-plane to <script type="math/tex">\frac{1 \cdot \tau + 1}{0 \cdot \tau + 1} = \tau + 1</script>. <script type="math/tex">B</script> sends <script type="math/tex">\tau \mapsto \frac{0 \cdot \tau + 1}{-1\cdot \tau + 0} = - \frac{1}{\tau}</script>.</p>
<p>Take your standard basis torus generated by <script type="math/tex">\{(1,0),(0,1)\}.</script> This is identified with the point <script type="math/tex">i \in \mathbb{H}</script>.</p>
<p>Under the <script type="math/tex">\text{PSL}_2(\mathbb{Z})</script> action of <script type="math/tex">A</script>, <script type="math/tex">i</script> gets sent to <script type="math/tex">i + 1</script>, which corresponds to the torus generated by <script type="math/tex">\{(1,0),(1,1)\}</script>. But this is also exactly where the linear <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> action of <script type="math/tex">A</script> sends our standard basis!</p>
<figure><figcaption>Shortest curves in blue on the pink torus, where only one correspond with the generators of the fundamental group (the edges of the pink parallelogram)</figcaption><img src="/assets/img/2017/hyperbolic/compatible1.jpeg" /></figure>
<p>Under the <script type="math/tex">\text{PSL}_2(\mathbb{Z})</script> action of <script type="math/tex">B</script>, <script type="math/tex">i</script> gets sent to <script type="math/tex">-\frac{1}{i} = - (-i) = i</script>. This is also exactly where the linear <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> action of <script type="math/tex">A</script> sends our standard basis once we’ve rotated the image back to the upper half-plane.</p>
<figure><figcaption>Shortest curves in blue on the pink torus, where only one correspond with the generators of the fundamental group (the edges of the pink parallelogram)</figcaption><img src="/assets/img/2017/hyperbolic/compatible2.jpeg" /></figure>
<p><strong>The action of the Mobius transformation on the complex plane is compatible with the action of <script type="math/tex">\text{SL}_2(\mathbb{Z})</script> on the the lattice!</strong></p>
<p>To Prof. Rafi, there is more to this than pure coincidence. This is one of the reason why we study mapping class groups, Teichmüller spaces and hyperbolic surfaces as as a trifecta of some sort!</p>
<p><em>Ouf! We are done. Give yourself a big tap on the back :).</em></p>
<p>Hope you enjoyed this, and that everything makes much more sense when you reread the definitions!</p>
<h2 id="sources-and-resources">Sources and Resources</h2>
<blockquote>
<p><a href="http://www.math.toronto.edu/~rafi/">Kasra Rafi</a> as recalled by me. Errors are mine. Please let me know of them!</p>
</blockquote>
<blockquote>
<p><a href="https://www.math.brown.edu/~res/Papers/surfacebook.pdf">Notes by Evan Schwarz</a> Chapter 20.</p>
</blockquote>
<blockquote>
<p><a href="http://www.maths.ed.ac.uk/~aar/papers/farbmarg.pdf">A Primer on Mapping Class Groups</a> by Farb and Margalit, sections 10.2 and 10.3; 2.2 for the Alexander method and the computation of the mapping class group of the torus. Here are <a href="https://www.dropbox.com/s/8etcwhwblqi1fwn/Alexander%20trick.pdf?dl=0">illustrated textbook pages</a> on that section (illustrations mine).</p>
</blockquote>
<h2 id="acknowledgements">Acknowledgements</h2>
<blockquote>
<p>Thanks to <a href="http://www.math.toronto.edu/~rafi/">Kasra Rafi</a> for his time and patience teaching this and for agreeing to proofread this!</p>
</blockquote>
<blockquote>
<p>Thanks to Felix Bauckholt (currently an undergrad at Waterloo), for his great questions and feedback which allowed me to significantly clarify this blog post. Always a pleasure to discuss math with you!</p>
</blockquote>
<h2 id="get-in-touch">Get in touch</h2>
<blockquote>
<p>I’m looking for people to read drafts of my blog posts and have 1-1 discussions with. If you’re a motivated, supportive<label for="supp" class="margin-toggle sidenote-number"></label><input type="checkbox" id="supp" class="margin-toggle" /><span class="sidenote">Very important to me. I don’t know everything, and sometimes don’t know anything. </span> undergrad, grad student, or other qualified person who wants to read drafts of my blog posts, ask clarifying questions and give me feedback in return for some 1-1 discussion of hyperbolic geometry, <a href="mailto: homeowmorphism@gmail.com">get in touch with me</a>!</p>
</blockquote>
Sun, 14 Jan 2018 19:00:01 -0500
http://localhost:4000/articles/18/Link-Hyperbolic-Teichmuller-MCG
http://localhost:4000/articles/18/Link-Hyperbolic-Teichmuller-MCGMathematics*FavouritesAlum Check-In Day 6<!--more-->
<p>I had a great time yesterday finally deciphering the academic Haskell code I’ve been stuck on/gave up on for months!!! (Probably 4-5 months) WHOO. (Thanks RC).</p>
<p>Today I want to take full advantage of the situation and</p>
<ul>
<li>Document the code.</li>
<li>Do a complexity analysis (might need to pair with someone on that).</li>
<li>Update myself on where things are conceptually for this project in the light of this code.</li>
</ul>
<p>I’m also going to go to the Women’s Dessert, and if there’s time for anything else I’ll do some networking.</p>
<p>I feel like I’ve given up a bit on</p>
<ul>
<li>Blogging</li>
<li>Pairing with other people on their code.</li>
</ul>
<p>So those two will be the next goals :).</p>
<p>Aside: I’m starting to really resent my hour-long commute each way. I noticed I hate it so much I actually take more time in the morning just bracing myself for it so it takes as long as an hour and a half just to be ok with the whole thing, which has the great added advantage of making me feel like crap by the time I finally hop on the bus to take the train. This morning for example, I just had to become ok with the way Game of Thrones is turning out by reading all the foreshadowing in the books that hinted at the turn of events (even if they arent’ that well executed in the script). Totally inevitable.</p>
<p>Anyway, I consoled myself with reading @<strong>Katie Allen (SP2’17)</strong> ‘s fun and helpful <a href="http://katieamazing.com/blog/2017/05/13/Python-Goodies">I Coded in Python for a Year Without Knowing These Ten Things</a> as well as Julia Evans’ <a href="https://jvns.ca/debugging-zine.pdf">debugging zine</a> and it made it somewhat better. Good news is I’m finally moving out tomorrow to a place right next to the J train! Hurray!!</p>
Mon, 21 Aug 2017 20:00:01 -0400
http://localhost:4000/articles/17/Alum-Checkin-Day-6
http://localhost:4000/articles/17/Alum-Checkin-Day-6RCAlum Check-In Day 5<!--more-->
<p><strong>Weekend</strong></p>
<ul>
<li>Paired with <a href="https://cternus.net/">Christian Ternus</a> on making my own chat server. The whole thing is more complicated than I originally thought and I easily get stuck on bugs I don’t really understand.</li>
<li>Had dessert with <a href="https://github.com/creviera">Allie Crevier</a> while pairing on her starfield project!</li>
</ul>
<p>Hung out a lot! Went to the woman’s dessert, then an excellent concert suggested by <a href="http://www.kateray.net/">Kate Ray</a>, then the movie night followed by delicious Korean BBQ, then touristed around Greenpoint, then watched Game of Thrones (hmm, the plot makes me suspicious) and Skyped a friend. It was pretty fun but it’s time to get to work now.</p>
<p><strong>Today</strong></p>
<p>There are couple workshops I want to do, in addition of advancing my own projects.</p>
<p>I want to attend:</p>
<ul>
<li>The Rust workshop with <a href="http://levien.com/">Raph Levien</a>.</li>
<li>Watch the partial eclipse at Wesley’s.</li>
<li>Go to the Security Chat organized by Christian.</li>
</ul>
<p>I would also like to:</p>
<ul>
<li>Casually advance my understanding of low-level stuff by reading Nicole Orchard’s <a href="https://nicoleorchard.com/blog/compilers">excellent blog post on compilers</a> (done)!</li>
<li>Do some deep thinking about some Haskell code someone sent me for an academic project, googling and asking questions as necessary.</li>
<li>Maybe pair again on the networking if there’s time (or read documentation carefully if no one’s available). This set of bugs is so unfamiliar to me!</li>
</ul>
Sun, 20 Aug 2017 20:00:01 -0400
http://localhost:4000/articles/17/Alum-Checkin-Day-5
http://localhost:4000/articles/17/Alum-Checkin-Day-5RCAlum Check-In Day 4<p><em>Today I gave my first RC presentation whoo~</em></p>
<!--more-->
<p>Otherwise I:</p>
<ul>
<li>Helped prep presentations.</li>
<li>Read up on Haskell.</li>
<li>Went to Games Night, got to know new people and saw some of my batchmates who are now alums 💕.</li>
<li>Finished my first functioning Haskell code yay! Aha, I need someone to explain their spacing rules to me cuz I’m confused.</li>
</ul>
<p>I think I need to get much better at sleep-scheduling, so that’ll be my non-RC goal of the week ~.</p>
<p>For the rest of the night I wanna be chill and work on whatever I want :).</p>
Thu, 17 Aug 2017 00:00:01 -0400
http://localhost:4000/articles/17/Alum-Checkin-Day-4
http://localhost:4000/articles/17/Alum-Checkin-Day-4RCAlum Checkin Day 3<p>I ended up making a server yesterday!! Woot!</p>
<!--more-->
<p><strong>Today</strong></p>
<ul>
<li>Broke the ice and learned some Haskell for realsies.</li>
<li>Met up to organize presentations.</li>
<li>Went to the pairing workshop and was matched to <a href="https://github.com/elynnyap">E-Lynn Yap</a>, who taught me about functors in Haskell!</li>
<li>Had dinner with <a href="https://github.com/creviera">Allie Crevier</a> and discussed ideas for her stars project among other (non-programmy) things.</li>
<li>Went to collect keys for my new sublet which is super affordable, a much easier commute to RC and has roof access ~</li>
<li>Prepared my presentation for tomorrow with Aos Dabbagh as guinea pig! This beginner theme thing was <em>not</em> born out of personal experience AT ALL.</li>
</ul>
<p>I think I wanna do some more light Haskell tonight and call it a night!</p>
Tue, 15 Aug 2017 20:00:01 -0400
http://localhost:4000/articles/17/Alum-Checkin-Day-3
http://localhost:4000/articles/17/Alum-Checkin-Day-3RCAlum Batch Checkin Day 2<p><strong>Plan for today</strong></p>
<ul>
<li>Pair with someone on networking.</li>
<li>Blog about Diffie-Hellman.</li>
<li>Read about Haskell OR pair with someone on Haskell OR think of a project to do in Haskell.</li>
</ul>
Mon, 14 Aug 2017 20:00:01 -0400
http://localhost:4000/articles/17/Alum-Checkin-Day-2
http://localhost:4000/articles/17/Alum-Checkin-Day-2RCAlum Batch Checkin Day 1<p><em>Update: I ended up checking-in with the same frequency as last batch, but as my check-ins became more personal, I decided to restrict them to RC’s internal chat system. The alumni check-in end at Day 6.</em></p>
<p>Today was the first RC day for the Fall batch! I’m pretty excited to get to know everyone in the upcoming weeks.</p>
<!--more-->
<p>I spent most of the day socializing with people and taking part of the festivities. I found it actually pretty useful even though this was technically my third first day here. It reminded me of the goals of RC and gave me some renewed motivation and tactics to reach ‘em.</p>
<p>I think I’m going to finish the day casually by reading this <a href="https://jamesroutley.co.uk/tech/2017/08/09/parameterise-python-tests.html">testing parametrization</a> post by RC alum James Routley and see where I can implement that in my own code. Otherwise I want to start fresh tomorrow and pair with someone on networking (or some other topic I’ve been meaning to do ;) )!</p>
Sun, 13 Aug 2017 20:00:01 -0400
http://localhost:4000/articles/17/Alum-Checkin-Day-1
http://localhost:4000/articles/17/Alum-Checkin-Day-1RCCheck-In Day 46: Never Graduate Day<p>On this day of Never Graduate, I am literally <em>not</em> graduating from RC. As I said in a previous post, I’ll be staying for another half-batch because I like it so much here.</p>
<p>I’m going to miss everyone who was here. This place is really carved by the people who are here with the expert guidance of the RC faculty. This place has taught me to value myself and others more that I could imagine. It’s taught me there’s so much fun in asking and giving help with the simple expectation it’s helping build a better community. I feel like I’ve been part of something special and unique. I’m looking forward to keeping in touch with my fellow RCers over the years, all over the world.</p>
<p><em>Unto the check-in.</em>
<!--more--></p>
<p>These past few, I’ve been mostly hanging out with people. Specifically,</p>
<p><strong>Yesterday</strong></p>
<p><em>(What ended up happening)</em></p>
<ul>
<li>Did something professionally hard.</li>
<li>Met with Nancy for jobs.</li>
<li>Plotted about presentations.</li>
<li><a href="https://github.com/creviera">Allie Crevier</a> and I had a super fun double-pairing situation where we switched in-between her teaching me how to webscrap and us collaborating on her stars animation.</li>
<li>Got into unit test writing mode, realized that I wasn’t thinking about the tests meaningfully, started refactoring my code and took a mental note of the situation.</li>
</ul>
<p><strong>Today</strong></p>
<ul>
<li>ALMOST NOT MISSED A SINGLE DAY OF CHECK-INS MONDAY-THURSDAY!!! WHOO.</li>
<li>Gone to Feelings Check-In.</li>
<li>Had a good discussion with <a href="http://joshuahudelson.com/">Joshua Hudelson</a> about our projects. I was thinking about refactoring my code to reflect usage pattern, and sort of got unstuck on how to do that for my specific case! Feel like I’ve leveled-up into starting to think about that stuff!</li>
<li>Went to presentations.</li>
<li>Went to the picnic.</li>
<li>HUGGED EVERYONE WHO WAS LEAVING I HAD A QUALITY INTERACTION WITH. I’LL MISS YOU ALL :’)</li>
</ul>
<p>Keeping track of days so tightly has given me the power to see every day as separate, a new opportunity. I got to see my incremental progress. It’s been really nice, and occasionally feels like a super power.</p>
<p>I <em>think</em> I want to continue doing these check-ins (RC alum edition – reset the counter to zero), and see how I feel about it :).</p>
Wed, 09 Aug 2017 20:00:01 -0400
http://localhost:4000/articles/17/Checkin-Day-46
http://localhost:4000/articles/17/Checkin-Day-46RCCheck-In Day 45<p>AAAH! This is almost my last day here! Or is it?</p>
<p>I’m happy to announce I’ve extended my batch until Sept 15! RC has been a place where I’ve felt truly safe, valued, stimulated and super productive to boot. I’m really looking forward for 5 more weeks of this :).</p>
<p>Ok, onto the check-in.
<!--more--></p>
<p><strong>Today</strong></p>
<p><em>So far</em></p>
<ul>
<li>Did something for my professional life that hard this morning unrelated to coding I’ve been procrastinating on for weeks.</li>
<li>Meet with Nancy for questions about jobs.</li>
<li>Plotted about presentations.</li>
</ul>
<p><em>Next</em></p>
<ul>
<li>Learn to webscrap with Allie Crevier.</li>
<li>Finish the unit tests on Goofycoin.</li>
</ul>
<p><strong>Yesterday</strong></p>
<p><em>Came in really late, but this is what I did.</em></p>
<ul>
<li>Went to rock climbing.</li>
<li>Came back and finished refactoring my code for the raytracer project!!! Next I’d like to remove the numpy and scipy dependencies because it’s slowing down an already slow language, but I’m not giving myself too much pressure.</li>
</ul>
Tue, 08 Aug 2017 20:00:01 -0400
http://localhost:4000/articles/17/Checkin-Day-45
http://localhost:4000/articles/17/Checkin-Day-45RCCheck-In Day 44<!--more-->
<p><strong>Yesterday</strong></p>
<ul>
<li>Learned hypothesis testing for Python on my own! It’s the first time I think I’ve been effectively self-teaching (reading the documentation carefully, making sure I understand roughly how things are implemented) and I’m glad I’ve acquired enough understanding, patience, and interest in programming to do that.</li>
<li>Refactored my raytracing code – I hope for this particular Github repo to be nice and easy to understand.</li>
<li>Plotted presentations organization with Sabelo.</li>
<li>Hung out with people who are leaving soon.</li>
<li>Did an overview of linear algebra concepts with King David.</li>
</ul>
<p>I ended up stayed really, really late hanging out with people who I’ll miss a lot when this batch is over, and now I’m all tired today and haven’t started working much yet.</p>
<p>I’ll either call it an exceptional quits and go climbing, go climbing and get back, or power through the rest of this evening doing webscraping and refactoring my code. We shall see.</p>
Mon, 07 Aug 2017 20:00:01 -0400
http://localhost:4000/articles/17/Checkin-Day-44
http://localhost:4000/articles/17/Checkin-Day-44RC