mirror of
https://github.com/abuseofnotation/category-theory-illustrated.git
synced 2024-09-11 08:55:55 +03:00
stuff
This commit is contained in:
parent
bd86e98c56
commit
9d2660d79c
@ -31,7 +31,7 @@ You already see how abstract theories may be useful. Because they are so simple,
|
||||
<!-- comic - brain on category theory -->
|
||||
|
||||
<!--
|
||||
People have tried to be precise and at the same time down to Earth for centuries, and only recently discovered that "precise and down to Earth" is an oxymoron. Let's take Euclidian geometry as an example. Yes, Euclidian geometry is precise, because it is valid for all sets of objects, called ("point" "line" "angle" and "circle" etc.), which have relationships, as defined by the five famous axioms. Yes, geometry does, in many instances, describe the natural world, because there are many sets of objects which have these relations. However, its "precise" part and it's "down to Earth" part have nothing to do with each other. We can, for example, define a point as any stain on the floor of your room and that a line as a piece of duct tape, put on the same floor - that will be a completely valid application of the Euclidian laws, albeit not very useful one. Or we can try to use geometry to reason about points on the surface of the Earth, which is a very useful application, of geometry, however not of Euclidian geometry, because Euclidian geometry only describes points on a flat plane, and the Earth is not flat. You can argue that these are actually two separate theories there, which just happen to be perceived as one. You have the axioms, or the postulates on one hand, which are not useful for anything on their own, and you have applications in science and engineering which are somewhat based on them, but not quite.
|
||||
People have tried to be precise and at the same time down to Earth for centuries, and only recently discovered that "precise and down to Earth" is an oxymoron. Let's take Euclidian geometry as an example. Yes, Euclidian geometry is precise, because it is valid for all sets of objects, called ("point" "line" "angle" and "circle" etc.), which have relationships, as defined by the five famous axioms. Yes, geometry does, in many instances, describe the natural world, because there are many sets of objects which have these relations. However, its "precise" part and its "down to Earth" part have nothing to do with each other. We can, for example, define a point as any stain on the floor of your room and that a line as a piece of duct tape, put on the same floor - that will be a completely valid application of the Euclidian laws, albeit not very useful one. Or we can try to use geometry to reason about points on the surface of the Earth, which is a very useful application, of geometry, however not of Euclidian geometry, because Euclidian geometry only describes points on a flat plane, and the Earth is not flat. You can argue that these are actually two separate theories there, which just happen to be perceived as one. You have the axioms, or the postulates on one hand, which are not useful for anything on their own, and you have applications in science and engineering which are somewhat based on them, but not quite.
|
||||
-->
|
||||
|
||||
Sets
|
||||
@ -363,7 +363,7 @@ To do that, we go back to the examples of the types of relationships that functi
|
||||
|
||||
![Opposite colors](../01_set/function_one_one.svg)
|
||||
|
||||
If we have a one-one-function that connects sets that are of the same size (as is the case here), then this function has the following property: all elements from the target set have exactly one arrow pointing at them. In this case, the function is *invertible*, that is, if you flip the arrows of the function and it's source and target, you get another valid function.
|
||||
If we have a one-one-function that connects sets that are of the same size (as is the case here), then this function has the following property: all elements from the target set have exactly one arrow pointing at them. In this case, the function is *invertible*, that is, if you flip the arrows of the function and its source and target, you get another valid function.
|
||||
|
||||
![Opposite colors](../01_set/isomorphism_one_one.svg)
|
||||
|
||||
@ -438,7 +438,7 @@ Equivalence relations and isomorphisms
|
||||
|
||||
We said, that isomorphic sets aren't necessarily the same set (although the reverse is true.) However, it is hard to get away from the notion that being isomorphic means that they are *equal* or *equivalent* in some respect. For example, all people who are connected by the *isomorphic* mother/child relationship share some of the same genes.
|
||||
|
||||
And in computer science, if we have functions that convert an object of type $A$ to an object of type $B$ and the other way around (as for example the functions between a data structure and it's id, we also can pretty much regard $A$ and $B$ as two formats of the same thing, as having one means that we can easily obtain the other.
|
||||
And in computer science, if we have functions that convert an object of type $A$ to an object of type $B$ and the other way around (as for example the functions between a data structure and its id, we also can pretty much regard $A$ and $B$ as two formats of the same thing, as having one means that we can easily obtain the other.
|
||||
|
||||
Equivalence relations
|
||||
---
|
||||
|
@ -230,7 +230,7 @@ So what have we missed? Simple - although we replaced the propositions that cons
|
||||
|
||||
$\neg{A} \wedge \neg{B}$
|
||||
|
||||
Saying that this formula is the opposite or "blond and brown" - is the same thing as saying that it is equivalent to it's negation, which is precisely what the second De Morgan formula says.
|
||||
Saying that this formula is the opposite or "blond and brown" - is the same thing as saying that it is equivalent to its negation, which is precisely what the second De Morgan formula says.
|
||||
|
||||
$\neg(A \vee B) = \neg{A} \wedge \neg{B}$
|
||||
|
||||
@ -285,7 +285,7 @@ Defining Categories (again)
|
||||
|
||||
All category theory books (including this one) starts by talking about set theory. However looking back I really don't know why that is the case - most books that focus around a given subject don't usually start off by introducing an *entirely different subject* before even starting to talk about the main one, even if the two subjects are so related.
|
||||
|
||||
Perhaps the set-first approach *is* the best way to introduce people to categories. Or perhaps using sets to introduce categories is just one of those things that people do because everyone else does it. But one thing is for certain - we don't need to study sets in order to understand categories. So now I would like to start over and talk about categories as a first concept. So pretend like it's a new book (I wonder if I can dedicate this to a different person.)
|
||||
Perhaps the set-first approach *is* the best way to introduce people to categories. Or perhaps using sets to introduce categories is just one of those things that people do because everyone else does it. But one thing is for certain - we don't need to study sets in order to understand categories. So now I would like to start over and talk about categories as a first concept. So pretend like this is a new book (I wonder if I can dedicate this to a different person.)
|
||||
|
||||
So. A category is a collection of objects (things) where the "things" can be anything you want. Consider, for example, these ~~colorful~~ gray balls:
|
||||
|
||||
@ -430,7 +430,7 @@ Incidentally this is the definition of a mathematicall law called *commutativity
|
||||
Associativity
|
||||
---
|
||||
|
||||
Commutativity is the law abided in contexts in which any object can be represented as the sum of its parts *when combined in whichever order*. But there are also many cases in which an object is to be represented by the sum of it's parts, but when *combined in one specific way*.
|
||||
Commutativity is the law abided in contexts in which any object can be represented as the sum of its parts *when combined in whichever order*. But there are also many cases in which an object is to be represented by the sum of its parts, but when *combined in one specific way*.
|
||||
|
||||
In such contexts, commutativity would not hold, because the fact that A can be combined with B to get C would not automatically mean that B can be combined with A to get the same result (in the case of functions, they may not be able to be combined at all.)
|
||||
|
||||
|
@ -116,7 +116,7 @@ All monoids that we examined so far are also *commutative*. We will see some non
|
||||
Groups
|
||||
---
|
||||
|
||||
A group is a monoid such that for each of it's elements, there is another element which is the so called "inverse" of the first one where the element and its inverse cancel each other out when applied one after the other. Plain-English definitions like this make you appreciate mathematical formulas more - formally we say that for all elements $x$, there must exist $x'$ such that $x • x' = i$ ( where $i$ is the identity element).
|
||||
A group is a monoid such that for each of its elements, there is another element which is the so called "inverse" of the first one where the element and its inverse cancel each other out when applied one after the other. Plain-English definitions like this make you appreciate mathematical formulas more - formally we say that for all elements $x$, there must exist $x'$ such that $x • x' = i$ ( where $i$ is the identity element).
|
||||
|
||||
If we view *monoids* as a means of modeling the effect of applying a set of (associative) actions, we use *groups* to model the effects of actions are also *reversible*.
|
||||
|
||||
@ -142,7 +142,7 @@ Symmetry groups and group classifications
|
||||
|
||||
An interesting kinds of groups/monoids are the groups of *symmetries* of geometric figures. Given some geometric figure, a symmetry is an action after which the figure is not displaced (e.g. it can fit into the same mold that it fit before the action was applied).
|
||||
|
||||
We won't use the balls this time, because in terms of symmetries they have just one position and hence just one action - the identity action (which is it's own reverse, by the way). So let's take this triangle, which, for our purposes, is the same as any other triangle (we are not interested in the triangle itself, but in its rotations).
|
||||
We won't use the balls this time, because in terms of symmetries they have just one position and hence just one action - the identity action (which is its own reverse, by the way). So let's take this triangle, which, for our purposes, is the same as any other triangle (we are not interested in the triangle itself, but in its rotations).
|
||||
|
||||
![A triangle](../03_monoid/symmetry_group.svg)
|
||||
|
||||
@ -172,7 +172,7 @@ But it gets much simpler to grasp if we notice the following: although our grou
|
||||
|
||||
![The group of rotations in a triangle](../03_monoid/symmetry_rotation_cyclic.svg)
|
||||
|
||||
Symmetry groups that have such "main" rotation, and, in general, groups and monoids that have an object that is capable of generating all other objects by it's repeated application, are called *cyclic groups*. And such rotation are called the group's *generator*.
|
||||
Symmetry groups that have such "main" rotation, and, in general, groups and monoids that have an object that is capable of generating all other objects by its repeated application, are called *cyclic groups*. And such rotation are called the group's *generator*.
|
||||
|
||||
All rotation groups are cyclic groups. Another example of a cyclic groups is, yes, the natural numbers under addition. Here we can use $+1$ or $-1$ as generators.
|
||||
|
||||
@ -259,7 +259,7 @@ Like all product groups, the Klein-four group is *non-cyclic* (because there are
|
||||
|
||||
In fact, products groups (except the ones that feature the trivial group) are always *non-cyclic*, because even if the two groups that comprise the product it are cyclic, and have just 1 generator each, their product would have 2 generators.
|
||||
|
||||
Product groups are still abelian, provided that the groups that form them are abelian - we can see that this is true by noticing that, although the generators are more than one, each of them acts only on it's own part of the group, so they don't interfere with each other in any way.
|
||||
Product groups are still abelian, provided that the groups that form them are abelian - we can see that this is true by noticing that, although the generators are more than one, each of them acts only on its own part of the group, so they don't interfere with each other in any way.
|
||||
|
||||
Fundamental theorem of Finite Abelian groups
|
||||
---
|
||||
@ -412,7 +412,7 @@ Formally, if we use $Perm$ to denote the permutation group then $Perm(A) \cong A
|
||||
|
||||
![The group of rotations in a triangle - set notation and normal notation](../03_monoid/symmetry_rotation_comparison.svg)
|
||||
|
||||
Or in other words, representing the elements of a group as permutations actually yields a representation of the monoid itself (sometimes called it's *standard representation*.)
|
||||
Or in other words, representing the elements of a group as permutations actually yields a representation of the monoid itself (sometimes called its *standard representation*.)
|
||||
|
||||
Cayley's theorem may not seem very impressive, but that only shows how influential it has been as a result.
|
||||
|
||||
@ -496,7 +496,7 @@ Categories have an identity morphism for each object, so for categories with jus
|
||||
|
||||
Categories provide a way to compose two morphisms with an appropriate type signature, and for categories with one object this means that *all morphisms should be composable* with one another. And the monoid operation does exactly that - given any two objects (or two morphisms, if we use the categorical terminology), it creates a third.
|
||||
|
||||
Philosophically, defining a monoid as a one-object category means corresponds to the view of monoids as a model of how a set of (associative) actions that are performed on a given object alter it's state. Provided that the object's state is determined solely by the actions that are performed on it, we can leave it out of the equation and concentrate on how the actions are combined. And as per usual, the actions (and elements) can be anything, from mixing colors in paint, or adding a quantities to a given set of things etc.
|
||||
Philosophically, defining a monoid as a one-object category means corresponds to the view of monoids as a model of how a set of (associative) actions that are performed on a given object alter its state. Provided that the object's state is determined solely by the actions that are performed on it, we can leave it out of the equation and concentrate on how the actions are combined. And as per usual, the actions (and elements) can be anything, from mixing colors in paint, or adding a quantities to a given set of things etc.
|
||||
|
||||
Group/monoid presentations
|
||||
---
|
||||
|
@ -486,7 +486,7 @@ This structure is actually a categorical reincarnation our favorite rule of infe
|
||||
|
||||
![Implies operation with impostors](../05_logic/implies_modus_ponens.svg)
|
||||
|
||||
This definition is not complete, however, because $(A → B)$ is *not the only object* that fits in this formula. For example, the set $A → B ∧ C$ is also one such object, as is $A → B ∧ C ∧ D$. So how do we set apart the real formula from all those "imposter" formulas? If you remember the definitions of the *categorical product* (or of it's equivalent for orders, the *meet* operation) you would already know where this is going: we define the function object using a *universal property*, by recognizing that all other formulas that can be in the place of $X$ in $A ∧ X → B$ point to $(A → B)$ i.e. they are below $(A → B)$ in a Hasse diagram.
|
||||
This definition is not complete, however, because $(A → B)$ is *not the only object* that fits in this formula. For example, the set $A → B ∧ C$ is also one such object, as is $A → B ∧ C ∧ D$. So how do we set apart the real formula from all those "imposter" formulas? If you remember the definitions of the *categorical product* (or of its equivalent for orders, the *meet* operation) you would already know where this is going: we define the function object using a *universal property*, by recognizing that all other formulas that can be in the place of $X$ in $A ∧ X → B$ point to $(A → B)$ i.e. they are below $(A → B)$ in a Hasse diagram.
|
||||
|
||||
![Implies operation with universal property](../05_logic/implies_universal_property.svg)
|
||||
|
||||
|
@ -40,7 +40,7 @@ Object mapping
|
||||
|
||||
The object mapping of the forgetful functor consists of picking the object in the simpler category that corresponds to the one from the richer one. It works by just removing the extra structure or properties of each object in the richer category which is not present in the simpler one.
|
||||
|
||||
Let's take the forgetful functor between the category of sets $Set$ and the category of monoids ($Mon$) as an example. A monoid is a set, combined with *a monoid operation*. The monoid operation is the extra structure. And if you do away with it, what is left from a monoid is its underlying set. This observation defines the object mapping of a forgetful functor that goes from the category of monoids to the category of sets - each monoid is mapped to it's underlying set.
|
||||
Let's take the forgetful functor between the category of sets $Set$ and the category of monoids ($Mon$) as an example. A monoid is a set, combined with *a monoid operation*. The monoid operation is the extra structure. And if you do away with it, what is left from a monoid is its underlying set. This observation defines the object mapping of a forgetful functor that goes from the category of monoids to the category of sets - each monoid is mapped to its underlying set.
|
||||
|
||||
![Forgetful functor - object mapping](forgetful_functor_objects.svg)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user