X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=topbloke-formulae.git;a=blobdiff_plain;f=trav-proofs.tex;h=e69de29bb2d1d6434b8b29ae775ad8c2e48c5391;hp=0a2d49127eb06a1d7c46e3ae8ad028955d27dd29;hb=6e7093d49c00150e48ebc264fb1a29de2004aeed;hpb=63b8fab3f0b73ade21eaa412eeaed13aeb5ee691 diff --git a/trav-proofs.tex b/trav-proofs.tex index 0a2d491..e69de29 100644 --- a/trav-proofs.tex +++ b/trav-proofs.tex @@ -1,67 +0,0 @@ -\section{Traversal phase --- proofs} - -For each operation called for by the traversal algorithms, we prove -that the commit generation preconditions are met. - -WIP WHAT ABOUT PROVING ALL THE TRAVERSAL RESULTS - -\subsection{Traversal Lemmas} - -Firstly, some lemmas. -\statement{Tip Correct Contents}{ - \tipcy \haspatch \pa E - \equiv - \pa E = \pc \lor \pa E \isdep \pc -} -\proof{ - For $\pc = \pa E$, Tip Own Contents suffices. - For $\pc \neq \pa E$, Exclusive Tip Contents - gives $D \isin \tipcy \equiv D \isin \baseof{\tipcy}$ - which by Correct Base $\equiv D \isin \tipcn$. -} - -\subsection{Base Dependency Merge, Base Sibling Merge} - -We do not prove that the preconditions are met. Instead, we check -them at runtime. If they turn out not to be met, we abandon -\alg{Merge-Base} and resort to \alg{Recreate-Base}. - -TODO COMPLETE MERGE-BASE STUFF - -WIP WHAT ABOUT PROVING ALL THE TRAVERSAL RESULTS - -\subsection{Recreate Base Beginning} - -To recap we are executing Create Base with -$L = \tipdy$ and $\pq = \pc$. - -\subsubsection{Create Acyclic} - -By Tip Correct Contents of $L$, -$L \haspatch \pa E \equiv \pa E = \pd \lor \pa E \isdep \pd$. -Now $\pd \isdirdep \pc$, -so by Coherence, and setting $\pa E = \pc$, -$L \nothaspatch \pc$. I.e. $L \nothaspatch \pq$. $\qed$ - -\subsection{Tip Base Merge} - -$L = W$, $R = \tipcn$. - -TODO TBD - -Afterwards, $\baseof{W} = \tipcn$. - -\subsection{Tip Source Merge} - -In fact, we do this backwards: $L = S$, $R = W$. Since $S \in \pcy$, -the resulting $C \in \pcy$ and the remaining properties of the Merge -commit construction are symmetrical in $L$ and $R$ so this is fine. - -By the results of Tip Base Merge, $\baseof{W} = \tipcn$. - -By Base Ends Supreme, $\tipcn \ge \baseof{S}$ i.e. -$\baseof{R} \ge \baseof{L}$. - -Either $\baseof{L} = \baseof{M}$, or we must choose a different $M$ in -which case $M = \baseof{S}$ will suffice. -