<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Dec 2, 2016 at 9:24 PM, Sean Silva <span dir="ltr"><<a href="mailto:chisophugis@gmail.com" target="_blank">chisophugis@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="">On Fri, Dec 2, 2016 at 3:52 PM, Rui Ueyama <span dir="ltr"><<a href="mailto:ruiu@google.com" target="_blank">ruiu@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I'm not familiar with GVN, but even if it is similar to it, I don' think I <i>should</i> use the same term used there. I originally chose GroupId because it was a group id (and the term "group" is used in gold's safe ICF paper to describe the concept <a href="http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/36912.pdf" target="_blank">http://static.googleuserconten<wbr>t.com/media/research.google.<wbr>com/en//pubs/archive/36912.pdf</a><wbr>), and then changed it to Color because it's one word and easy to digest than GroupId to me (e.g. we'll just color them in different colors!). Congruence class is, well, it sounds too technical and doesn't improve readability at least to me.</div></blockquote><div><br></div></span><div>Personally, I'm pretty opposed to the term "color" here. In all the cases I can think of, algorithms that refer to "colors" the number of different colors is a constant (one talks about "k-colorability" etc.; the "k" is always a constant). That is not the case in this context and it is really confusing. This is *not* a coloring algorithm; coloring algorithms are about local constraints where adjacent things can't be colored the same.</div></div></div></div></blockquote><div><br></div><div>If you feel strongly about that, I'm fine to change the term, but how do you describe it?</div><div><br></div><div>I think congruence class is defined as this: if two sections are in the same congruence class, they are identical.</div><div><br></div><div>That refers the result of the algorithm. We cannot say that we split congruence class into smaller congruence classes on each iteration, because if a congruence class can be split, it wasn't a congruence class.</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>GVN/CSE and the term "congruence" (or even "equivalence class") is technically correct. GroupId is consistent with the paper at least. But "coloring" is just wrong.</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>-- Sean Silva</div></font></span><span class=""><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="m_-8481197221145679097HOEnZb"><div class="m_-8481197221145679097h5"><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Dec 2, 2016 at 12:46 AM, Sean Silva <span dir="ltr"><<a href="mailto:chisophugis@gmail.com" target="_blank">chisophugis@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span>On Fri, Dec 2, 2016 at 12:35 AM, Davide Italiano <span dir="ltr"><<a href="mailto:davide@freebsd.org" target="_blank">davide@freebsd.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span>On Fri, Dec 2, 2016 at 12:34 AM, Sean Silva via llvm-commits<br>
<<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>> wrote:<br>
><br>
><br>
> On Thu, Dec 1, 2016 at 11:45 AM, Rui Ueyama via llvm-commits<br>
> <<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>> wrote:<br>
>><br>
>> Author: ruiu<br>
>> Date: Thu Dec  1 13:45:22 2016<br>
>> New Revision: 288409<br>
>><br>
>> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=288409&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-pr<wbr>oject?rev=288409&view=rev</a><br>
>> Log:<br>
>> Updates file comments and variable names.<br>
>><br>
>> Use "color" instead of "group id" to describe the ICF algorithm.<br>
><br>
><br>
> The right term is "congruence class"; I think you should use it. This ICF<br>
> algorithm is basically a simple "optimistic" GVN/CSE algorithm; all values<br>
> are initially assumed to be in the same congruence class and then that<br>
> equivalence class is iteratively split as contradictions are found until<br>
> there are no contradictions.<br>
><br>
<br>
</span>+1, I think the proper term is congruence here.<br></blockquote><div><br></div></span><div>I think you've been working on NewGVN for long enough to know better than "I think" ;)</div><div><br></div><div>-- Sean Silva</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<span class="m_-8481197221145679097m_8221748402588099965m_-4000831247460638509HOEnZb"><font color="#888888"><br><span class="m_-8481197221145679097m_8221748402588099965HOEnZb"><font color="#888888">
--<br>
Davide<br>
</font></span></font></span></blockquote></div><br></div></div>
</blockquote></div><br></div>
</div></div></blockquote></span></div><br></div></div>
</blockquote></div><br></div></div>