<div dir="ltr"><div class="gmail_extra">On Sat, Oct 24, 2015 at 12:56 PM, Janis Voigtländer <span dir="ltr"><<a href="mailto:janis.voigtlaender@gmail.com" target="_blank">janis.voigtlaender@gmail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>The "unitarity" and "linearity" laws are indeed relevant for Charles's question. But they won't give him his 2. or 3. point. They will exactly entail the property he mentions in his 1. point: that each data element is touched exactly once (whereas all permutations of the order will still be legal)<div>​ <br></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div>For proof of that, see <a href="http://dx.doi.org/10.1145/2503778.2503781" target="_blank">http://dx.doi.org/10.1145/2503778.2503781</a>, which establishes as fact the relevant conjecture from Jaskelioff & Rypacek's paper.  <br></div></div></div></blockquote><div><br><div class="gmail_default" style="font-family:monospace,monospace;display:inline">​Thanks for your clarifying comment, and for the link to this paper: it is very interesting, indeed.<br><br></div><div class="gmail_default" style="font-family:monospace,monospace;display:inline">In my message I was just trying to point to research that looked relevant, and which seemed to give an answer to at least question 1: for what concerns the other two questions, I have yet to understand them. :-)<br><br>Question 2 seems to assume the existence of a "default" order, but it seems to me that any such choice would be arbitrary. At least, it seems impossible to capture the property of being "like a left fold" semantically as Charles seemed to be wanting ("I was more thinking along the lines of how the Monad laws are expressed as a side note in the docs"), without actually specifying a reference order of traversal (for example, in the form of an instance of Traversable).<br><br></div><div class="gmail_default" style="font-family:monospace,monospace;display:inline">For what concerns question 3, I didn't understand the idea of calling a function "associatively".<br><br></div><div class="gmail_default" style="font-family:monospace,monospace;display:inline">Please let me know if I am missing an obvious interpretation.<br></div><div class="gmail_default" style="font-family:monospace,monospace;display:inline"><br></div></div><div><div class="gmail_default" style="font-family:monospace,monospace;display:inline">Best,<br></div><div class="gmail_default" style="font-family:monospace,monospace;display:inline">Matteo<br></div></div></div></div></div>