> First, any exposition which involves infinity is ambiguous. > But we can resolve this difficulty by considering a non-infinite > set of natural numbers. I shall arbitrarily pick: natural > numbers modulo 5. N= {0,1,2,3,4} > > But if we consider our function to be a transformation on N, > there is no distinction between f(x)= x+1 and g(x)= x-1. In > both cases the transformation on N yields N. > > I have an additional difficulty, here, since I do not see > how an arrow can represent an arbitrary relation. > > Finally, technically speaking, if we go back to dealing with > the infinite set of natural numbers, the codomain of f is not > the set of natural numbers. It's a different set. It's the > set of integers which are greater than 0.
First of all, the *image* of a function is the set of possible outputs when you apply the function to its domain. The *codomain* is part of the definition of a function, it must include the image but must not always be equal to it. When we talk about a function like f(x)=x+1 in most contexts we generally aren't so formal that we must define the domain and codomain, but formally they are required and this is crucial for the language of category theory. Consider a category with two objects, {0} and {0,1} and the constant zero function f(x)=0. I must tell you what the domain and codomain are, since this could refer to f: {0,1} -> {0}, f: {0} -> {0}, or either of the other two possibilities (in which the codomain is not equal to the image). Formally, these are all different functions and they would be all different arrows in our category. Remember that in category theory our arrows aren't functions, they are formal abstract things which have each have a domain and codomain and interact with a composition operation. There is a quote from someone that goes something like "category theory is like a language where verbs [arrows] are first class citizens". In fact, the "objects" we talk about in category theory are really for convenience, they are unnecessary since each corresponds exactly with one identity arrow, we could talk about category theory without objects, just using identity arrows instead. Category theory is entirely about the structure of the arrows. To say f(x)=x+1 and g(x)=x-1 have no distinction because both yield N does not quite make sense in this context because what they yield is just their codomain, which we defined, and we care about their compositional structure. Both have domain and codomain N. So does the identity i on N. We also have f^5=g^5=fg=gf=i (we would say f and g are inverses and have order 5). Category theory captures this structure. Remember you have a 5-element set and you are considering functions from it to itself. The functions f and g are easily understood because I know what you mean by addition and subtraction on the 5 symbols you used. Its true that f and g are symmetric to each other in our category, because they are both cyclic rotations of five objects. If you want to distinguish them with an idea like f is a "forward" rotation, you would need a category that could formally represent order and direction. What we have is only a set. > Here, my issue is that an arrow cannot represent a > function. Only a collection of arrows can represent a > function. But that collection cannot be a category. > Because if two arrows in a category can be composed the > category automatically includes the composition of those > arrows. > > So, here, we cannot, for example, distinguish between f x = x + 1 > and h x = x + 2 > > > A function, like any mathematical thing, can be represented in terms of > > category theory in many different ways and you have to be careful when > > doing so. > > It seems to me that, if your statements here are correct, > then category theory cannot fully represent functions nor > relations -- instead we have to first choose which aspect > of the function (or whatever) we are representing and then > build our categories to represent just that aspect (and > not the complete definition of the function). > > Put differently: the presentation here gave two different > representations of aspects of a single function, and neither > presentation fully represented that function. Your final conclusion is good I think, neither example I gave fully represented everything we know about the function x+1 (the first was x+1 as a function on N as a set, the second also captured the order of N). It is worth noting that even though I used an arrow to represent x+1 in my first example and a functor in the second, a functor is an arrow in a category of categories and functors, so really both are arrows. But this doesn't mean category theory can't do it. With a lot of extra effort you could build up a more complete model of numbers in category theory and then you'd have a way of talking about the function x+1 in that category that models everything you want. Of course formally you'll always have to be precise about your domain and codomain, but if you can categorically define subsets then you can capture your x+1 arrow and its restrictions to smaller domains/codomains. The way I understand it, category theory has three interpretations: As a simple strictly algebraic structure that describes "arrows" which obey composition-type laws. I think this isn't so hard to understand but most of the information I found online jumps right into one of the two below. As a foundation for mathematics itself. That is, somehow we can use category theory and build all of mathematics from it (just like set theory or logic). I don't really know anything about this other than people say its true and I believe them because they're smarter than me and I'd rather not build a complete theoretical framework for modern mathematics from scratch. As a unifying thread in mathematics. "You know all that stuff you learned about different branches of mathematics? It can all be described in the language of category theory" "Cool but its too abstract and I don't like it" [In my experience this is how most math students first meet category theory] However, one great result of this is that notation becomes much nicer, since mathematicians can use categorical notation across all branches of math and analogous concepts then use analogous notation. I hope this helps clear things up. Jordan ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm