Hacker News new | ask | show | jobs
by 7373737373 2253 days ago
I'd like to seen an extension of this table with the negation of these axioms
3 comments

Here is an beautiful old paper about data structures built using a binary join operator, exploring the 16 possible outcomes for properties: unit, idempotent, associative, commutative.

The resulting grid can be factored around set, bag, list and binary tree, with empty/non-empty variants.

Then there is interaction of the structures with binary operators on the data elements themselves, giving a nice analysis of map, filter, fold (reduce) in functional programming.

A.Bunkenburg, The Boom Hierarchy

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.49....

There is a rich literature if you chase the references back and forth, starting from Bird-Meertens Formalism (Squiggol), Hoogendijk, through Backhouse and Malcolm, to Meijer and McBride.

I think negations usually don't prove interesting, and mathematicians essentially use "non-" to mean "not necessarily". So the theory of "noncommutative rings" includes the theory of "commutative rings" as an easy special case.
What would you do with that?

For example, I can see the use of commutativity (ab = ba) and anticommutativity (ab = -ba), but I'm not sure what I'd do with the negation of commutativity (ab ≠ ba).

Nope: the negation is "there is a couple a,b such that ab!=ba", which means just "strictly not commutative group": I do not think there is a relevant theory to be done about them (otherwise, I guess it would have been done).
Ah, whoops. That seems even more useless, though.
Non-commutative also means that if there are units, there may be different left and right units:

    1L * A = A = A * 1R