X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=strategy.tex;h=97c41b9a9b0a1e55ea45e085746a3909f08b317b;hb=13a217e73c1ab13c7899dd2c1be7cbc909fed331;hp=833f5bdfe06fe6c2846815c66dcde91002d674be;hpb=29dc9ebb649e71ccdee72c704377fbe623705404;p=topbloke-formulae.git diff --git a/strategy.tex b/strategy.tex index 833f5bd..97c41b9 100644 --- a/strategy.tex +++ b/strategy.tex @@ -115,45 +115,23 @@ Set of all reachable commits, O. A reachable commit is one we might refer to explicitly in any of these algorithms, and any ancestor of such a commit. We explicitly -enumerate all of the input commits (U). And each commit we generate -will be descended from zero or more of these. +enumerate all of the input commits (U), so the reachable commits are +originally the input commits and their ancestors. Each commit we +generate will have reachable commits as ancestors so when we generate +a new commit we only add that new commit to O. -Naturally this set varies over time as we generate more commits. We -write O_pyn for the set of reachable commits at the point where we -have just generated T_pyn. +So O varies over time as we generate more commits. We write O_py for +the set of reachable commits at the point where we have just generated +T_py, ie jusjt after Merge-Tip(P). We preserve/ensure - Tip_Pyn >= pendsof( O_pyn, Pyn ) -(Tip_pyn is computed during traversal for the patch p) + Tip_Py >= pendsof( O_py, Py ) +(Tip_py is computed during traversal for the patch P) We ensure this property by: - - we do not generate any commits for pyn other than - during traversal for pyn - - so at the start of traversal pendsof ( O, pyn) = pendsof (U, pyn) - - the traversal steps will takes those pends - - - during traversal for the patch set pyn - pendsof - - - arranging that during traversal for the patch set pyn - -, we firstly - compute a tip_pyn which is >= pendsof(O) as follows: - there is a set of relevant ends - pendsof(U, - - we initially set T - - by virtue of it being >= pendsof(U) \cup - all lower tip_qyn - - - -We do this by: - - firstly, Tip_pyn is only valid af - - -Set of all reachable commits in a particular patch set. - This consists of - - input commits - - + - we do not generate any commits for py other than + during Merge-Tip + - so at the start of Merge-Tip pendsof (O, py) = pendsof (U, py) + - Merge-Tip itself wip wip wip +