caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] Poset variant of union-find datastructure
@ 2011-07-27 20:20 Guillaume Yziquel
  2011-07-28  8:53 ` Christophe Raffalli
  0 siblings, 1 reply; 4+ messages in thread
From: Guillaume Yziquel @ 2011-07-27 20:20 UTC (permalink / raw)
  To: caml-list

Hi.

I'm wondering if people on this list may have any insight as to how
implement a "poset-find" datastructure much like a union-find
datastructure.

A typical union find signature can be found here:

http://www.enseignement.polytechnique.fr/informatique/INF564/html/unionFind.mli.html

The core of the signature I'm interested in is:

	type 'a point
	val fresh : 'a -> 'a point
	val find : 'a point -> 'a
	val union : 'a point -> 'a point -> unit
	val equivalent : 'a point -> 'a point -> bool

and I'd like a similar signature like:

	type 'a point
	type rel : G | Geq | Eq | Leq | L
	val fresh : 'a -> 'a point
	val find : 'a point -> 'a
	val relate : rel -> 'a point -> 'a point -> unit
	val relation : 'a point -> 'a point -> rel option

Has anybody given thought to this kind of datastructure, or is there any
prior work? Or is there really no better alternative than a graph? What
worries me about a graph is that I do not really perceive an efficient way
to query the order between two 'a points.

-- 
     Guillaume Yziquel

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-07-29 15:50 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <fa.4YXCBZTjiruOkOWERgIhmlS84TY@ifi.uio.no>
2011-07-29 15:50 ` [Caml-list] Poset variant of union-find datastructure Radu Grigore
2011-07-27 20:20 Guillaume Yziquel
2011-07-28  8:53 ` Christophe Raffalli
2011-07-28 17:03   ` Guillaume Yziquel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).