\section{Pseudo-merge}
Given $L$ and some other commits $\set R$, generate a
`fake merge': i.e., a commit which is a descendant of $L$ and $\set R$
but whose contents are exactly those of $L$.
\gathbegin
C \hasparents \{ L \} \cup \set R
\gathnext
\patchof{C} = \patchof{L}
\gathnext
D \isin C \equiv D \isin L \lor D = C
\end{gather}
\subsection{Conditions}
\[ \eqn{ Base Only }{
L \in \pn
}\]
\[ \eqn{ Ingredients }{
\bigforall_{R \in \set R}
R \in \pn
\lor
R \in \foreign
\lor
R \in \pqy
}\]
\[ \eqn{ Unique Tips }{
C \haspatch \p \implies
\bigexists_T
\pendsof{C}{\py} = \{ T \}
}\]
\[ \eqn{ Foreign Unaffected }{
\pendsof{C}{\foreign} = \pendsof{L}{\foreign}
}\]
\subsection{Lemma: Foreign Identical}
$\isforeign{D} \implies \big[ D \le C \equiv D \le L \big]$.
\proof{
Trivial by Foreign Unaffected and the definition of $\pends$
}
It might seem that foreign 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:
$A = L$ always satisfies the $\exists$. $\qed$
\subsection{Unique Base}
Not applicable, by Base Only. $\qed$
\subsection{Tip Contents}
Not applicable, by Base Only. $\qed$
\subsection{Base Acyclic}
Relevant only if $L \in \pn$. For $D = C$, $D \in \pn$; OK.
For $D \neq C$, OK by Base Acyclic for $L$. $\qed$
\subsection{Coherence and Patch Inclusion}
$$
\begin{cases}
L \haspatch \p : & C \haspatch \p \\
L \nothaspatch \p : & C \nothaspatch \p
\end{cases}
$$
\proof{
Consider some $D \in \py$. $D \neq C$ by Base Only.
So $C \has \p \equiv L \has \p$.
}
\subsection{Unique Tips}
Explicitly dealt with by our Unique Tips condition.
\subsection{Foreign Inclusion}
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 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.
$\qed$