On Monday 11 Jul 2011 11:20:36 Bertfried Fauser wrote:
> Dear Martin,
>
>   I may have some of the same concerns as Ralf. Some time ago I read
> some slides,
> (which Bill pointed me to? but I forgot where to find them) about
> using category theory
> in/for computer algebra (it may be still on the axiom webpage
> somewhere). So there
> have been people already thinking about this....

Yes, reading some of these papers, I get the impression that this link
between computing and category theory is a subject that one could
spend a lifetime on: all the time thinking that progress is close but
never getting anywhere. The sensible thing would probably be to keep
well clear of category theory!

The problem is I keep coming across situations where it would be
useful, for instance, I was thinking about how to convert a finite
state machine into a instance of Lambda, then I realised this is just
about implementing stateful code in a pure functional language and
Haskell has already solved that problem - use monads (from my limited
knowledge of Haskell I get the impression, whatever the problem, the
answer is to use monads).

> >> 1) I don't quite understand the benefit of this domain other than
> >> perhaps drawing diagrams. What is your actual motivation for such a
> >> domain.
>
>   With homsets, you define arrows in a small concrete category, not
> every category is representable. Also, this is just another way of
> defining a `set' of arrows, so your function first point of view is
> not pure here.
>
> Computation with states may be modelled within a framework of (categorical)
> coalgebras. To do so you need the concept of a functor. Just homsets
> will not do.
>
> Maclane said that category theory was invented just to be able to talk
> about functors and natural transformations. It would hence be really
> necessary to be able to iterate your constructions, having `homsets'
> on a category (note that is not just homsets on homsets).

Given the above issues, perhaps what I am looking for is some subset
of category theory that is simple enough to be implementable but
complex enough to provide the sort of framework I'm looking for. I
like the idea of starting with the simplest concrete category where
functors are mappings between finite sets and then building up from
the inside to the outside to more complex categories? Then to try to
find a way to reverse this and try to define the inside from the
outside (only upto isomorphism of course).

> Another thing which comes into my mind are such constructions as
> equalizers and coequalizers, and properties of arrows such as monic,
> epic, which are necessary to
> infere the commutativity of pull-back or push-out diagrams. So arrows come
> with atributes.
>
> Categories can be defined using graphs, see for example Lambek -
> Scott, introduction
> to higher order categorical logic. But to make them versatile needs much
> more.
>
> From a computational point of view, I would like to have categorical
> structures in AXIOM such as monads. (As Haskel has). These are really
> power full tools to write very abstract fancy programs.

I get the impression from what you say and from the papers you mention
that there are two approaches:
1) Programs like Haskell provides some category-theory-like
Typeclasses, using higher order functions and features of the language
like partial function application and currying.
2) Attempts to more fully model category theory such as Charity
program seem to have stalled, its difficult to model universal mapping
properties and there are lots of parameters to model which would get
unwieldy.

Given the difficulty of all this, it seems to me that there is value
in just modelling these structures and being able to produce diagrams
to help understanding, even if this does not yet do any useful
calculations.

Martin

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/fricas-devel?hl=en.

Reply via email to