Catecon Blog October 15, 2018

Some current details about the development status of Catecon:  The Categorical Console.

October 15, 2018

New Objects And Named Identities

Created a new object panel to replace the old one with all the issues it provided.  You could not create a decent named object, like Point say as defined as F*F, and have it act as a single entity in the string graphs instead of two.  Fix this with morphisms by adding named identities.

The new new object panel now only allows code and a description to be given (if the object already exists the new description is discarded):


If you have a complex data structure like ℕ×𝔽×ℤ, you probably don’t want to keep referring to it by its complex name N-X-F-X-Z.  By using a named alias you can refer to ℕ×𝔽×ℤ as, say, NFZ. When the named identity is created, you get two identity morphisms:

[Looks like work is needed on the homset graphics so that the two morphisms do not lie on one another.]

The named identities then let the string morphisms look better as seen in this example of multiple combined projections on the left and a diagonal on the right:


In the Settings panel there is now an option to show reference counts.  There still seems to be some debugging needed there.

The lock/unlock icons also got upgraded to fit stylistically.

Factor Morphisms

Factor morphisms got a fix for the trivial example of trying to project F*F onto itself.  Before it would crash:

Factor morphisms are created from selecting a single object.  The factors of that object may be ‘copied’ to the codomain any number of times to provide both deltas and projections in the same tool.  The current factor morphism tool panel is a work in progress, especially with regards to complex objects.

The sub-indices are to indicate from which element of the factor the term is associated.  Thus a string would be drawn from the first N in the domain to the first in the codomain, and the second N in the domain at position 3 has a string drawn to the second N in the codomain.

The issue to be addressed is when a named identity appears in the domain.  There is a need for an option to expand a named identity into its sub-factors.  This is so that if you has a named identity point as F*F, then you have a means to project its constituent coordinates.