
On Thu, 9 Aug 2012, Patrick Browne
On 09/08/12, Jay Sulzberger
wrote: Here we are close to the distinction between a class of "objects which satisfy a condition" vs "objects with added structure", for which see:
� http://math.ucr.edu/home/baez/qg-spring2004/discussion.html � http://ncatlab.org/nlab/show/stuff,+structure,+property
oo--JS.
This seems to be addressing my my� question, but I am not sure that I can relate the above ideas to Haskell.
I am, perhaps too gingerly, looking at Haskell. I have not yet attempted to read the standard. But from a distance (and this addresses in part the question "Is it April Fool's Day?" in response to my mild suggestion that category theory might be applied to the relation between code-making and deployment of a production system), looking at discussions by people who use Haskell, a large scale effort must be made just to write down even the most primitive approximations to these surely existing functors: 1. the various functors between various categories with objects types and with objects values 2. the various functors between various categories with objects "programs in source code form", with objects "compiled programs", with objects "running programs", and some categories that somehow deal with "behaviors" I am aware that I am ignorant of the literature which deals with these things.
Below is my current (naive) understanding and some further question:
"objects which satisfy a condition" Could these objects be models that have the same signature (instances in Haskell). Haskell type classes seem to be signature only (no equations, ignoring default methods) so in general� they provide an empty theory with no logical consequences.
"objects with added structure" I am struggling with this concept both in general and in relation to the hierarchy from my earlier posting. Could this be "model expansion" where a theory describing an existing model is enriched with additional axioms. The enriched theory is then satisfied by models with more structure (operations). I am unsure about the size of this expanded model and the number of potential expanded models. Would a expanded model have less elements? Would there be� fewer models for the enriched theory?
In relation to Haskell data types also have structure (constructors). The data types can be used to build other data types (is this model expansion?) I am not sure if the model (instance) of a sub-class could be considered as expanded model of its super-class.
I am not today enough up on the old Baez et al discussion. I hope to post something along this line when I know a bit more Haskell, and after I have read again Baez et al. For the record I now repeat what you already know. I think good paradigm cases must be: 1. There is the category of groups. A sub-category is the category of Abelian groups. 2. There is the category of rings. The forgetful functor f: RO -> R, where RO is the category of ordered rings and R is category of rings, and f just "forgets" the cone of non-negative elements. 1. must be a case of "objects which satisfy a condition"; 2. must be a case of "objects with added structure".
Your reply was very helpful Thanks, Pat
De nada and you are very welcome! oo--JS.