\newcommand{\depsreqof}[1]{\depsreq ( #1 ) }
\newcommand{\allpatches}{\Upsilon}
+\newcommand{\assign}{\leftarrow}
+%\newcommand{\assign}{' =}
\newcommand{\eqntag}[2]{ #2 \tag*{\mbox{#1}} }
\newcommand{\eqn}[2]{ #2 \tag*{\mbox{\bf #1}} }
\section{Ranking phase}
-{\bf Ranking} is:
+We run the following algorithm:
\begin{enumerate}
\item Set $\allpatches = \{ \}$.
\item Repeatedly:
\begin{enumerate}
\item Clear out the graph $\hasdirdep$ so it has neither nodes nor edges.
-\item Execute {\bf Rank-Recurse}($\pc_0$) .
+\item Execute {\bf Rank-Recurse}($\pc_0$)
\item Until $\allpatches$ remains unchanged.
\end{enumerate}
\end{enumerate}
\cup
\bigcup_{\p \in \allpatches}
\bigcup_{H \in h(\pn) \lor H \in h(\py)}
- \{ \baseof{E} \; | \; E \in \pendsof{H}{\pcy} \} $.
+ \{ \baseof{E} \; | \; E \in \pendsof{H}{\pcy} \} $
-(We write $\set S = \set S_{\pcn}$ when it's not ambiguous.)
+and $W = w(h(\pcn))$
+
+We write $\set S = \set S_{\pcn}$ where unambiguous.
+\item While $\exists_{S \in \set S} S \ge W$:
+
+Update $W \assign S$ and $\set S \assign \set S \, \backslash \{ S \}$
\end{enumerate}
\section{Planning phase}