X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=pseudomerge.tex;h=9ea20452abed952f324ac3a32e9e6ade913de286;hb=28ed5bb07153a37a5e48c9bfa7498eb48b946abf;hp=1e9422c447b6f143837553c40a9afefe2cfeeed4;hpb=05d6e35d69c91ddf88e8d5a5febea740bbfac22f;p=topbloke-formulae.git diff --git a/pseudomerge.tex b/pseudomerge.tex index 1e9422c..9ea2045 100644 --- a/pseudomerge.tex +++ b/pseudomerge.tex @@ -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} = \bot } - \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} = \bot \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: @@ -87,3 +93,34 @@ True by Foreign Identical, and Foreign Inclusion of $L$. \subsection{Foreign Contents} 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$, if $L \in \pn$ then $C \in \pn$, OK; whereas if +$L \not \in \pn$ Bases' Children is inapplicable. + +For $D=R$, +xxx up to here? + +If $L \in \py, R \in \py$: not applicable for either $D=L$ or $D=R$. + +If $L \in \py, R \in \pn$: not applicable for $L$, OK for $R$. + +Other possibilities for $L \in \py$ are excluded by Tip Merge. + +If $L \in \pn, R \in \pn$: satisfied for both $L$ and $R$. + +If $L \in \pn, R \in \foreign$: satisfied for $L$, not applicable for +$R$. + +If $L \in \pn, R \in \pqy$: satisfied for $L$, not applicable for +$R$. + +Other possibilities for $L \in \pn$ are excluded by Base Merge. + +If $L \in \foreign$: not applicable for $L$; nor for $R$, by Foreign Merges. + +