# Isomorphism
An isomorphism is a loose sense of equality.
"A equals to B" means A and B share all their properties in common.
Formally, "A=B" <=> "For any proposition P(x), P(A) <=> P(B)". This
is Leibniz's law.
However, this definition is too strict. You and what you were in
10 years ago are not identical, because they don't share all their
properties in common. We need a loose sense of equality. That's
where an isomorphism come in.
If A and B share SOME properties in common, we say A and B are
"isomorphic". A relation which A and B have is called an "isomorphism".
Since they share SOME properties, you should say WHAT properties
they share in common. If they have the same color, they are "color
isomorphic". If they have the same firmness, they are "firmness
isomorphic". We denote "A and B are isomorphic" as "A ~= B".
A morphism is a weak version of an isomorphism. For firmness, "A
is more firm than B" is a morphism. For propositions, "A implies
B" is a morphism. We denote a morphism as "A -> B". When a morphism
has its inverse, it becomes an isomorphism. If "A is more firm than
B" and "B is more firm than A", then A and B have the same firmness,
i.e., they are "firmness isomorphic". If "A implies B" and "B imples
A", then they are logically equivalent, i.e., they are "logically
isomorphic". Note that these examples are simple, because they take
the form of "[A->B & B->A] <=> [A~=B]". But if a morphism is a
function, f:A->B and g:B->A do not need to be each other's inverse.
We call objects, morphisms, the composition together as a "category".
It makes a domain of the property, like "Color category", "Firmness
category", &c. In a category, we can't distinguish an isomorphism
with the identity, because we restricted the domain. Thus,
> Isomorphic objects are identical.
>
> The Principle of Structuralism
We can also make a relation between categories. A relation of this
kind is called a "Functor", like a "function" but between categories.
By a functor, objects map to objects, morphisms map to morphisms,
a composition maps to another composition. You can think of a
category of functors too. In that category, an isomorphism is a
"natural isomorphism". It means the two are REALLY the same.
There are many general results by category theory. Think of the
firmness category. [A->B] <=> [A is more firm than B]. If there is
a A->X for every object X, then it means A is the most firm object.
If we think of X->B instead, we get the least firm object B. We
call these kind of objects, the initial object and the terminal
object. These objects are the optimal solutions with a type of
functors called "Adjoint functor". With categories, We can think
of the optimality from a more general point of view.
For more information, I recommend "Category theory" by Steve Awodey.
"Categories for the Working Mathematician" by Saunders Mac Lane is
the bible because HE made the theory (Awodey is a student of him),
but it requires mathematical maturity. If you can, read the master
and not his pupil. In contrast, Awodey didn't write for math students
only, so it is better for noobs.