fix old gh-pages

This commit is contained in:
Yann Esposito (Yogsototh) 2021-11-16 11:17:09 +01:00
parent cfa4f0f7d7
commit 0c91ab07c0
Signed by untrusted user who does not match committer: yogsototh
GPG Key ID: 7B19A4C650D59646
4 changed files with 106 additions and 106 deletions

View File

@ -4694,12 +4694,12 @@ robustnessClusters=[[ "elli" , "cowboy" , "snap" , "yesod"
<id>http://yannesposito.com/Scratch/en/blog/Category-Theory-Presentation/index.html</id>
<published>2012-12-12T00:00:00Z</published>
<updated>2012-12-12T00:00:00Z</updated>
<summary type="html"><![CDATA[<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Cateogry of Hask's endofunctors"/>
<summary type="html"><![CDATA[<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Cateogry of Hask's endofunctors"/>
<p>Yesterday I was happy to make a presentation about Category Theory at <a href="http://www.meetup.com/riviera-scala-clojure">Riviera Scala Clojure Meetup</a> (note I used only Haskell for my examples).</p>
<ul><li><a href="http://yogsototh.github.com/Category-Theory-Presentation/categories.html">Click here to go to the HTML presentation.</a>
</li><li><a href="http://yogsototh.github.com/Category-Theory-Presentation/categories.pdf">Click Here to download the PDF slides (<span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> not rendered properly)</a>
<ul><li><a href="http://yogsototh.github.io/Category-Theory-Presentation/categories.html">Click here to go to the HTML presentation.</a>
</li><li><a href="http://yogsototh.github.io/Category-Theory-Presentation/categories.pdf">Click Here to download the PDF slides (<span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> not rendered properly)</a>
</li></ul>
<p>If you don't want to read them through an HTML presentations framework or downloading a big PDF
@ -4749,14 +4749,14 @@ just continue to read as a standard web page.
<section class="slide">
<h2 id="not-really-about-cat-glory">Not really about: Cat <span class="and">&amp;</span> glory</h2>
<figure>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/categlory.jpg" alt="Cat n glory" /> <figcaption>credit to Tokuhiro Kawai (川井徳寛)</figcaption>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/categlory.jpg" alt="Cat n glory" /> <figcaption>credit to Tokuhiro Kawai (川井徳寛)</figcaption>
</figure>
<div class="flush"></div></section>
<section class="slide">
<h2 id="general-overview">General Overview</h2>
<div style="float:right; width: 18%">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/eilenberg.gif" alt="Samuel Eilenberg"/> <img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/maclaine.jpg" alt="Saunders Mac Lane"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/eilenberg.gif" alt="Samuel Eilenberg"/> <img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/maclaine.jpg" alt="Saunders Mac Lane"/>
</div>
<p><em>Recent Math Field</em><br />1942-45, Samuel Eilenberg <span class="and">&amp;</span> Saunders Mac Lane</p>
@ -4782,7 +4782,7 @@ just continue to read as a standard web page.
<div class="flush"></div></section>
<section class="slide">
<h2 id="math-programming-relation">Math Programming relation</h2>
<img class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/buddha.gif" alt="Buddha Fractal"/>
<img class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/buddha.gif" alt="Buddha Fractal"/>
<p>Programming <em><span class="orange">is</span></em> doing Math</p>
<p>Strong relations between type theory and category theory.</p>
<p>Not convinced?<br />Certainly a <em>vocabulary</em> problem.</p>
@ -4790,7 +4790,7 @@ just continue to read as a standard web page.
<div class="flush"></div></section>
<section class="slide">
<h2 id="vocabulary">Vocabulary</h2>
<img class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mindblown.gif" alt="mind blown"/>
<img class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mindblown.gif" alt="mind blown"/>
<p>Math vocabulary used in this presentation:</p>
<blockquote style="width:55%">
<p>Category, Morphism, Associativity, Preorder, Functor, Endofunctor, Categorial property, Commutative diagram, Isomorph, Initial, Dual, Monoid, Natural transformation, Monad, Klesli arrows, κατα-morphism, ...</p>
@ -4798,7 +4798,7 @@ just continue to read as a standard web page.
<div class="flush"></div></section>
<section class="slide">
<h2 id="programmer-translation">Programmer Translation</h2>
<img class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/readingcat.jpg" alt="lolcat"/>
<img class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/readingcat.jpg" alt="lolcat"/>
<table style="width:50%">
<tr><th>
Mathematician
@ -4870,14 +4870,14 @@ LOLCat
<section class="slide">
<h2>Category: Objects</h2>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/objects.png" alt="objects" />
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/objects.png" alt="objects" />
<p>\(\ob{\mathcal{C}}\) is a collection</p>
<div class="flush"></div></section>
<section class="slide">
<h2>Category: Morphisms</h2>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/morphisms.png" alt="morphisms"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/morphisms.png" alt="morphisms"/>
<p>\(A\) and \(B\) objects of \(\C\)<br/>
\(\hom{A,B}\) is a collection of morphisms<br/>
@ -4889,18 +4889,18 @@ LOLCat
<p>Composition (∘): associate to each couple \(f:A→B, g:B→C\)
$$g∘f:A\rightarrow C$$
</p>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/composition.png" alt="composition"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/composition.png" alt="composition"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Category laws: neutral element</h2>
<p>for each object \(X\), there is an \(\id_X:X→X\),<br/>
such that for each \(f:A→B\):</p>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/identity.png" alt="identity"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/identity.png" alt="identity"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Category laws: Associativity</h2>
<p> Composition is associative:</p>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/associativecomposition.png" alt="associative composition"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/associativecomposition.png" alt="associative composition"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Commutative diagrams</h2>
@ -4908,7 +4908,7 @@ such that for each \(f:A→B\):</p>
<p>Two path with the same source and destination are equal.</p>
<figure class="left" style="max-width: 40%;margin-left: 5%;">
<img
src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/commutative-diagram-assoc.png"
src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/commutative-diagram-assoc.png"
alt="Commutative Diagram (Associativity)"/>
<figcaption>
\((h∘g)∘f = h∘(g∘f) \)
@ -4916,7 +4916,7 @@ such that for each \(f:A→B\):</p>
</figure>
<figure class="right" style="max-width:31%;margin-right: 10%;">
<img
src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/commutative-diagram-id.png"
src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/commutative-diagram-id.png"
alt="Commutative Diagram (Identity law)"/>
<figcaption>
\(id_B∘f = f = f∘id_A \)
@ -4927,7 +4927,7 @@ such that for each \(f:A→B\):</p>
<h2>Question Time!</h2>
<figure style="width:70%; margin:0 auto">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/batquestion.jpg" width="100%"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/batquestion.jpg" width="100%"/>
<figcaption>
<em>- French-only joke -</em>
</figcaption>
@ -4937,20 +4937,20 @@ such that for each \(f:A→B\):</p>
<h2>Can this be a category?</h2>
<p>\(\ob{\C},\hom{\C}\) fixed, is there a valid ∘?</p>
<figure class="left">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-example1.png" alt="Category example 1"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-example1.png" alt="Category example 1"/>
<figcaption class="slide">
<span class="green">YES</span>
</figcaption>
</figure>
<figure class="left">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-example2.png" alt="Category example 2"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-example2.png" alt="Category example 2"/>
<figcaption class="slide">
no candidate for \(g∘f\)
<br/><span class="red">NO</span>
</figcaption>
</figure>
<figure class="left">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-example3.png" alt="Category example 3"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-example3.png" alt="Category example 3"/>
<figcaption class="slide">
<span class="green">YES</span>
</figcaption>
@ -4959,14 +4959,14 @@ such that for each \(f:A→B\):</p>
<section class="slide">
<h2>Can this be a category?</h2>
<figure class="left">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-example4.png" alt="Category example 4"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-example4.png" alt="Category example 4"/>
<figcaption class="slide">
no candidate for \(f:C→B\)
<br/><span class="red">NO</span>
</figcaption>
</figure>
<figure class="right" style="min-width: 50%">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-example5.png" alt="Category example 5"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-example5.png" alt="Category example 5"/>
<figcaption class="slide">
\((h∘g)∘f=\id_B∘f=f\)<br/>
\(h∘(g∘f)=h∘\id_A=h\)<br/>
@ -4979,7 +4979,7 @@ such that for each \(f:A→B\):</p>
<h2>Categories Examples</h2>
<figure style="width:70%; margin:0 auto">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/basket_of_cats.jpg" alt="Basket of cats"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/basket_of_cats.jpg" alt="Basket of cats"/>
<figcaption>
<em>- Basket of Cats -</em>
</figcaption>
@ -5002,7 +5002,7 @@ such that for each \(f:A→B\):</p>
<div class="flush"></div></section>
<section class="slide">
<h2>Categories Everywhere?</h2>
<img class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/cats-everywhere.jpg" alt="Cats everywhere"/>
<img class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/cats-everywhere.jpg" alt="Cats everywhere"/>
<ul>
<li>\(\Mon\): (monoids, monoid morphisms,∘)</li>
<li>\(\Vec\): (Vectorial spaces, linear functions,∘)</li>
@ -5017,7 +5017,7 @@ such that for each \(f:A→B\):</p>
<h2>Smaller Examples</h2>
<h3>Strings</h3>
<img class="right" style="max-width:17%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/strings.png" alt="Monoids are one object categories"/>
<img class="right" style="max-width:17%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/strings.png" alt="Monoids are one object categories"/>
<ul>
<li> \(\ob{Str}\) is a singleton </li>
<li> \(\hom{Str}\) each string </li>
@ -5033,7 +5033,7 @@ such that for each \(f:A→B\):</p>
<h3>Graph</h3>
<figure class="right" style="max-width:40%" >
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/graph-category.png" alt="Each graph is a category"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/graph-category.png" alt="Each graph is a category"/>
</figure>
<ul>
<li> \(\ob{G}\) are vertices</li>
@ -5049,12 +5049,12 @@ such that for each \(f:A→B\):</p>
<h2>Number construction</h2>
<h3>Each Numbers as a whole category</h3>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/numbers.png" alt="Each number as a category"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/numbers.png" alt="Each number as a category"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Degenerated Categories: Monoids</h2>
<img class="right" style="max-width:17%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/monoid.png" alt="Monoids are one object categories"/>
<img class="right" style="max-width:17%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/monoid.png" alt="Monoids are one object categories"/>
<p>Each Monoid \((M,e,⊙): \ob{M}=\{∙\},\hom{M}=M,\circ = ⊙\)</p>
<p class="orange">Only one object.</p>
<p>Examples:</p>
@ -5072,12 +5072,12 @@ such that for each \(f:A→B\):</p>
<p><em class="orange">At most one morphism between two objects.</em></p>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/preorder.png" alt="preorder category"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/preorder.png" alt="preorder category"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Degenerated Categories: Discrete Categories</h2>
<img class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/set.png" alt="Any set can be a category"/>
<img class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/set.png" alt="Any set can be a category"/>
<h3>Any Set</h3>
<p>Any set \(E: \ob{E}=E, \hom{x,y}=\{x\} ⇔ x=y \)</p>
<p class="orange">Only identities</p>
@ -5103,7 +5103,7 @@ such that for each \(f:A→B\):</p>
<div class="flush"></div></section>
<section class="slide">
<h2 id="isomorph">Isomorph</h2>
<p><img class="right" alt="isomorph cats" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/isomorph-cats.jpg" /> <em class="orange">isomorphism</em>: \(f:A→B\) which can be &quot;undone&quot; <em>i.e.</em><br />\(∃g:B→A\), \(g∘f=id_A\) <span class="and">&amp;</span> \(f∘g=id_B\)<br />in this case, \(A\) <span class="and">&amp;</span> \(B\) are <em class="orange">isomorphic</em>.</p>
<p><img class="right" alt="isomorph cats" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/isomorph-cats.jpg" /> <em class="orange">isomorphism</em>: \(f:A→B\) which can be &quot;undone&quot; <em>i.e.</em><br />\(∃g:B→A\), \(g∘f=id_A\) <span class="and">&amp;</span> \(f∘g=id_B\)<br />in this case, \(A\) <span class="and">&amp;</span> \(B\) are <em class="orange">isomorphic</em>.</p>
<p><span class="orange">A≌B</span> means A and B are essentially the same.<br />In Category Theory, <span class="orange">=</span> is in fact mostly <span class="orange"></span>.<br />For example in commutative diagrams.</p>
<div class="flush"></div></section>
<section class="slide">
@ -5126,28 +5126,28 @@ A <em>functor</em> <span class="orange">\(\F\)</span> from <span class="blue">\(
<section class="slide">
<h2>Functor Example (ob → ob)</h2>
<img width="65%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/functor.png" alt="Functor"/>
<img width="65%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/functor.png" alt="Functor"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Functor Example (hom → hom)</h2>
<img width="65%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/functor-morphism.png" alt="Functor"/>
<img width="65%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/functor-morphism.png" alt="Functor"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Functor Example</h2>
<img width="65%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/functor-morphism-color.png" alt="Functor"/>
<img width="65%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/functor-morphism-color.png" alt="Functor"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Endofunctors</h2>
<p>An <em>endofunctor</em> for \(\C\) is a functor \(F:\C→\C\).</p>
<img width="75%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/endofunctor.png" alt="Endofunctor"/>
<img width="75%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/endofunctor.png" alt="Endofunctor"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Category of Categories</h2>
<img style="min-width:43%; width: 43%" class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/fractalcat.jpg" />
<img style="min-width:43%; width: 43%" class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/fractalcat.jpg" />
<p>Categories and functors form a category: \(\Cat\)</p>
<ul><li>\(\ob{\Cat}\) are categories
@ -5176,7 +5176,7 @@ A <em>functor</em> <span class="orange">\(\F\)</span> from <span class="blue">\(
<p>Category \(\Hask\):</p>
<img class="right" style="max-width:30%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/hask.png" alt="Haskell Category Representation"/>
<img class="right" style="max-width:30%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/hask.png" alt="Haskell Category Representation"/>
<ul><li>
\(\ob{\Hask} = \) Haskell types
@ -5266,7 +5266,7 @@ fmap head [[1,2,3],[4,5,6]] == [1,4]</code></pre>
<p>Put normal function inside a container. Ex: list, trees...<p>
<img width="70%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/boxfunctor.png" alt="Haskell Functor as a box play"/>
<img width="70%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/boxfunctor.png" alt="Haskell Functor as a box play"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Haskell Functor properties</h2>
@ -5283,7 +5283,7 @@ fmap head [[1,2,3],[4,5,6]] == [1,4]</code></pre>
<p>Haskell functor can be seen as boxes containing all Haskell types and functions.
Haskell types look like a fractal:</p>
<img width="70%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/hask-endofunctor.png" alt="Haskell functor representation"/>
<img width="70%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/hask-endofunctor.png" alt="Haskell functor representation"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Functor as boxes</h2>
@ -5291,7 +5291,7 @@ Haskell types look like a fractal:</p>
<p>Haskell functor can be seen as boxes containing all Haskell types and functions.
Haskell types look like a fractal:</p>
<img width="70%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/hask-endofunctor-objects.png" alt="Haskell functor representation"/>
<img width="70%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/hask-endofunctor-objects.png" alt="Haskell functor representation"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Functor as boxes</h2>
@ -5299,7 +5299,7 @@ Haskell types look like a fractal:</p>
<p>Haskell functor can be seen as boxes containing all Haskell types and functions.
Haskell types look like a fractal:</p>
<img width="70%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/hask-endofunctor-morphisms.png" alt="Haskell functor representation"/>
<img width="70%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/hask-endofunctor-morphisms.png" alt="Haskell functor representation"/>
<div class="flush"></div></section>
<section class="slide">
<h2 id="non-haskell-hasks-functors">&quot;Non Haskell&quot; Hask's Functors</h2>
@ -5336,7 +5336,7 @@ Haskell types look like a fractal:</p>
<div class="flush"></div></section>
<section class="slide">
<h2 id="category-of-hask-endofunctors">Category of \(\Hask\) Endofunctors</h2>
<img width="50%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Category of Hask endofunctors" />
<img width="50%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Category of Hask endofunctors" />
<div class="flush"></div></section>
<section class="slide">
<h2 id="category-of-functors">Category of Functors</h2>
@ -5351,7 +5351,7 @@ Haskell types look like a fractal:</p>
<section class="slide">
<h2 id="natural-transformations">Natural Transformations</h2>
<p>Let \(F\) and \(G\) be two functors from \(\C\) to \(\D\).</p>
<p><img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/natural-transformation.png" alt="Natural transformation commutative diagram" class="right"/> <em>A natural transformation:</em> familly η ; \(η_X\in\hom{\D}\) for \(X\in\ob{\C}\) s.t.</p>
<p><img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/natural-transformation.png" alt="Natural transformation commutative diagram" class="right"/> <em>A natural transformation:</em> familly η ; \(η_X\in\hom{\D}\) for \(X\in\ob{\C}\) s.t.</p>
<p>ex: between Haskell functors; <code>F a -&gt; G a</code><br />Rearragement functions only.</p>
<div class="flush"></div></section>
<section class="slide">
@ -5361,9 +5361,9 @@ toList :: [a] -> List a
toList [] = Nil
toList (x:xs) = Cons x (toList xs)</code></pre>
<p><code>toList</code> is a natural transformation. It is also a morphism from <code>[]</code> to <code>List</code> in the Category of \(\Hask\) endofunctors.</p>
<img style="float:left;width:30%;margin-left: 1em;" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/nattrans-list-tree.png" alt="natural transformation commutative diagram"/>
<img style="float:left;width:30%;margin-left: 1em;" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/nattrans-list-tree.png" alt="natural transformation commutative diagram"/>
<figure style="float:right;width:50%">
<img style="width:40%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/list-tree-endofunctor-morphism.png" alt="natural transformation commutative diagram"/>
<img style="width:40%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/list-tree-endofunctor-morphism.png" alt="natural transformation commutative diagram"/>
</figure>
<div class="flush"></div></section>
@ -5374,9 +5374,9 @@ toHList :: List a -> [a]
toHList Nil = []
toHList (Cons x xs) = x:toHList xs</code></pre>
<p><code>toHList</code> is a natural transformation. It is also a morphism from <code>List</code> to <code>[]</code> in the Category of \(\Hask\) endofunctors.</p>
<img style="float:left;width:30%;margin-left:1em" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/nattrans-tree-list.png" alt="natural transformation commutative diagram"/>
<img style="float:left;width:30%;margin-left:1em" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/nattrans-tree-list.png" alt="natural transformation commutative diagram"/>
<figure style="float:right;width:50%">
<img style="width:40%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/tree-list-endofunctor-morphism.png" alt="natural transformation commutative diagram"/> <figcaption><code>toList . toHList = id</code> <span class="and">&amp;</span> <code>toHList . toList = id</code> <span style="visibility:hidden"><span class="and">&amp;</span></span><br/> therefore <code>[]</code> <span class="and">&amp;</span> <code>List</code> are <span class="orange">isomorph</span>. </figcaption>
<img style="width:40%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/tree-list-endofunctor-morphism.png" alt="natural transformation commutative diagram"/> <figcaption><code>toList . toHList = id</code> <span class="and">&amp;</span> <code>toHList . toList = id</code> <span style="visibility:hidden"><span class="and">&amp;</span></span><br/> therefore <code>[]</code> <span class="and">&amp;</span> <code>List</code> are <span class="orange">isomorph</span>. </figcaption>
</figure>
<div class="flush"></div></section>
@ -5386,9 +5386,9 @@ toHList (Cons x xs) = x:toHList xs</code></pre>
toMaybe [] = Nothing
toMaybe (x:xs) = Just x</code></pre>
<p><code>toMaybe</code> is a natural transformation. It is also a morphism from <code>[]</code> to <code>Maybe</code> in the Category of \(\Hask\) endofunctors.</p>
<img style="float:left;width:30%;margin-left:1em;" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/nattrans-list-maybe.png" alt="natural transformation commutative diagram"/>
<img style="float:left;width:30%;margin-left:1em;" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/nattrans-list-maybe.png" alt="natural transformation commutative diagram"/>
<figure style="float:right;width:50%">
<img style="width:40%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/list-maybe-endofunctor-morphism.png" alt="natural transformation commutative diagram"/>
<img style="width:40%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/list-maybe-endofunctor-morphism.png" alt="natural transformation commutative diagram"/>
</figure>
<div class="flush"></div></section>
@ -5398,9 +5398,9 @@ toMaybe (x:xs) = Just x</code></pre>
mToList Nothing = []
mToList Just x = [x]</code></pre>
<p><code>toMaybe</code> is a natural transformation. It is also a morphism from <code>[]</code> to <code>Maybe</code> in the Category of \(\Hask\) endofunctors.</p>
<img style="float:left;width:30%;margin-left:1em;" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/nattrans-maybe-list.png" alt="natural transformation commutative diagram"/>
<img style="float:left;width:30%;margin-left:1em;" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/nattrans-maybe-list.png" alt="natural transformation commutative diagram"/>
<figure style="float:right;width:50%">
<img style="width:40%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/maybe-list-endofunctor-morphsm.png" alt="relation between [] and Maybe"/> <figcaption>There is <span class="red">no isomorphism</span>.<br/> Hint: <code>Bool</code> lists longer than 1. </figcaption>
<img style="width:40%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/maybe-list-endofunctor-morphsm.png" alt="relation between [] and Maybe"/> <figcaption>There is <span class="red">no isomorphism</span>.<br/> Hint: <code>Bool</code> lists longer than 1. </figcaption>
</figure>
<div class="flush"></div></section>
@ -5559,11 +5559,11 @@ drawPoint p = do
<div class="flush"></div></section>
<section class="slide">
<h2 id="fold"><code>fold</code></h2>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/tower_folded.gif" alt="fold" style="width:50%;max-width:50%"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/tower_folded.gif" alt="fold" style="width:50%;max-width:50%"/>
<div class="flush"></div></section>
<section class="slide">
<h2 id="κατα-morphism">κατα-morphism</h2>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/earth_catamorphed.gif" alt="catamorphism" style="width:90%;max-width:90%"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/earth_catamorphed.gif" alt="catamorphism" style="width:90%;max-width:90%"/>
<div class="flush"></div></section>
<section class="slide">
<h2 id="κατα-morphism-fold-generalization">κατα-morphism: fold generalization</h2>

View File

@ -114,7 +114,7 @@ Learn Haskell Fast and Hard <span class="nicer">»</span>
<a href="../../../Scratch/en/blog/Social-link-the-right-way/"><span class="small">2013-03-14</span> <div class="inlineblockimg"><img src="../../../Scratch/img/blog/Social-link-the-right-way/main.png" alt="Social link the right way" class="inlineimage" /></div> Social link the right way</a>
</li>
<li>
<a href="../../../Scratch/en/blog/Category-Theory-Presentation/"><span class="small">2012-12-12</span> <div class="inlineblockimg"><img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Category Theory Presentation" class="inlineimage" /></div> Category Theory Presentation</a>
<a href="../../../Scratch/en/blog/Category-Theory-Presentation/"><span class="small">2012-12-12</span> <div class="inlineblockimg"><img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Category Theory Presentation" class="inlineimage" /></div> Category Theory Presentation</a>
</li>
<li>
<a href="../../../Scratch/en/blog/Haskell-OpenGL-Mandelbrot/"><span class="small">2012-06-15</span> <div class="inlineblockimg"><img src="../../../Scratch/img/blog/Haskell-OpenGL-Mandelbrot/BenoitBMandelbrot.jpg" alt="Haskell Progressive Example" class="inlineimage" /></div> Haskell Progressive Example</a>

View File

@ -4689,12 +4689,12 @@ robustnessClusters=[[ "elli" , "cowboy" , "snap" , "yesod"
<id>http://yannesposito.com/Scratch/fr/blog/Category-Theory-Presentation/index.html</id>
<published>2012-12-12T00:00:00Z</published>
<updated>2012-12-12T00:00:00Z</updated>
<summary type="html"><![CDATA[<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Cateogry of Hask's endofunctors"/>
<summary type="html"><![CDATA[<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Cateogry of Hask's endofunctors"/>
<p>Yesterday I was happy to make a presentation about Category Theory at <a href="http://www.meetup.com/riviera-scala-clojure">Riviera Scala Clojure Meetup</a> (note I used only Haskell for my examples).</p>
<ul><li><a href="http://yogsototh.github.com/Category-Theory-Presentation/categories.html">Click here to go to the HTML presentation.</a>
</li><li><a href="http://yogsototh.github.com/Category-Theory-Presentation/categories.pdf">Click Here to download the PDF slides (<span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> not rendered properly)</a>
<ul><li><a href="http://yogsototh.github.io/Category-Theory-Presentation/categories.html">Click here to go to the HTML presentation.</a>
</li><li><a href="http://yogsototh.github.io/Category-Theory-Presentation/categories.pdf">Click Here to download the PDF slides (<span style="text-transform: uppercase">L<sup style="vertical-align: 0.15em; margin-left: -0.36em; margin-right: -0.15em; font-size: .85em">a</sup>T<sub style="vertical-align: -0.5ex; margin-left: -0.1667em; margin-right: -0.125em; font-size: 1em">e</sub>X</span> not rendered properly)</a>
</li></ul>
<p>If you don't want to read them through an HTML presentations framework or downloading a big PDF
@ -4744,14 +4744,14 @@ just continue to read as a standard web page.
<section class="slide">
<h2 id="not-really-about-cat-glory">Not really about: Cat <span class="and">&amp;</span> glory</h2>
<figure>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/categlory.jpg" alt="Cat n glory" /> <figcaption>credit to Tokuhiro Kawai (川井徳寛)</figcaption>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/categlory.jpg" alt="Cat n glory" /> <figcaption>credit to Tokuhiro Kawai (川井徳寛)</figcaption>
</figure>
<div class="flush"></div></section>
<section class="slide">
<h2 id="general-overview">General Overview</h2>
<div style="float:right; width: 18%">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/eilenberg.gif" alt="Samuel Eilenberg"/> <img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/maclaine.jpg" alt="Saunders Mac Lane"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/eilenberg.gif" alt="Samuel Eilenberg"/> <img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/maclaine.jpg" alt="Saunders Mac Lane"/>
</div>
<p><em>Recent Math Field</em><br />1942-45, Samuel Eilenberg <span class="and">&amp;</span> Saunders Mac Lane</p>
@ -4777,7 +4777,7 @@ just continue to read as a standard web page.
<div class="flush"></div></section>
<section class="slide">
<h2 id="math-programming-relation">Math Programming relation</h2>
<img class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/buddha.gif" alt="Buddha Fractal"/>
<img class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/buddha.gif" alt="Buddha Fractal"/>
<p>Programming <em><span class="orange">is</span></em> doing Math</p>
<p>Strong relations between type theory and category theory.</p>
<p>Not convinced?<br />Certainly a <em>vocabulary</em> problem.</p>
@ -4785,7 +4785,7 @@ just continue to read as a standard web page.
<div class="flush"></div></section>
<section class="slide">
<h2 id="vocabulary">Vocabulary</h2>
<img class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mindblown.gif" alt="mind blown"/>
<img class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mindblown.gif" alt="mind blown"/>
<p>Math vocabulary used in this presentation:</p>
<blockquote style="width:55%">
<p>Category, Morphism, Associativity, Preorder, Functor, Endofunctor, Categorial property, Commutative diagram, Isomorph, Initial, Dual, Monoid, Natural transformation, Monad, Klesli arrows, κατα-morphism, ...</p>
@ -4793,7 +4793,7 @@ just continue to read as a standard web page.
<div class="flush"></div></section>
<section class="slide">
<h2 id="programmer-translation">Programmer Translation</h2>
<img class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/readingcat.jpg" alt="lolcat"/>
<img class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/readingcat.jpg" alt="lolcat"/>
<table style="width:50%">
<tr><th>
Mathematician
@ -4865,14 +4865,14 @@ LOLCat
<section class="slide">
<h2>Category: Objects</h2>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/objects.png" alt="objects" />
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/objects.png" alt="objects" />
<p>\(\ob{\mathcal{C}}\) is a collection</p>
<div class="flush"></div></section>
<section class="slide">
<h2>Category: Morphisms</h2>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/morphisms.png" alt="morphisms"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/morphisms.png" alt="morphisms"/>
<p>\(A\) and \(B\) objects of \(\C\)<br/>
\(\hom{A,B}\) is a collection of morphisms<br/>
@ -4884,18 +4884,18 @@ LOLCat
<p>Composition (∘): associate to each couple \(f:A→B, g:B→C\)
$$g∘f:A\rightarrow C$$
</p>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/composition.png" alt="composition"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/composition.png" alt="composition"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Category laws: neutral element</h2>
<p>for each object \(X\), there is an \(\id_X:X→X\),<br/>
such that for each \(f:A→B\):</p>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/identity.png" alt="identity"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/identity.png" alt="identity"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Category laws: Associativity</h2>
<p> Composition is associative:</p>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/associativecomposition.png" alt="associative composition"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/associativecomposition.png" alt="associative composition"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Commutative diagrams</h2>
@ -4903,7 +4903,7 @@ such that for each \(f:A→B\):</p>
<p>Two path with the same source and destination are equal.</p>
<figure class="left" style="max-width: 40%;margin-left: 5%;">
<img
src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/commutative-diagram-assoc.png"
src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/commutative-diagram-assoc.png"
alt="Commutative Diagram (Associativity)"/>
<figcaption>
\((h∘g)∘f = h∘(g∘f) \)
@ -4911,7 +4911,7 @@ such that for each \(f:A→B\):</p>
</figure>
<figure class="right" style="max-width:31%;margin-right: 10%;">
<img
src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/commutative-diagram-id.png"
src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/commutative-diagram-id.png"
alt="Commutative Diagram (Identity law)"/>
<figcaption>
\(id_B∘f = f = f∘id_A \)
@ -4922,7 +4922,7 @@ such that for each \(f:A→B\):</p>
<h2>Question Time!</h2>
<figure style="width:70%; margin:0 auto">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/batquestion.jpg" width="100%"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/batquestion.jpg" width="100%"/>
<figcaption>
<em>- French-only joke -</em>
</figcaption>
@ -4932,20 +4932,20 @@ such that for each \(f:A→B\):</p>
<h2>Can this be a category?</h2>
<p>\(\ob{\C},\hom{\C}\) fixed, is there a valid ∘?</p>
<figure class="left">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-example1.png" alt="Category example 1"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-example1.png" alt="Category example 1"/>
<figcaption class="slide">
<span class="green">YES</span>
</figcaption>
</figure>
<figure class="left">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-example2.png" alt="Category example 2"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-example2.png" alt="Category example 2"/>
<figcaption class="slide">
no candidate for \(g∘f\)
<br/><span class="red">NO</span>
</figcaption>
</figure>
<figure class="left">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-example3.png" alt="Category example 3"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-example3.png" alt="Category example 3"/>
<figcaption class="slide">
<span class="green">YES</span>
</figcaption>
@ -4954,14 +4954,14 @@ such that for each \(f:A→B\):</p>
<section class="slide">
<h2>Can this be a category?</h2>
<figure class="left">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-example4.png" alt="Category example 4"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-example4.png" alt="Category example 4"/>
<figcaption class="slide">
no candidate for \(f:C→B\)
<br/><span class="red">NO</span>
</figcaption>
</figure>
<figure class="right" style="min-width: 50%">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-example5.png" alt="Category example 5"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-example5.png" alt="Category example 5"/>
<figcaption class="slide">
\((h∘g)∘f=\id_B∘f=f\)<br/>
\(h∘(g∘f)=h∘\id_A=h\)<br/>
@ -4974,7 +4974,7 @@ such that for each \(f:A→B\):</p>
<h2>Categories Examples</h2>
<figure style="width:70%; margin:0 auto">
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/basket_of_cats.jpg" alt="Basket of cats"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/basket_of_cats.jpg" alt="Basket of cats"/>
<figcaption>
<em>- Basket of Cats -</em>
</figcaption>
@ -4997,7 +4997,7 @@ such that for each \(f:A→B\):</p>
<div class="flush"></div></section>
<section class="slide">
<h2>Categories Everywhere?</h2>
<img class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/cats-everywhere.jpg" alt="Cats everywhere"/>
<img class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/cats-everywhere.jpg" alt="Cats everywhere"/>
<ul>
<li>\(\Mon\): (monoids, monoid morphisms,∘)</li>
<li>\(\Vec\): (Vectorial spaces, linear functions,∘)</li>
@ -5012,7 +5012,7 @@ such that for each \(f:A→B\):</p>
<h2>Smaller Examples</h2>
<h3>Strings</h3>
<img class="right" style="max-width:17%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/strings.png" alt="Monoids are one object categories"/>
<img class="right" style="max-width:17%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/strings.png" alt="Monoids are one object categories"/>
<ul>
<li> \(\ob{Str}\) is a singleton </li>
<li> \(\hom{Str}\) each string </li>
@ -5028,7 +5028,7 @@ such that for each \(f:A→B\):</p>
<h3>Graph</h3>
<figure class="right" style="max-width:40%" >
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/graph-category.png" alt="Each graph is a category"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/graph-category.png" alt="Each graph is a category"/>
</figure>
<ul>
<li> \(\ob{G}\) are vertices</li>
@ -5044,12 +5044,12 @@ such that for each \(f:A→B\):</p>
<h2>Number construction</h2>
<h3>Each Numbers as a whole category</h3>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/numbers.png" alt="Each number as a category"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/numbers.png" alt="Each number as a category"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Degenerated Categories: Monoids</h2>
<img class="right" style="max-width:17%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/monoid.png" alt="Monoids are one object categories"/>
<img class="right" style="max-width:17%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/monoid.png" alt="Monoids are one object categories"/>
<p>Each Monoid \((M,e,⊙): \ob{M}=\{∙\},\hom{M}=M,\circ = ⊙\)</p>
<p class="orange">Only one object.</p>
<p>Examples:</p>
@ -5067,12 +5067,12 @@ such that for each \(f:A→B\):</p>
<p><em class="orange">At most one morphism between two objects.</em></p>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/preorder.png" alt="preorder category"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/preorder.png" alt="preorder category"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Degenerated Categories: Discrete Categories</h2>
<img class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/set.png" alt="Any set can be a category"/>
<img class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/set.png" alt="Any set can be a category"/>
<h3>Any Set</h3>
<p>Any set \(E: \ob{E}=E, \hom{x,y}=\{x\} ⇔ x=y \)</p>
<p class="orange">Only identities</p>
@ -5098,7 +5098,7 @@ such that for each \(f:A→B\):</p>
<div class="flush"></div></section>
<section class="slide">
<h2 id="isomorph">Isomorph</h2>
<p><img class="right" alt="isomorph cats" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/isomorph-cats.jpg" /> <em class="orange">isomorphism</em>: \(f:A→B\) which can be &quot;undone&quot; <em>i.e.</em><br />\(∃g:B→A\), \(g∘f=id_A\) <span class="and">&amp;</span> \(f∘g=id_B\)<br />in this case, \(A\) <span class="and">&amp;</span> \(B\) are <em class="orange">isomorphic</em>.</p>
<p><img class="right" alt="isomorph cats" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/isomorph-cats.jpg" /> <em class="orange">isomorphism</em>: \(f:A→B\) which can be &quot;undone&quot; <em>i.e.</em><br />\(∃g:B→A\), \(g∘f=id_A\) <span class="and">&amp;</span> \(f∘g=id_B\)<br />in this case, \(A\) <span class="and">&amp;</span> \(B\) are <em class="orange">isomorphic</em>.</p>
<p><span class="orange">A≌B</span> means A and B are essentially the same.<br />In Category Theory, <span class="orange">=</span> is in fact mostly <span class="orange"></span>.<br />For example in commutative diagrams.</p>
<div class="flush"></div></section>
<section class="slide">
@ -5121,28 +5121,28 @@ A <em>functor</em> <span class="orange">\(\F\)</span> from <span class="blue">\(
<section class="slide">
<h2>Functor Example (ob → ob)</h2>
<img width="65%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/functor.png" alt="Functor"/>
<img width="65%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/functor.png" alt="Functor"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Functor Example (hom → hom)</h2>
<img width="65%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/functor-morphism.png" alt="Functor"/>
<img width="65%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/functor-morphism.png" alt="Functor"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Functor Example</h2>
<img width="65%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/functor-morphism-color.png" alt="Functor"/>
<img width="65%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/functor-morphism-color.png" alt="Functor"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Endofunctors</h2>
<p>An <em>endofunctor</em> for \(\C\) is a functor \(F:\C→\C\).</p>
<img width="75%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/endofunctor.png" alt="Endofunctor"/>
<img width="75%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/endofunctor.png" alt="Endofunctor"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Category of Categories</h2>
<img style="min-width:43%; width: 43%" class="right" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/fractalcat.jpg" />
<img style="min-width:43%; width: 43%" class="right" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/fractalcat.jpg" />
<p>Categories and functors form a category: \(\Cat\)</p>
<ul><li>\(\ob{\Cat}\) are categories
@ -5171,7 +5171,7 @@ A <em>functor</em> <span class="orange">\(\F\)</span> from <span class="blue">\(
<p>Category \(\Hask\):</p>
<img class="right" style="max-width:30%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/hask.png" alt="Haskell Category Representation"/>
<img class="right" style="max-width:30%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/hask.png" alt="Haskell Category Representation"/>
<ul><li>
\(\ob{\Hask} = \) Haskell types
@ -5261,7 +5261,7 @@ fmap head [[1,2,3],[4,5,6]] == [1,4]</code></pre>
<p>Put normal function inside a container. Ex: list, trees...<p>
<img width="70%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/boxfunctor.png" alt="Haskell Functor as a box play"/>
<img width="70%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/boxfunctor.png" alt="Haskell Functor as a box play"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Haskell Functor properties</h2>
@ -5278,7 +5278,7 @@ fmap head [[1,2,3],[4,5,6]] == [1,4]</code></pre>
<p>Haskell functor can be seen as boxes containing all Haskell types and functions.
Haskell types look like a fractal:</p>
<img width="70%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/hask-endofunctor.png" alt="Haskell functor representation"/>
<img width="70%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/hask-endofunctor.png" alt="Haskell functor representation"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Functor as boxes</h2>
@ -5286,7 +5286,7 @@ Haskell types look like a fractal:</p>
<p>Haskell functor can be seen as boxes containing all Haskell types and functions.
Haskell types look like a fractal:</p>
<img width="70%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/hask-endofunctor-objects.png" alt="Haskell functor representation"/>
<img width="70%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/hask-endofunctor-objects.png" alt="Haskell functor representation"/>
<div class="flush"></div></section>
<section class="slide">
<h2>Functor as boxes</h2>
@ -5294,7 +5294,7 @@ Haskell types look like a fractal:</p>
<p>Haskell functor can be seen as boxes containing all Haskell types and functions.
Haskell types look like a fractal:</p>
<img width="70%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/hask-endofunctor-morphisms.png" alt="Haskell functor representation"/>
<img width="70%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/hask-endofunctor-morphisms.png" alt="Haskell functor representation"/>
<div class="flush"></div></section>
<section class="slide">
<h2 id="non-haskell-hasks-functors">&quot;Non Haskell&quot; Hask's Functors</h2>
@ -5331,7 +5331,7 @@ Haskell types look like a fractal:</p>
<div class="flush"></div></section>
<section class="slide">
<h2 id="category-of-hask-endofunctors">Category of \(\Hask\) Endofunctors</h2>
<img width="50%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Category of Hask endofunctors" />
<img width="50%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Category of Hask endofunctors" />
<div class="flush"></div></section>
<section class="slide">
<h2 id="category-of-functors">Category of Functors</h2>
@ -5346,7 +5346,7 @@ Haskell types look like a fractal:</p>
<section class="slide">
<h2 id="natural-transformations">Natural Transformations</h2>
<p>Let \(F\) and \(G\) be two functors from \(\C\) to \(\D\).</p>
<p><img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/natural-transformation.png" alt="Natural transformation commutative diagram" class="right"/> <em>A natural transformation:</em> familly η ; \(η_X\in\hom{\D}\) for \(X\in\ob{\C}\) s.t.</p>
<p><img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/natural-transformation.png" alt="Natural transformation commutative diagram" class="right"/> <em>A natural transformation:</em> familly η ; \(η_X\in\hom{\D}\) for \(X\in\ob{\C}\) s.t.</p>
<p>ex: between Haskell functors; <code>F a -&gt; G a</code><br />Rearragement functions only.</p>
<div class="flush"></div></section>
<section class="slide">
@ -5356,9 +5356,9 @@ toList :: [a] -> List a
toList [] = Nil
toList (x:xs) = Cons x (toList xs)</code></pre>
<p><code>toList</code> is a natural transformation. It is also a morphism from <code>[]</code> to <code>List</code> in the Category of \(\Hask\) endofunctors.</p>
<img style="float:left;width:30%;margin-left: 1em;" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/nattrans-list-tree.png" alt="natural transformation commutative diagram"/>
<img style="float:left;width:30%;margin-left: 1em;" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/nattrans-list-tree.png" alt="natural transformation commutative diagram"/>
<figure style="float:right;width:50%">
<img style="width:40%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/list-tree-endofunctor-morphism.png" alt="natural transformation commutative diagram"/>
<img style="width:40%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/list-tree-endofunctor-morphism.png" alt="natural transformation commutative diagram"/>
</figure>
<div class="flush"></div></section>
@ -5369,9 +5369,9 @@ toHList :: List a -> [a]
toHList Nil = []
toHList (Cons x xs) = x:toHList xs</code></pre>
<p><code>toHList</code> is a natural transformation. It is also a morphism from <code>List</code> to <code>[]</code> in the Category of \(\Hask\) endofunctors.</p>
<img style="float:left;width:30%;margin-left:1em" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/nattrans-tree-list.png" alt="natural transformation commutative diagram"/>
<img style="float:left;width:30%;margin-left:1em" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/nattrans-tree-list.png" alt="natural transformation commutative diagram"/>
<figure style="float:right;width:50%">
<img style="width:40%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/tree-list-endofunctor-morphism.png" alt="natural transformation commutative diagram"/> <figcaption><code>toList . toHList = id</code> <span class="and">&amp;</span> <code>toHList . toList = id</code> <span style="visibility:hidden"><span class="and">&amp;</span></span><br/> therefore <code>[]</code> <span class="and">&amp;</span> <code>List</code> are <span class="orange">isomorph</span>. </figcaption>
<img style="width:40%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/tree-list-endofunctor-morphism.png" alt="natural transformation commutative diagram"/> <figcaption><code>toList . toHList = id</code> <span class="and">&amp;</span> <code>toHList . toList = id</code> <span style="visibility:hidden"><span class="and">&amp;</span></span><br/> therefore <code>[]</code> <span class="and">&amp;</span> <code>List</code> are <span class="orange">isomorph</span>. </figcaption>
</figure>
<div class="flush"></div></section>
@ -5381,9 +5381,9 @@ toHList (Cons x xs) = x:toHList xs</code></pre>
toMaybe [] = Nothing
toMaybe (x:xs) = Just x</code></pre>
<p><code>toMaybe</code> is a natural transformation. It is also a morphism from <code>[]</code> to <code>Maybe</code> in the Category of \(\Hask\) endofunctors.</p>
<img style="float:left;width:30%;margin-left:1em;" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/nattrans-list-maybe.png" alt="natural transformation commutative diagram"/>
<img style="float:left;width:30%;margin-left:1em;" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/nattrans-list-maybe.png" alt="natural transformation commutative diagram"/>
<figure style="float:right;width:50%">
<img style="width:40%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/list-maybe-endofunctor-morphism.png" alt="natural transformation commutative diagram"/>
<img style="width:40%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/list-maybe-endofunctor-morphism.png" alt="natural transformation commutative diagram"/>
</figure>
<div class="flush"></div></section>
@ -5393,9 +5393,9 @@ toMaybe (x:xs) = Just x</code></pre>
mToList Nothing = []
mToList Just x = [x]</code></pre>
<p><code>toMaybe</code> is a natural transformation. It is also a morphism from <code>[]</code> to <code>Maybe</code> in the Category of \(\Hask\) endofunctors.</p>
<img style="float:left;width:30%;margin-left:1em;" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/nattrans-maybe-list.png" alt="natural transformation commutative diagram"/>
<img style="float:left;width:30%;margin-left:1em;" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/nattrans-maybe-list.png" alt="natural transformation commutative diagram"/>
<figure style="float:right;width:50%">
<img style="width:40%" src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/maybe-list-endofunctor-morphsm.png" alt="relation between [] and Maybe"/> <figcaption>There is <span class="red">no isomorphism</span>.<br/> Hint: <code>Bool</code> lists longer than 1. </figcaption>
<img style="width:40%" src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/maybe-list-endofunctor-morphsm.png" alt="relation between [] and Maybe"/> <figcaption>There is <span class="red">no isomorphism</span>.<br/> Hint: <code>Bool</code> lists longer than 1. </figcaption>
</figure>
<div class="flush"></div></section>
@ -5554,11 +5554,11 @@ drawPoint p = do
<div class="flush"></div></section>
<section class="slide">
<h2 id="fold"><code>fold</code></h2>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/tower_folded.gif" alt="fold" style="width:50%;max-width:50%"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/tower_folded.gif" alt="fold" style="width:50%;max-width:50%"/>
<div class="flush"></div></section>
<section class="slide">
<h2 id="κατα-morphism">κατα-morphism</h2>
<img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/earth_catamorphed.gif" alt="catamorphism" style="width:90%;max-width:90%"/>
<img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/earth_catamorphed.gif" alt="catamorphism" style="width:90%;max-width:90%"/>
<div class="flush"></div></section>
<section class="slide">
<h2 id="κατα-morphism-fold-generalization">κατα-morphism: fold generalization</h2>

View File

@ -114,7 +114,7 @@ Haskell Vite et Direct <span class="nicer">»</span>
<a href="../../../Scratch/fr/blog/Social-link-the-right-way/"><span class="small">2013-03-14</span> <div class="inlineblockimg"><img src="../../../Scratch/img/blog/Social-link-the-right-way/main.png" alt="Être correct avec les boutons share" class="inlineimage" /></div> Être correct avec les boutons share</a>
</li>
<li>
<a href="../../../Scratch/fr/blog/Category-Theory-Presentation/"><span class="small">2012-12-12</span> <div class="inlineblockimg"><img src="http://yogsototh.github.com/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Category Theory Presentation" class="inlineimage" /></div> Category Theory Presentation</a>
<a href="../../../Scratch/fr/blog/Category-Theory-Presentation/"><span class="small">2012-12-12</span> <div class="inlineblockimg"><img src="http://yogsototh.github.io/Category-Theory-Presentation/categories/img/mp/cat-hask-endofunctor.png" alt="Category Theory Presentation" class="inlineimage" /></div> Category Theory Presentation</a>
</li>
<li>
<a href="../../../Scratch/fr/blog/Haskell-OpenGL-Mandelbrot/"><span class="small">2012-06-15</span> <div class="inlineblockimg"><img src="../../../Scratch/img/blog/Haskell-OpenGL-Mandelbrot/BenoitBMandelbrot.jpg" alt="Un example progressif avec Haskell" class="inlineimage" /></div> Un example progressif avec Haskell</a>