\newcommand{\baseof}[1]{\base ( #1 ) }
\newcommand{\depsreqof}[1]{\depsreq ( #1 ) }
-\newcommand{\foreign}{\bot}
-\newcommand{\isforeign}[1]{\patchof{#1} = \foreign}
+\newcommand{\foreign}{\pa F}
+\newcommand{\isforeign}[1]{#1 \in \foreign}
\newcommand{\allpatches}{\Upsilon}
\newcommand{\assign}{\leftarrow}
All of these sets will be disjoint by construction
(see Invariants, below). Hence:
+\item[ $\foreign$ ]
+The set of all commits which are not part of a Topbloke branch. We
+call these foreign commits.
+
\item[ $\set A$, $\set P$, $\ldots$ ]
Arbitrary sets of commits. Maybe $\set P = \p$ i.e.\ some $\py$ or $\pn$, but
maybe not.