Hi everybody,

Just forwarding some comments from Apfelmus regarding the recent paper
by Judah on Darcs patch theory
( http://www.math.ucla.edu/~jjacobson/patch-theory/ )

Thanks,

Eric

-- 
Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
PGP Key ID: 08AC04F9
--- Begin Message ---
Hello Eric,

On Tue, Oct 20, 2009 at 21:03:11 +0200, Heinrich Apfelmus wrote:
For instance, concerning merges, the following curiosity occurred to me: imagine three people working in parallel and making three patches A,B and C respectively against some common repository R. And now, imagine
the following weird situation:

There is a conflict when trying to merge all three patches A,B and C,
  but you can merge any two of them, i.e. A and B can be merged,
  B and C can be merged and A and C can be merged.

You may be interested in a related (but seemingly different) test for
something the OT people call 'convergence'.

  http://darcs.net/tests/failing-issue1609_ot_convergence.sh

It appears to me that, in terms of commutators, this 'convergence' property from OT is to be expressed as follows:

  patches C, A, B in that order

  if A B      commutes to  B'      A'   and
     C (AB)   commutes to  (AB)'   C1'  and
     C (B'A') commutes to  (B'A')' C2'
  then
     (AB)' C1' and (B'A')' C2' should have the same effect

In particular, I have chosen

  C = invert op3
  A = op1
  B = T(op2,op1)


What my curiosity asks is slightly different, namely whether

    if A B   commutes to  B' A'    and
       C A   commutes to  Ac  Ca   and
       C B'  commutes to  B'c Cb
    then
      do  Ca B  or  Cb A'  actually commute as well?

In other words, it asks whether the postulated commutations in the convergence property actually hold. It could well be possible to commute the C past the A and the C past the B' separately, but impossible to commute C past both at the same time.



By the way, I would a priori think that the shell script you mentioned should be something like

darcs pull -a --repo Temp S1
darcs pull -a --repo Temp S2
darcs pull -a --repo Temp S3

vs

darcs pull -a --repo Temp2 S2
darcs pull -a --repo Temp2 S1
darcs pull -a --repo Temp2 S3

and then compare Temp and Temp2 ? But I'm not familiar enough with darcs to judge that.


Also : the call for GUIDs is echo'ed in Jean-Phillipe Benardy's FoCAL
work as well as the OT researchers' new 'conflict-free' approach,
which they have implemented in the form of a hacked up mediawiki.
Please have a look at http://wiki.darcs.net/Theory/Bibliography if
you're interested :-)

Benardy's stuff looks interesting, but it appears that they moved half of the theory into the description of the implementation. :-/ In particular, the representation as multisets ("weights") seems to be a fundamental trick and should be analyzed properly! Why can't people stop to just hack something together? ;-)

But yes, I think that GUIDs are the way to go and that commutators are just obscuring the main issues.


Regards,
apfelmus

--
http://apfelmus.nfshost.com


--- End Message ---

Attachment: signature.asc
Description: Digital signature

_______________________________________________
darcs-users mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to