Hi Dominic, On Thu, Nov 27, 2014 at 3:22 AM, Dominic Steinitz <dominic at steinitz.org> wrote: > Is expressing commutativity not possible? I think the best we can do is: type PlusEqv x y xy = ( (x + y) ~ xy, (y + x) ~ xy ) And then use "(n `PlusEqv` q) p" instead of "(n + q) ~ p" Regards, Adam