chiark / gitweb /
strategy: define W in Notation
[topbloke-formulae.git] / traversal.tex
index 93a3eb82e87cb8bcbeb810dc479ad6756b49393b..61d904e13375efbe111a27300a3f7bac430cc16b 100644 (file)
@@ -1,13 +1,15 @@
-\section{Traversal phase --- algorithm}
+\section{Traversal phase}
 
 
-(In general, unless stated otherwise below, when we generate a new
+In general, unless stated otherwise below, when we generate a new
 commit $C$ using one of the commit kind recipies, we update
 $W \assign C$.  In any such case where we say we're going to Merge
 with $L = W$, if $R \ge W$ we do not Merge but instead simply set
 $W \assign R$.
 
 For each commit generation operation called for by the traversal
 commit $C$ using one of the commit kind recipies, we update
 $W \assign C$.  In any such case where we say we're going to Merge
 with $L = W$, if $R \ge W$ we do not Merge but instead simply set
 $W \assign R$.
 
 For each commit generation operation called for by the traversal
-algorithms, we prove that the commit generation preconditions are met.)
+algorithms, we prove that the commit generation preconditions are met.
+
+\subsection{Algorithm}
 
 For each patch $\pc \in \allpatches$ in topological order by $\hasdep$,
 lowest first:
 
 For each patch $\pc \in \allpatches$ in topological order by $\hasdep$,
 lowest first:
@@ -25,9 +27,10 @@ lowest first:
 
 \end{enumerate}
 
 
 \end{enumerate}
 
+\subsection{Results}
+
 After processing each $\pc$ we will have created $\tipcn$ and $\tipcy$
 such that:
 After processing each $\pc$ we will have created $\tipcn$ and $\tipcy$
 such that:
-
 \statement{Correct Base}{
   \baseof{\tipcy} = \tipcn
 }
 \statement{Correct Base}{
   \baseof{\tipcy} = \tipcn
 }
@@ -212,10 +215,23 @@ $L = W, \; R = \tipdy, \; M = \baseof{R} = \tipdn$.
 \item TODO CHOOSE/REFINE W AND S as was done during Ranking for bases
 
 \item $\alg{Merge}$ from $\tipcn$.  That is, $L = W, \;
 \item TODO CHOOSE/REFINE W AND S as was done during Ranking for bases
 
 \item $\alg{Merge}$ from $\tipcn$.  That is, $L = W, \;
-R = \tipcn$ and choose any suitable $M$.
+R = \tipcn$ and $M = \baseof{W}$.
 
  \commitproof{
 
  \commitproof{
-  $L = W$, $R = \tipcn$.
+  \condproof{Ingredients}{
+   $M \le L$ is trivial.  For $M \le R$ we want
+   $\tipcn \ge \baseof{W}$.
+   Well $W \in \set S^{\pcy}$ so $W \in \allreachof{\pcn}$
+   and $W \in \pcy$.  So $W \in \pendsof{\allreachof{\pcn}}{\pcy}$
+   so Base Covers Reachable indeed
+   $\tipcn \ge \baseof{W}$.
+  }
+  \condproof{Tip Merge}{ Trivial. }
+  \condproof{Merge Acyclic}{
+   By Base Acyclic, $\tipcn \nothaspatch \p$.
+  }
+  \condproof{Foreign Merges}{ Not applicable. }
+
   TODO TBD
 
   Afterwards, $\baseof{W} = \tipcn$.
   TODO TBD
 
   Afterwards, $\baseof{W} = \tipcn$.
@@ -232,7 +248,7 @@ $\alg{Merge}$ with $L = W, \; R = S$ and any suitable $M$.
 
   By the results of Tip Base Merge, $\baseof{W} = \tipcn$.
 
 
   By the results of Tip Base Merge, $\baseof{W} = \tipcn$.
 
-  By Base Ends Supreme, $\tipcn \ge \baseof{S}$ i.e.
+  By Base Ends Supreme TODO CHECK THIS, $\tipcn \ge \baseof{S}$ i.e.
   $\baseof{R} \ge \baseof{L}$.
 
   Either $\baseof{L} = \baseof{M}$, or we must choose a different $M$ in
   $\baseof{R} \ge \baseof{L}$.
 
   Either $\baseof{L} = \baseof{M}$, or we must choose a different $M$ in