<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
    <title>Material Conditions</title>
    <link rel="self" type="application/atom+xml" href="https://blg.mattearnshaw.com/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://blg.mattearnshaw.com"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-05-02T00:00:00+00:00</updated>
    <id>https://blg.mattearnshaw.com/atom.xml</id>
    <entry xml:lang="en">
        <title>Commutative diagrams</title>
        <published>2026-05-02T00:00:00+00:00</published>
        <updated>2026-05-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://blg.mattearnshaw.com/posts/diagrams/"/>
        <id>https://blg.mattearnshaw.com/posts/diagrams/</id>
        
        <content type="html" xml:base="https://blg.mattearnshaw.com/posts/diagrams/">&lt;p&gt;A pullback square, rendered to SVG at build time:&lt;&#x2F;p&gt;

&lt;figure class=&quot;tikz&quot;&gt;&lt;svg xmlns=&quot;http:&#x2F;&#x2F;www.w3.org&#x2F;2000&#x2F;svg&quot; xmlns:xlink=&quot;http:&#x2F;&#x2F;www.w3.org&#x2F;1999&#x2F;xlink&quot; width=&quot;66.08pt&quot; height=&quot;53.73pt&quot; viewBox=&quot;0 0 66.08 53.73&quot;&gt;
&lt;defs&gt;
&lt;g&gt;
&lt;g id=&quot;glyph-0-0&quot;&gt;
&lt;path d=&quot;M 3.015625 -3.15625 L 4.71875 -3.15625 C 6.125 -3.15625 7.515625 -4.1875 7.515625 -5.296875 C 7.515625 -6.078125 6.859375 -6.8125 5.546875 -6.8125 L 2.328125 -6.8125 C 2.140625 -6.8125 2.03125 -6.8125 2.03125 -6.625 C 2.03125 -6.5 2.109375 -6.5 2.3125 -6.5 C 2.4375 -6.5 2.625 -6.484375 2.734375 -6.484375 C 2.90625 -6.453125 2.953125 -6.4375 2.953125 -6.3125 C 2.953125 -6.28125 2.953125 -6.25 2.921875 -6.125 L 1.578125 -0.78125 C 1.484375 -0.390625 1.46875 -0.3125 0.671875 -0.3125 C 0.515625 -0.3125 0.40625 -0.3125 0.40625 -0.125 C 0.40625 0 0.515625 0 0.546875 0 C 0.828125 0 1.53125 -0.03125 1.8125 -0.03125 C 2.03125 -0.03125 2.25 -0.015625 2.453125 -0.015625 C 2.671875 -0.015625 2.890625 0 3.09375 0 C 3.171875 0 3.296875 0 3.296875 -0.203125 C 3.296875 -0.3125 3.203125 -0.3125 3.015625 -0.3125 C 2.65625 -0.3125 2.375 -0.3125 2.375 -0.484375 C 2.375 -0.546875 2.390625 -0.59375 2.40625 -0.65625 Z M 3.734375 -6.125 C 3.828125 -6.46875 3.84375 -6.5 4.28125 -6.5 L 5.234375 -6.5 C 6.0625 -6.5 6.59375 -6.234375 6.59375 -5.546875 C 6.59375 -5.15625 6.390625 -4.296875 6 -3.9375 C 5.5 -3.484375 4.90625 -3.40625 4.46875 -3.40625 L 3.0625 -3.40625 Z M 3.734375 -6.125 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-0-1&quot;&gt;
&lt;path d=&quot;M 1.78125 -1.140625 C 1.390625 -0.484375 1 -0.34375 0.5625 -0.3125 C 0.4375 -0.296875 0.34375 -0.296875 0.34375 -0.109375 C 0.34375 -0.046875 0.40625 0 0.484375 0 C 0.75 0 1.0625 -0.03125 1.328125 -0.03125 C 1.671875 -0.03125 2.015625 0 2.328125 0 C 2.390625 0 2.515625 0 2.515625 -0.1875 C 2.515625 -0.296875 2.4375 -0.3125 2.359375 -0.3125 C 2.140625 -0.328125 1.890625 -0.40625 1.890625 -0.65625 C 1.890625 -0.78125 1.953125 -0.890625 2.03125 -1.03125 L 2.796875 -2.296875 L 5.296875 -2.296875 C 5.3125 -2.09375 5.453125 -0.734375 5.453125 -0.640625 C 5.453125 -0.34375 4.9375 -0.3125 4.734375 -0.3125 C 4.59375 -0.3125 4.5 -0.3125 4.5 -0.109375 C 4.5 0 4.609375 0 4.640625 0 C 5.046875 0 5.46875 -0.03125 5.875 -0.03125 C 6.125 -0.03125 6.765625 0 7.015625 0 C 7.0625 0 7.1875 0 7.1875 -0.203125 C 7.1875 -0.3125 7.09375 -0.3125 6.953125 -0.3125 C 6.34375 -0.3125 6.34375 -0.375 6.3125 -0.671875 L 5.703125 -6.890625 C 5.6875 -7.09375 5.6875 -7.140625 5.515625 -7.140625 C 5.359375 -7.140625 5.3125 -7.0625 5.25 -6.96875 Z M 2.984375 -2.609375 L 4.9375 -5.90625 L 5.265625 -2.609375 Z M 2.984375 -2.609375 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-0-2&quot;&gt;
&lt;path d=&quot;M 1.59375 -0.78125 C 1.5 -0.390625 1.46875 -0.3125 0.6875 -0.3125 C 0.515625 -0.3125 0.421875 -0.3125 0.421875 -0.109375 C 0.421875 0 0.515625 0 0.6875 0 L 4.25 0 C 5.828125 0 7 -1.171875 7 -2.15625 C 7 -2.875 6.421875 -3.453125 5.453125 -3.5625 C 6.484375 -3.75 7.53125 -4.484375 7.53125 -5.4375 C 7.53125 -6.171875 6.875 -6.8125 5.6875 -6.8125 L 2.328125 -6.8125 C 2.140625 -6.8125 2.046875 -6.8125 2.046875 -6.609375 C 2.046875 -6.5 2.140625 -6.5 2.328125 -6.5 C 2.34375 -6.5 2.53125 -6.5 2.703125 -6.484375 C 2.875 -6.453125 2.96875 -6.453125 2.96875 -6.3125 C 2.96875 -6.28125 2.953125 -6.25 2.9375 -6.125 Z M 3.09375 -3.65625 L 3.71875 -6.125 C 3.8125 -6.46875 3.828125 -6.5 4.25 -6.5 L 5.546875 -6.5 C 6.421875 -6.5 6.625 -5.90625 6.625 -5.46875 C 6.625 -4.59375 5.765625 -3.65625 4.5625 -3.65625 Z M 2.65625 -0.3125 C 2.515625 -0.3125 2.5 -0.3125 2.4375 -0.3125 C 2.328125 -0.328125 2.296875 -0.34375 2.296875 -0.421875 C 2.296875 -0.453125 2.296875 -0.46875 2.359375 -0.640625 L 3.046875 -3.421875 L 4.921875 -3.421875 C 5.875 -3.421875 6.078125 -2.6875 6.078125 -2.265625 C 6.078125 -1.28125 5.1875 -0.3125 4 -0.3125 Z M 2.65625 -0.3125 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-0-3&quot;&gt;
&lt;path d=&quot;M 7.578125 -6.921875 C 7.578125 -6.953125 7.5625 -7.03125 7.46875 -7.03125 C 7.4375 -7.03125 7.421875 -7.015625 7.3125 -6.90625 L 6.625 -6.140625 C 6.53125 -6.28125 6.078125 -7.03125 4.96875 -7.03125 C 2.734375 -7.03125 0.5 -4.828125 0.5 -2.515625 C 0.5 -0.875 1.671875 0.21875 3.203125 0.21875 C 4.0625 0.21875 4.828125 -0.171875 5.359375 -0.640625 C 6.28125 -1.453125 6.453125 -2.359375 6.453125 -2.390625 C 6.453125 -2.5 6.34375 -2.5 6.328125 -2.5 C 6.265625 -2.5 6.21875 -2.46875 6.203125 -2.390625 C 6.109375 -2.109375 5.875 -1.390625 5.1875 -0.8125 C 4.5 -0.265625 3.875 -0.09375 3.359375 -0.09375 C 2.46875 -0.09375 1.40625 -0.609375 1.40625 -2.15625 C 1.40625 -2.734375 1.609375 -4.34375 2.609375 -5.515625 C 3.21875 -6.21875 4.15625 -6.71875 5.046875 -6.71875 C 6.0625 -6.71875 6.65625 -5.953125 6.65625 -4.796875 C 6.65625 -4.390625 6.625 -4.390625 6.625 -4.28125 C 6.625 -4.1875 6.734375 -4.1875 6.765625 -4.1875 C 6.890625 -4.1875 6.890625 -4.203125 6.953125 -4.390625 Z M 7.578125 -6.921875 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-1-0&quot;&gt;
&lt;path d=&quot;M 0.515625 0.84375 C 0.46875 1.046875 0.453125 1.09375 0.1875 1.09375 C 0.09375 1.09375 0 1.09375 0 1.25 C 0 1.328125 0.0625 1.359375 0.09375 1.359375 C 0.265625 1.359375 0.5 1.328125 0.6875 1.328125 C 0.921875 1.328125 1.1875 1.359375 1.421875 1.359375 C 1.484375 1.359375 1.5625 1.328125 1.5625 1.203125 C 1.5625 1.09375 1.46875 1.09375 1.375 1.09375 C 1.21875 1.09375 1.03125 1.09375 1.03125 1.015625 C 1.03125 0.984375 1.09375 0.796875 1.109375 0.703125 C 1.203125 0.328125 1.296875 -0.046875 1.375 -0.34375 C 1.453125 -0.203125 1.671875 0.0625 2.09375 0.0625 C 2.9375 0.0625 3.875 -0.875 3.875 -1.90625 C 3.875 -2.71875 3.3125 -3.078125 2.84375 -3.078125 C 2.40625 -3.078125 2.03125 -2.78125 1.84375 -2.578125 C 1.734375 -2.984375 1.34375 -3.078125 1.125 -3.078125 C 0.859375 -3.078125 0.6875 -2.890625 0.578125 -2.703125 C 0.4375 -2.46875 0.328125 -2.046875 0.328125 -2 C 0.328125 -1.921875 0.421875 -1.921875 0.453125 -1.921875 C 0.546875 -1.921875 0.546875 -1.9375 0.59375 -2.125 C 0.703125 -2.53125 0.84375 -2.875 1.109375 -2.875 C 1.296875 -2.875 1.34375 -2.71875 1.34375 -2.53125 C 1.34375 -2.453125 1.328125 -2.375 1.3125 -2.328125 Z M 1.84375 -2.234375 C 2.25 -2.78125 2.59375 -2.875 2.8125 -2.875 C 3.09375 -2.875 3.328125 -2.671875 3.328125 -2.203125 C 3.328125 -1.921875 3.171875 -1.203125 2.96875 -0.796875 C 2.78125 -0.453125 2.453125 -0.125 2.09375 -0.125 C 1.59375 -0.125 1.46875 -0.65625 1.46875 -0.734375 C 1.46875 -0.765625 1.484375 -0.8125 1.484375 -0.84375 Z M 1.84375 -2.234375 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-1-1&quot;&gt;
&lt;path d=&quot;M 2.84375 -2.75 L 3.515625 -2.75 C 3.65625 -2.75 3.75 -2.75 3.75 -2.90625 C 3.75 -3 3.65625 -3 3.53125 -3 L 2.890625 -3 C 3.046875 -3.890625 3.09375 -4.203125 3.15625 -4.40625 C 3.1875 -4.5625 3.34375 -4.703125 3.515625 -4.703125 C 3.515625 -4.703125 3.703125 -4.703125 3.84375 -4.625 C 3.546875 -4.53125 3.53125 -4.28125 3.53125 -4.25 C 3.53125 -4.09375 3.65625 -3.984375 3.8125 -3.984375 C 4 -3.984375 4.203125 -4.140625 4.203125 -4.40625 C 4.203125 -4.734375 3.875 -4.90625 3.515625 -4.90625 C 3.203125 -4.90625 2.859375 -4.734375 2.671875 -4.390625 C 2.53125 -4.125 2.484375 -3.8125 2.328125 -3 L 1.78125 -3 C 1.640625 -3 1.546875 -3 1.546875 -2.84375 C 1.546875 -2.75 1.640625 -2.75 1.765625 -2.75 L 2.28125 -2.75 C 2.28125 -2.703125 1.84375 -0.203125 1.671875 0.546875 C 1.640625 0.703125 1.515625 1.21875 1.1875 1.21875 C 1.171875 1.21875 1.015625 1.21875 0.875 1.140625 C 1.15625 1.046875 1.1875 0.796875 1.1875 0.765625 C 1.1875 0.609375 1.0625 0.5 0.90625 0.5 C 0.71875 0.5 0.515625 0.65625 0.515625 0.921875 C 0.515625 1.234375 0.84375 1.421875 1.1875 1.421875 C 1.625 1.421875 1.9375 0.96875 2.015625 0.8125 C 2.265625 0.34375 2.4375 -0.515625 2.453125 -0.59375 Z M 2.84375 -2.75 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-1-2&quot;&gt;
&lt;path d=&quot;M 3.703125 -2.578125 C 3.734375 -2.671875 3.734375 -2.703125 3.734375 -2.71875 C 3.734375 -2.875 3.609375 -2.9375 3.5 -2.9375 C 3.34375 -2.9375 3.203125 -2.8125 3.171875 -2.671875 C 3.0625 -2.859375 2.828125 -3.078125 2.453125 -3.078125 C 1.59375 -3.078125 0.671875 -2.140625 0.671875 -1.140625 C 0.671875 -0.421875 1.15625 0 1.734375 0 C 2.0625 0 2.359375 -0.15625 2.609375 -0.375 L 2.453125 0.25 C 2.375 0.546875 2.328125 0.734375 2.0625 0.96875 C 1.75 1.21875 1.453125 1.21875 1.28125 1.21875 C 0.96875 1.21875 0.875 1.203125 0.75 1.171875 C 0.921875 1.09375 0.96875 0.921875 0.96875 0.828125 C 0.96875 0.65625 0.84375 0.578125 0.703125 0.578125 C 0.5 0.578125 0.296875 0.734375 0.296875 1 C 0.296875 1.421875 0.90625 1.421875 1.296875 1.421875 C 2.390625 1.421875 2.84375 0.859375 2.953125 0.46875 Z M 2.75 -0.921875 C 2.71875 -0.828125 2.71875 -0.8125 2.59375 -0.671875 C 2.359375 -0.375 2.015625 -0.1875 1.75 -0.1875 C 1.40625 -0.1875 1.234375 -0.5 1.234375 -0.859375 C 1.234375 -1.15625 1.421875 -1.9375 1.609375 -2.25 C 1.890625 -2.734375 2.21875 -2.875 2.453125 -2.875 C 2.953125 -2.875 3.078125 -2.359375 3.078125 -2.28125 C 3.078125 -2.265625 3.078125 -2.265625 3.0625 -2.1875 Z M 2.75 -0.921875 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-2-0&quot;&gt;
&lt;path d=&quot;M 1.984375 -3.171875 C 1.984375 -3.3125 1.96875 -3.3125 1.796875 -3.3125 C 1.453125 -3 0.890625 -3 0.796875 -3 L 0.71875 -3 L 0.71875 -2.78125 L 0.796875 -2.78125 C 0.90625 -2.78125 1.234375 -2.796875 1.53125 -2.921875 L 1.53125 -0.421875 C 1.53125 -0.28125 1.53125 -0.21875 1 -0.21875 L 0.75 -0.21875 L 0.75 0 C 1.015625 -0.015625 1.46875 -0.015625 1.75 -0.015625 C 2.046875 -0.015625 2.484375 -0.015625 2.765625 0 L 2.765625 -0.21875 L 2.515625 -0.21875 C 1.984375 -0.21875 1.984375 -0.28125 1.984375 -0.421875 Z M 1.984375 -3.171875 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-2-1&quot;&gt;
&lt;path d=&quot;M 2.9375 -0.96875 L 2.71875 -0.96875 C 2.71875 -0.875 2.65625 -0.5625 2.578125 -0.515625 C 2.546875 -0.484375 2.125 -0.484375 2.046875 -0.484375 L 1.078125 -0.484375 C 1.40625 -0.71875 1.765625 -1 2.0625 -1.203125 C 2.515625 -1.515625 2.9375 -1.796875 2.9375 -2.328125 C 2.9375 -2.96875 2.328125 -3.3125 1.625 -3.3125 C 0.953125 -3.3125 0.453125 -2.9375 0.453125 -2.4375 C 0.453125 -2.1875 0.671875 -2.140625 0.75 -2.140625 C 0.875 -2.140625 1.03125 -2.234375 1.03125 -2.4375 C 1.03125 -2.609375 0.90625 -2.71875 0.75 -2.71875 C 0.890625 -2.953125 1.1875 -3.09375 1.515625 -3.09375 C 2 -3.09375 2.40625 -2.8125 2.40625 -2.328125 C 2.40625 -1.90625 2.109375 -1.578125 1.734375 -1.265625 L 0.515625 -0.234375 C 0.46875 -0.1875 0.453125 -0.1875 0.453125 -0.15625 L 0.453125 0 L 2.765625 0 Z M 2.9375 -0.96875 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-3-0&quot;&gt;
&lt;path d=&quot;M 4.421875 -3.3125 C 4.421875 -3.484375 4.421875 -3.65625 4.21875 -3.65625 C 4.015625 -3.65625 4.015625 -3.4375 4.015625 -3.265625 L 4.015625 -0.171875 L 0.90625 -0.171875 C 0.734375 -0.171875 0.5625 -0.171875 0.5625 0.015625 C 0.5625 0.21875 0.734375 0.21875 0.90625 0.21875 L 4.0625 0.21875 C 4.390625 0.21875 4.421875 0.1875 4.421875 -0.125 Z M 4.421875 -3.3125 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;&#x2F;g&gt;
&lt;&#x2F;defs&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-0-0&quot; x=&quot;10.59052&quot; y=&quot;13.33639&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-0-1&quot; x=&quot;51.18737&quot; y=&quot;13.33639&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-0-2&quot; x=&quot;10.45215&quot; y=&quot;45.37661&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-0-3&quot; x=&quot;51.00681&quot; y=&quot;45.37661&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;butt&quot; stroke-linejoin=&quot;miter&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -11.783159 15.10862 L 11.650435 15.10862 &quot; transform=&quot;matrix(1, 0, 0, -1, 34.64644, 25.95237)&quot;&#x2F;&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -2.073665 2.392175 C -1.694759 0.954675 -0.851009 0.278894 0.00055375 0.00155 C -0.851009 -0.2797 -1.694759 -0.955481 -2.073665 -2.389075 &quot; transform=&quot;matrix(1, 0, 0, -1, 46.49554, 10.8453)&quot;&#x2F;&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-1-0&quot; x=&quot;30.78164&quot; y=&quot;7.14307&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-2-0&quot; x=&quot;34.8886&quot; y=&quot;8.13933&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;butt&quot; stroke-linejoin=&quot;miter&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -20.165971 8.768776 L -20.165971 -8.367942 &quot; transform=&quot;matrix(1, 0, 0, -1, 34.64644, 25.95237)&quot;&#x2F;&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -2.071161 2.390504 C -1.692255 0.95691 -0.848505 0.277222 -0.00084875 -0.00012125 C -0.848505 -0.277465 -1.692255 -0.957153 -2.071161 -2.390746 &quot; transform=&quot;matrix(0, 1, 1, 0, 14.48059, 34.52038)&quot;&#x2F;&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-1-0&quot; x=&quot;4.13909&quot; y=&quot;26.77569&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-2-1&quot; x=&quot;8.24605&quot; y=&quot;27.77195&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-3-0&quot; x=&quot;22.99413&quot; y=&quot;21.4475&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;butt&quot; stroke-linejoin=&quot;miter&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M 20.279341 8.768776 L 20.279341 -8.367942 &quot; transform=&quot;matrix(1, 0, 0, -1, 34.64644, 25.95237)&quot;&#x2F;&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -2.071161 2.392396 C -1.692255 0.954896 -0.848505 0.279115 -0.00084875 0.00177125 C -0.848505 -0.279479 -1.692255 -0.95526 -2.071161 -2.39276 &quot; transform=&quot;matrix(0, 1, 1, 0, 54.92401, 34.52038)&quot;&#x2F;&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-1-1&quot; x=&quot;57.27024&quot; y=&quot;27.69585&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;butt&quot; stroke-linejoin=&quot;miter&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -11.642534 -16.934349 L 11.470747 -16.934349 &quot; transform=&quot;matrix(1, 0, 0, -1, 34.64644, 25.95237)&quot;&#x2F;&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -2.072783 2.389826 C -1.693876 0.956232 -0.850126 0.280451 0.00143625 -0.00079875 C -0.850126 -0.278143 -1.693876 -0.95783 -2.072783 -2.391424 &quot; transform=&quot;matrix(1, 0, 0, -1, 46.31497, 42.88592)&quot;&#x2F;&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-1-2&quot; x=&quot;32.6897&quot; y=&quot;48.23479&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;&#x2F;svg&gt;
&lt;figcaption&gt;A pullback square in some category.&lt;&#x2F;figcaption&gt;&lt;&#x2F;figure&gt;
&lt;p&gt;And a short exact sequence:&lt;&#x2F;p&gt;

