X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=article.tex;h=dc0ca18db3e09445c53e962b05e508821199b607;hb=5e8082d7f849de019800368b07b08ecc43f9400e;hp=40c65188362c926e492f2b458331f1714e3b8069;hpb=1a483b6d7f338927038929e6d5e71bb506cea007;p=topbloke-formulae.git diff --git a/article.tex b/article.tex index 40c6518..dc0ca18 100644 --- a/article.tex +++ b/article.tex @@ -640,7 +640,7 @@ $$ \subsubsection{For $\p = \pq$:} By Base Acyclic, $D \not\isin B$. So $D \isin C \equiv D = C$. -By No Sneak, $D \le B \equiv D = C$. Thus $C \haspatch \pq$. +By No Sneak, $D \not\le B$ so $D \le C \equiv D = C$. Thus $C \haspatch \pq$. \subsubsection{For $\p \neq \pq$:} @@ -659,7 +659,7 @@ Not applicable. \section{Anticommit} -Given $L$ and $\pr$ as represented by $R^+, R^-$. +Given $L$ which contains $\pr$ as represented by $R^+, R^-$. Construct $C$ which has $\pr$ removed. Used for removing a branch dependency. \gathbegin @@ -676,7 +676,7 @@ Used for removing a branch dependency. R^+ \in \pry \land R^- = \baseof{R^+} }\] \[ \eqn{ Into Base }{ - L \in \pn + L \in \pqn }\] \[ \eqn{ Unique Tip }{ \pendsof{L}{\pry} = \{ R^+ \} @@ -696,7 +696,7 @@ is a descendant, not an ancestor, of the 2nd parent.) \subsection{No Replay} -By definition of $\merge$, +By $\merge$, $D \isin C \implies D \isin L \lor D \isin R^- \lor D = C$. So, by Ordering of Ingredients, Ingredients Prevent Replay applies. $\qed$ @@ -712,7 +712,8 @@ Trivially $D \isin C$. OK. \subsubsection{For $D \neq C, D \not\le L$:} -By No Replay $D \not\isin L$. Also $D \not\le R^-$ hence +By No Replay for $L$, $D \not\isin L$. +Also, by Ordering of Ingredients, $D \not\le R^-$ hence $D \not\isin R^-$. Thus $D \not\isin C$. OK. \subsubsection{For $D \neq C, D \le L, D \in \pry$:} @@ -723,7 +724,7 @@ By Tip Self Inpatch for $R^+$, $D \isin R^+ \equiv D \le R^+$, but by by Unique Tip, $D \le R^+ \equiv D \le L$. So $D \isin R^+$. -By Base Acyclic, $D \not\isin R^-$. +By Base Acyclic for $R^-$, $D \not\isin R^-$. Apply $\merge$: $D \not\isin C$. OK. @@ -737,7 +738,7 @@ $\qed$ \subsection{Unique Base} -Into Base means that $C \in \pn$, so Unique Base is not +Into Base means that $C \in \pqn$, so Unique Base is not applicable. $\qed$ \subsection{Tip Contents} @@ -746,11 +747,11 @@ Again, not applicable. $\qed$ \subsection{Base Acyclic} -By Base Acyclic for $L$, $D \isin L \implies D \not\in \py$. -And by Into Base $C \not\in \py$. +By Into Base and Base Acyclic for $L$, $D \isin L \implies D \not\in \pqy$. +And by Into Base $C \not\in \pqy$. Now from Desired Contents, above, $D \isin C \implies D \isin L \lor D = C$, which thus -$\implies D \not\in \py$. $\qed$. +$\implies D \not\in \pqy$. $\qed$. \subsection{Coherence and Patch Inclusion} @@ -799,6 +800,9 @@ Merge commits $L$ and $R$ using merge base $M$: \end{gather} We will occasionally use $X,Y$ s.t. $\{X,Y\} = \{L,R\}$. +This can also be used for dependency re-insertion, by setting +$L \in \pn$, $R \in \pry$, $M = \baseof{R}$. + \subsection{Conditions} \[ \eqn{ Ingredients }{ M \le L, M \le R