<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE message PUBLIC
  "-//MLarc//DTD MLarc output files//EN"
  "../../mlarc.dtd"[
  <!ATTLIST message
    listname CDATA #REQUIRED
    title CDATA #REQUIRED
  >
]>

  <?xml-stylesheet href="../../mlarc.xsl" type="text/xsl"?>


<message 
  url="2003/11/c5fcaf8bc45d7d0e3633ec3c39259218"
  from="Brian Hurt &lt;bhurt@s...&gt;"
  author="Brian Hurt"
  date="2003-11-12T06:51:18"
  subject="RE: [Caml-list] Efficient and canonical set representation?"
  prev="2003/11/1fe5b5ba52832d0fd87f732a6e85128c"
  next="2003/11/087666a124ab88cc69b9d0ba807a129d"
  prev-in-thread="2003/11/a64bd700deb07acf9ea74cea02719abc"
  prev-thread="2003/11/978db28d889e2aac657b467588e07c8c"
  next-thread="2003/11/1fe5b5ba52832d0fd87f732a6e85128c"
  root="../../"
  period="month"
  listname="caml-list"
  title="Archives of the Caml mailing list">

<thread subject="RE: [Caml-list] Efficient and canonical set representation?">
<msg 
  url="2003/11/a64bd700deb07acf9ea74cea02719abc"
  from="Harrison, John R &lt;johnh@i...&gt;"
  author="Harrison, John R"
  date="2003-11-12T03:54:00"
  subject="RE: [Caml-list] Efficient and canonical set representation?">
<msg 
  url="2003/11/c5fcaf8bc45d7d0e3633ec3c39259218"
  from="Brian Hurt &lt;bhurt@s...&gt;"
  author="Brian Hurt"
  date="2003-11-12T06:51:18"
  subject="RE: [Caml-list] Efficient and canonical set representation?">
</msg>
</msg>
</thread>

<contents>
On Tue, 11 Nov 2003, Harrison, John R wrote:

&gt; | I've been batting around ideas for ways to do balanced trees so that no 
&gt; | matter what order you add things, you always get the same tree.  But even 
&gt; | assuming you could do this, doing a structural compare is still O(N).  So 
&gt; | you might as well let the trees be different.
&gt; 
&gt; Right, but see my second message --- I'm only interested in canonicity
&gt; up to structural equality and I'm happy with O(N) comparison. So it's
&gt; just the "no matter what order you add things you get the same tree"
&gt; property that I care about. But it's not yet obvious to me whether I
&gt; can even achieve that much.
&gt; 

It feels like that can be done, at the cost of an occassional O(N) 
"massive rebalancing".  Well, it certainly can be done with an O(N) 
insert/delete.  I'll think about it a bit.


-- 
"Usenet is like a herd of performing elephants with diarrhea -- massive,
difficult to redirect, awe-inspiring, entertaining, and a source of
mind-boggling amounts of excrement when you least expect it."
                                - Gene Spafford 
Brian

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners

</contents>

</message>