&lt;figure class=&quot;tikz&quot;&gt;&lt;svg xmlns=&quot;http:&#x2F;&#x2F;www.w3.org&#x2F;2000&#x2F;svg&quot; xmlns:xlink=&quot;http:&#x2F;&#x2F;www.w3.org&#x2F;1999&#x2F;xlink&quot; width=&quot;175.89pt&quot; height=&quot;20.82pt&quot; viewBox=&quot;0 0 175.89 20.82&quot;&gt;
&lt;defs&gt;
&lt;g&gt;
&lt;g id=&quot;glyph-0-0&quot;&gt;
&lt;path d=&quot;M 4.578125 -3.1875 C 4.578125 -3.984375 4.53125 -4.78125 4.1875 -5.515625 C 3.734375 -6.484375 2.90625 -6.640625 2.5 -6.640625 C 1.890625 -6.640625 1.171875 -6.375 0.75 -5.453125 C 0.4375 -4.765625 0.390625 -3.984375 0.390625 -3.1875 C 0.390625 -2.4375 0.421875 -1.546875 0.84375 -0.78125 C 1.265625 0.015625 2 0.21875 2.484375 0.21875 C 3.015625 0.21875 3.78125 0.015625 4.21875 -0.9375 C 4.53125 -1.625 4.578125 -2.40625 4.578125 -3.1875 Z M 2.484375 0 C 2.09375 0 1.5 -0.25 1.328125 -1.203125 C 1.21875 -1.796875 1.21875 -2.71875 1.21875 -3.3125 C 1.21875 -3.953125 1.21875 -4.609375 1.296875 -5.140625 C 1.484375 -6.328125 2.234375 -6.421875 2.484375 -6.421875 C 2.8125 -6.421875 3.46875 -6.234375 3.65625 -5.25 C 3.765625 -4.6875 3.765625 -3.9375 3.765625 -3.3125 C 3.765625 -2.5625 3.765625 -1.890625 3.65625 -1.25 C 3.5 -0.296875 2.9375 0 2.484375 0 Z M 2.484375 0 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-1-0&quot;&gt;
&lt;path d=&quot;M 1.78125 -1.140625 C 1.390625 -0.484375 1 -0.34375 0.5625 -0.3125 C 0.4375 -0.296875 0.34375 -0.296875 0.34375 -0.109375 C 0.34375 -0.046875 0.40625 0 0.484375 0 C 0.75 0 1.0625 -0.03125 1.328125 -0.03125 C 1.671875 -0.03125 2.015625 0 2.328125 0 C 2.390625 0 2.515625 0 2.515625 -0.1875 C 2.515625 -0.296875 2.4375 -0.3125 2.359375 -0.3125 C 2.140625 -0.328125 1.890625 -0.40625 1.890625 -0.65625 C 1.890625 -0.78125 1.953125 -0.890625 2.03125 -1.03125 L 2.796875 -2.296875 L 5.296875 -2.296875 C 5.3125 -2.09375 5.453125 -0.734375 5.453125 -0.640625 C 5.453125 -0.34375 4.9375 -0.3125 4.734375 -0.3125 C 4.59375 -0.3125 4.5 -0.3125 4.5 -0.109375 C 4.5 0 4.609375 0 4.640625 0 C 5.046875 0 5.46875 -0.03125 5.875 -0.03125 C 6.125 -0.03125 6.765625 0 7.015625 0 C 7.0625 0 7.1875 0 7.1875 -0.203125 C 7.1875 -0.3125 7.09375 -0.3125 6.953125 -0.3125 C 6.34375 -0.3125 6.34375 -0.375 6.3125 -0.671875 L 5.703125 -6.890625 C 5.6875 -7.09375 5.6875 -7.140625 5.515625 -7.140625 C 5.359375 -7.140625 5.3125 -7.0625 5.25 -6.96875 Z M 2.984375 -2.609375 L 4.9375 -5.90625 L 5.265625 -2.609375 Z M 2.984375 -2.609375 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-1-1&quot;&gt;
&lt;path d=&quot;M 1.59375 -0.78125 C 1.5 -0.390625 1.46875 -0.3125 0.6875 -0.3125 C 0.515625 -0.3125 0.421875 -0.3125 0.421875 -0.109375 C 0.421875 0 0.515625 0 0.6875 0 L 4.25 0 C 5.828125 0 7 -1.171875 7 -2.15625 C 7 -2.875 6.421875 -3.453125 5.453125 -3.5625 C 6.484375 -3.75 7.53125 -4.484375 7.53125 -5.4375 C 7.53125 -6.171875 6.875 -6.8125 5.6875 -6.8125 L 2.328125 -6.8125 C 2.140625 -6.8125 2.046875 -6.8125 2.046875 -6.609375 C 2.046875 -6.5 2.140625 -6.5 2.328125 -6.5 C 2.34375 -6.5 2.53125 -6.5 2.703125 -6.484375 C 2.875 -6.453125 2.96875 -6.453125 2.96875 -6.3125 C 2.96875 -6.28125 2.953125 -6.25 2.9375 -6.125 Z M 3.09375 -3.65625 L 3.71875 -6.125 C 3.8125 -6.46875 3.828125 -6.5 4.25 -6.5 L 5.546875 -6.5 C 6.421875 -6.5 6.625 -5.90625 6.625 -5.46875 C 6.625 -4.59375 5.765625 -3.65625 4.5625 -3.65625 Z M 2.65625 -0.3125 C 2.515625 -0.3125 2.5 -0.3125 2.4375 -0.3125 C 2.328125 -0.328125 2.296875 -0.34375 2.296875 -0.421875 C 2.296875 -0.453125 2.296875 -0.46875 2.359375 -0.640625 L 3.046875 -3.421875 L 4.921875 -3.421875 C 5.875 -3.421875 6.078125 -2.6875 6.078125 -2.265625 C 6.078125 -1.28125 5.1875 -0.3125 4 -0.3125 Z M 2.65625 -0.3125 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-1-2&quot;&gt;
&lt;path d=&quot;M 7.578125 -6.921875 C 7.578125 -6.953125 7.5625 -7.03125 7.46875 -7.03125 C 7.4375 -7.03125 7.421875 -7.015625 7.3125 -6.90625 L 6.625 -6.140625 C 6.53125 -6.28125 6.078125 -7.03125 4.96875 -7.03125 C 2.734375 -7.03125 0.5 -4.828125 0.5 -2.515625 C 0.5 -0.875 1.671875 0.21875 3.203125 0.21875 C 4.0625 0.21875 4.828125 -0.171875 5.359375 -0.640625 C 6.28125 -1.453125 6.453125 -2.359375 6.453125 -2.390625 C 6.453125 -2.5 6.34375 -2.5 6.328125 -2.5 C 6.265625 -2.5 6.21875 -2.46875 6.203125 -2.390625 C 6.109375 -2.109375 5.875 -1.390625 5.1875 -0.8125 C 4.5 -0.265625 3.875 -0.09375 3.359375 -0.09375 C 2.46875 -0.09375 1.40625 -0.609375 1.40625 -2.15625 C 1.40625 -2.734375 1.609375 -4.34375 2.609375 -5.515625 C 3.21875 -6.21875 4.15625 -6.71875 5.046875 -6.71875 C 6.0625 -6.71875 6.65625 -5.953125 6.65625 -4.796875 C 6.65625 -4.390625 6.625 -4.390625 6.625 -4.28125 C 6.625 -4.1875 6.734375 -4.1875 6.765625 -4.1875 C 6.890625 -4.1875 6.890625 -4.203125 6.953125 -4.390625 Z M 7.578125 -6.921875 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-2-0&quot;&gt;
&lt;path d=&quot;M 2.84375 -2.75 L 3.515625 -2.75 C 3.65625 -2.75 3.75 -2.75 3.75 -2.90625 C 3.75 -3 3.65625 -3 3.53125 -3 L 2.890625 -3 C 3.046875 -3.890625 3.09375 -4.203125 3.15625 -4.40625 C 3.1875 -4.5625 3.34375 -4.703125 3.515625 -4.703125 C 3.515625 -4.703125 3.703125 -4.703125 3.84375 -4.625 C 3.546875 -4.53125 3.53125 -4.28125 3.53125 -4.25 C 3.53125 -4.09375 3.65625 -3.984375 3.8125 -3.984375 C 4 -3.984375 4.203125 -4.140625 4.203125 -4.40625 C 4.203125 -4.734375 3.875 -4.90625 3.515625 -4.90625 C 3.203125 -4.90625 2.859375 -4.734375 2.671875 -4.390625 C 2.53125 -4.125 2.484375 -3.8125 2.328125 -3 L 1.78125 -3 C 1.640625 -3 1.546875 -3 1.546875 -2.84375 C 1.546875 -2.75 1.640625 -2.75 1.765625 -2.75 L 2.28125 -2.75 C 2.28125 -2.703125 1.84375 -0.203125 1.671875 0.546875 C 1.640625 0.703125 1.515625 1.21875 1.1875 1.21875 C 1.171875 1.21875 1.015625 1.21875 0.875 1.140625 C 1.15625 1.046875 1.1875 0.796875 1.1875 0.765625 C 1.1875 0.609375 1.0625 0.5 0.90625 0.5 C 0.71875 0.5 0.515625 0.65625 0.515625 0.921875 C 0.515625 1.234375 0.84375 1.421875 1.1875 1.421875 C 1.625 1.421875 1.9375 0.96875 2.015625 0.8125 C 2.265625 0.34375 2.4375 -0.515625 2.453125 -0.59375 Z M 2.84375 -2.75 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g id=&quot;glyph-2-1&quot;&gt;
&lt;path d=&quot;M 3.703125 -2.578125 C 3.734375 -2.671875 3.734375 -2.703125 3.734375 -2.71875 C 3.734375 -2.875 3.609375 -2.9375 3.5 -2.9375 C 3.34375 -2.9375 3.203125 -2.8125 3.171875 -2.671875 C 3.0625 -2.859375 2.828125 -3.078125 2.453125 -3.078125 C 1.59375 -3.078125 0.671875 -2.140625 0.671875 -1.140625 C 0.671875 -0.421875 1.15625 0 1.734375 0 C 2.0625 0 2.359375 -0.15625 2.609375 -0.375 L 2.453125 0.25 C 2.375 0.546875 2.328125 0.734375 2.0625 0.96875 C 1.75 1.21875 1.453125 1.21875 1.28125 1.21875 C 0.96875 1.21875 0.875 1.203125 0.75 1.171875 C 0.921875 1.09375 0.96875 0.921875 0.96875 0.828125 C 0.96875 0.65625 0.84375 0.578125 0.703125 0.578125 C 0.5 0.578125 0.296875 0.734375 0.296875 1 C 0.296875 1.421875 0.90625 1.421875 1.296875 1.421875 C 2.390625 1.421875 2.84375 0.859375 2.953125 0.46875 Z M 2.75 -0.921875 C 2.71875 -0.828125 2.71875 -0.8125 2.59375 -0.671875 C 2.359375 -0.375 2.015625 -0.1875 1.75 -0.1875 C 1.40625 -0.1875 1.234375 -0.5 1.234375 -0.859375 C 1.234375 -1.15625 1.421875 -1.9375 1.609375 -2.25 C 1.890625 -2.734375 2.21875 -2.875 2.453125 -2.875 C 2.953125 -2.875 3.078125 -2.359375 3.078125 -2.28125 C 3.078125 -2.265625 3.078125 -2.265625 3.0625 -2.1875 Z M 2.75 -0.921875 &quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;&#x2F;g&gt;
&lt;&#x2F;defs&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-0-0&quot; x=&quot;6.28527&quot; y=&quot;15.17768&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-1-0&quot; x=&quot;43.76464&quot; y=&quot;15.17768&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-1-1&quot; x=&quot;83.73469&quot; y=&quot;15.17768&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-1-2&quot; x=&quot;124.28934&quot; y=&quot;15.17768&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-0-0&quot; x=&quot;164.62053&quot; y=&quot;15.17768&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;butt&quot; stroke-linejoin=&quot;miter&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -72.182991 -0.91375 L -49.06971 -0.91375 &quot; transform=&quot;matrix(1, 0, 0, -1, 87.94471, 11.77375)&quot;&#x2F;&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -2.07281 2.390115 C -1.693904 0.956521 -0.850154 0.28074 0.00140875 -0.00051 C -0.850154 -0.277854 -1.693904 -0.957541 -2.07281 -2.391135 &quot; transform=&quot;matrix(1, 0, 0, -1, 39.07281, 12.68699)&quot;&#x2F;&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;butt&quot; stroke-linejoin=&quot;miter&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -32.214241 -0.91375 L -9.10096 -0.91375 &quot; transform=&quot;matrix(1, 0, 0, -1, 87.94471, 11.77375)&quot;&#x2F;&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -2.070714 2.390115 C -1.691807 0.956521 -0.848057 0.28074 -0.00040125 -0.00051 C -0.848057 -0.277854 -1.691807 -0.957541 -2.070714 -2.391135 &quot; transform=&quot;matrix(1, 0, 0, -1, 79.04337, 12.68699)&quot;&#x2F;&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-2-0&quot; x=&quot;65.15324&quot; y=&quot;8.98476&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;butt&quot; stroke-linejoin=&quot;miter&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M 8.340446 -0.91375 L 31.453727 -0.91375 &quot; transform=&quot;matrix(1, 0, 0, -1, 87.94471, 11.77375)&quot;&#x2F;&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -2.071176 2.390115 C -1.69227 0.956521 -0.84852 0.28074 -0.00086375 -0.00051 C -0.84852 -0.277854 -1.69227 -0.957541 -2.071176 -2.391135 &quot; transform=&quot;matrix(1, 0, 0, -1, 119.59852, 12.68699)&quot;&#x2F;&gt;
&lt;g fill=&quot;rgb(0%, 0%, 0%)&quot; fill-opacity=&quot;1&quot;&gt;
&lt;use xlink:href=&quot;#glyph-2-1&quot; x=&quot;105.97323&quot; y=&quot;8.98478&quot;&#x2F;&gt;
&lt;&#x2F;g&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;butt&quot; stroke-linejoin=&quot;miter&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M 48.672477 -0.91375 L 71.785759 -0.91375 &quot; transform=&quot;matrix(1, 0, 0, -1, 87.94471, 11.77375)&quot;&#x2F;&gt;
&lt;path fill=&quot;none&quot; stroke-width=&quot;0.39848&quot; stroke-linecap=&quot;round&quot; stroke-linejoin=&quot;round&quot; stroke=&quot;rgb(0%, 0%, 0%)&quot; stroke-opacity=&quot;1&quot; stroke-miterlimit=&quot;10&quot; d=&quot;M -2.070835 2.390115 C -1.691929 0.956521 -0.848179 0.28074 -0.0005225 -0.00051 C -0.848179 -0.277854 -1.691929 -0.957541 -2.070835 -2.391135 &quot; transform=&quot;matrix(1, 0, 0, -1, 159.93021, 12.68699)&quot;&#x2F;&gt;
&lt;&#x2F;svg&gt;
&lt;&#x2F;figure&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Hello, world</title>
        <published>2026-05-01T00:00:00+00:00</published>
        <updated>2026-05-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://blg.mattearnshaw.com/posts/hello/"/>
        <id>https://blg.mattearnshaw.com/posts/hello/</id>
        
        <content type="html" xml:base="https://blg.mattearnshaw.com/posts/hello/">&lt;p&gt;A first post, with some math to confirm LaTeX rendering works.&lt;&#x2F;p&gt;
&lt;p&gt;Inline: the Pythagorean identity is $a^2 + b^2 = c^2$.&lt;&#x2F;p&gt;
&lt;p&gt;Display:&lt;&#x2F;p&gt;
&lt;p&gt;$$
\int_{-\infty}^{\infty} e^{-x^2} , dx = \sqrt{\pi}
$$&lt;&#x2F;p&gt;
&lt;p&gt;And a matrix:&lt;&#x2F;p&gt;
&lt;p&gt;$$
\begin{pmatrix} 1 &amp;amp; 0 \ 0 &amp;amp; 1 \end{pmatrix}
$$&lt;&#x2F;p&gt;
</content>
        
    </entry>
</feed>
