Thu Dec 28 18:12:55 EST 2017

De Morgan vs. product/coproduct

De Morgan's duality is straightforward.  When expressed in ^,v,~

  ~(~A v ~B) = A ^ B

  ~(~A ^ ~B) = A v B

The duality operation is to flip all polarities, and exchange v and ^.

Why is product/sum duality so convoluted in functional programming

A good starting point for looking at this is category theory's
products and coproducts.

E.g from here

Why are products and coproducts "dramatically different"?
In general, why are categorical duals so different?