chiark / gitweb /
merge: rename Foreign Merge (was Foreign Merges)
[topbloke-formulae.git] / pseudomerge.tex
index d884be84896b2ded5681bf2026f093c8f45db009..c1a88f8c6dc170be2e451902101dcc6ebebb5970 100644 (file)
@@ -15,7 +15,16 @@ but whose contents are exactly those of $L$.
 \subsection{Conditions}
 
 \[ \eqn{ Base Only }{
- \patchof{L} \neq \py
+ L \in \pn
+}\]
+
+\[ \eqn{ Ingredients }{
+ \bigforall_{R \in \set R}
+    R \in \pn
+     \lor
+    R \in \foreign
+     \lor
+    R \in \pqy
 }\]
 
 \[ \eqn{ Unique Tips }{
@@ -25,25 +34,22 @@ but whose contents are exactly those of $L$.
 }\]
 
 \[ \eqn{ Foreign Unaffected }{
- \bigforall_{ D \text{ s.t. } \patchof{D} = \foreign }
-  \left[ \bigexists_{A \in \set A} D \le A \right]
-   \implies
-  D \le L
+ \pendsof{C}{\foreign} = \pendsof{L}{\foreign}
 }\]
- TODO THAT IS IMPOSSIBLE TO CALCULATE
 
 \subsection{Lemma: Foreign Identical}
 
-$\patchof{D} = \foreign \implies \big[ D \le C \equiv D \le L \big]$.
+$\isforeign{D} \implies \big[ D \le C \equiv D \le L \big]$.
 
 \proof{
-If $D \le L$, trivially $D \le C$; so conversely
-$D \not\le C \implies D \not\le L$.  
-Whereas if $D \le C$, either $D \le L$ or
-$\exists{A \in \set A} D \le A$ (since $D \neq C$),
-in which case by Foreign Unaffected $D \le L$.
+Trivial by Foreign Unaffected and the definition of $\pends$
 }
 
+It might seem that bare git commits might also be psuedo-merges ---
+e.g., merges made directly with {\tt git merge -s ours}.  However, by
+our definition of $\has$, these are considered simply as normal merges
+(\autoref{commit-merge}).
+
 \subsection{No Replay}
 
 Ingredients Prevent Replay applies:
@@ -82,8 +88,32 @@ Explicitly dealt with by our Unique Tips condition.
 
 \subsection{Foreign Inclusion}
 
-True by Foreign Identical, and Foreign Inclusion of $L$.
+We need to consider $D \in \foreign$.
+
+For $D = C$: $D \has C$, $D \le C$; OK.
+
+For $D \neq C$: $D \has C \equiv D \has L$ by construction.
+$D \has L \equiv D \le L$ by Foreign Inclusion of $L$.
+$D \neq C$ so this $D \le L \equiv D \le C$.
+
+$\qed$
 
-\subsection{Foreign Contents}
+\subsection{Foreign Ancestry}
 
 Not applicable.
+
+\subsection{Bases' Children}
+
+We need to consider this for $D=L$ and also for $D=R$ ($R \in \set
+R$).
+
+For $D=L$: $L \in \pn$ so $\pd = \p$.  And $C \in \pn = \pdn$.  Bases'
+Children applies and is satisfied.
+
+For $D = R \in \set R, R \in \pn$: $D \in \pn, \pd = \p, C \in \pn$ as
+for $D = L$.
+
+For $D = R \in \set R, R \in \foreign$, or $R \in \pqy$: $D \not\in
+\pdn$ so Bases' Children does not apply.
+
+Other possibilities for $D \in \set R$ are excluded by Ingredients.