chiark / gitweb /
strategy: Define H in notation
[topbloke-formulae.git] / strategy.tex
index 833f5bdfe06fe6c2846815c66dcde91002d674be..e2017c34c3fcd516d308438ab5c6f33f3b577583 100644 (file)
@@ -54,6 +54,13 @@ $\bigforall_{E \in \pendsof{\set X}{\p}} E \le T$
 $\bigcup_{\p \in \allpatches} \set H^{\pn} \cup \set H^{\py}$.
 All the input commits to the update algorithm.  (See below.)
 
 $\bigcup_{\p \in \allpatches} \set H^{\pn} \cup \set H^{\py}$.
 All the input commits to the update algorithm.  (See below.)
 
+\item[ $\set H^{\pc^{_=/-}}$ ]
+
+The existing head commit(s) $\set H$ of the branch $\pc^{+/-}$.
+These are the heads which will be merged and used in this update.
+This will include the current local and remote git refs, as desired.
+Obtained from the function $h$ (see below).
+
 %\item[ $\set E_{\pc}$ ]
 %$ \bigcup_i \pendsof{S_{\pc,i}}{\pc} $.
 %All the ends of $\pc$ in the sources.
 %\item[ $\set E_{\pc}$ ]
 %$ \bigcup_i \pendsof{S_{\pc,i}}{\pc} $.
 %All the ends of $\pc$ in the sources.
@@ -76,8 +83,6 @@ all of its dependencies will be updated.
 
 \item[ $h : \pc^{+/-} \mapsto \set H^{\pc^{+/-}}$ ]
 Function for getting the existing heads $\set H$ of the branch $\pc^{+/-}$.
 
 \item[ $h : \pc^{+/-} \mapsto \set H^{\pc^{+/-}}$ ]
 Function for getting the existing heads $\set H$ of the branch $\pc^{+/-}$.
-These are the heads which will be merged and used in this update.
-This will include the current local and remote git refs, as desired.
 
 \item[ $g : \pc, \Gamma \mapsto \Gamma'$ ]
 Function to allow explicit adjustment of the direct dependencies
 
 \item[ $g : \pc, \Gamma \mapsto \Gamma'$ ]
 Function to allow explicit adjustment of the direct dependencies
@@ -107,53 +112,20 @@ The new tips of the git branches $\pcn$ and $\pcy$, containing
 all the appropriate commits (and the appropriate other patches),
 as generated by the Traversal phase of the update algorithm.
 
 all the appropriate commits (and the appropriate other patches),
 as generated by the Traversal phase of the update algorithm.
 
-\end{basedescript}
-
-\stdsection{ WIP tip satisfaction, reachable commits }
-
-Set of all reachable commits, O.
+\item[ $\allreach$ ]
+The set of all reachable commits.
 
 A reachable commit is one we might refer to explicitly in any of these
 algorithms, and any ancestor of such a commit.  We explicitly
 
 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 ($\allsrcs$), so the reachable
+commits are originally the input commits and their ancestors.
 
 
-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.
+$\allreach$ varies over time as we generate more commits.  Each
+commit we generate will have only reachable commits as ancestors, so
+generating a new commit (only) adds that new commit to $\allreach$.
 
 
-We preserve/ensure
-  Tip_Pyn >= pendsof( O_pyn, Pyn )
-(Tip_pyn 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
-  - 
+\item[ $\allreachof{\py}$ ]
+The set of reachable commits at the point where we have just generated
+$\tippy$, i.e. just after $\alg{Merge-Tip}(\p)$.
 
 
+\end{basedescript}