In this one (in German):

G. Hotz. Eine Algebraisierung des Syntheseproblems für Schaltkreise. EIK Journal of Information Processing and Cybernetics, 1:185-205,209-231, 1965.

the theory of free x-categories has been introduced together with a “logic-topological” representation of the morphisms by planar nets.

I am almost sure that Hotz at that time already knew about the work of Eilenberg & Mac Lane on category theory.

My comment referred more to the “net calculus” which gave these diagrams and their composition (later also their hierarchical definition) a precise algebraic meaning and also introduced the concept of functorial semantics for these networks.

In the paper

G. Hotz. Eindeutigkeit und Mehrdeutigkeit formaler Sprachen. EIK Journal of Information Processing and Cybernetics, 2:235-246, 1966

the concept was applied to Chomsky languages thus providing an algebraic foundation for the theory of formal languages. This for example provided an algebraic description of “derivations” in Chomsky grammars and layed the foundation for handling formal language theory in a category-theoretic setting.

Regards

Armin

• Saunders Mac Lane, Natural associativity and commutativity, *Rice Univ. Studies*, **49** (1963), 28–46.

Did Hotz refer to Mac Lane’s work, or did he think of his ideas independently?

]]>They have been used in circuit design and formal language theory from that time on, the theory has been generalized later to bicategories and been used as the mathematical foundation of the CADIC VLSI design system.

]]>• Brendan Fong, *The Algebra of Open and Interconnected Systems*.

But he went further: to understand the *externally observable behavior* of an open system we often want to simplify a decorated cospan and get another sort of structure, which he calls a ‘decorated corelation’. His talk here explains decorated corelations and what they’re good for:

So the question surfaced: am I willing to implement and maintain the more complicated pushout? I find it interesting how the “don’t disallow” you mention turns into an “be careful before you add” when one switches from the mathematical to the algorithmic or software maintenance perspective.

Yes, interesting! I’m glad to hear that you can explain reason for wanting to disallow noninjective legs on your cospan. If you’re maintaing software this might make sense. What really bugs me is pure mathematicians who throw unnecessary axioms into their theories just because those axioms hold in some paradigmatic example of what they’re thinking about, without carefully investigating what those axioms *help us prove*. Poorly thought-out axioms that disallow certain objects or morphisms in a category often make that category worse—they actually *prevent us* from proving interesting results.

A classic example is demanding that some set be nonempty just because the empty set is a bit spooky. Of course the empty examples aren’t the ones we have in mind, but throwing out the empty set tends to throw out initial objects and thus prevent a category from having all colimits.

]]>I’ve reflected why I asked my injectivity question, and I’ve realized the source was my inner software engineer: I have an unusual synesthesia that makes me constantly see analogies between computer code and mathematical theories. When faced with the pushout, I instinctively viewed it as an algorithm in a computer-algebra software I might write and have to maintain. So the question surfaced: am I willing to implement and maintain the more complicated pushout? I find it interesting how the “don’t disallow” you mention turns into an “be careful before you add” when one switches from the mathematical to the algorithmic or software maintenance perspective.

Anyway, your compact closure argument makes moot any point I might have had.

]]>More importantly, non-injective and are required to get these cospan categories to be compact closed. I noticed this a long time ago when working on circuits made of resistors.

Also, to get identity morphisms we need cospans where the range of is not disjoint from the range of . So, we definitely don’t want to demand that their ranges be disjoint!

]]>In the category of sets, when we compose cospans:

the set is a pushout. (Pardon the weird notation for a set; I’m just reusing a diagram I had sitting around.) This pushout turns out to work as follows: first take the disjoint union of the sets and , and then mod out by the smallest equivalence relation such that for all . This is particularly simple when and are injective, but it’s true in general.

]]>