@@ -28,9 +28,12 @@ One way to understand this definition is to re-write it a little.
...
@@ -28,9 +28,12 @@ One way to understand this definition is to re-write it a little.
We start by defining the COFE of \emph{step-indexed propositions}: For every step-index, we proposition either holds or does not hold.
We start by defining the COFE of \emph{step-indexed propositions}: For every step-index, we proposition either holds or does not hold.
\begin{align*}
\begin{align*}
\SProp\eqdef{}&\psetdown{\mathbb{N}}\\
\SProp\eqdef{}&\psetdown{\mathbb{N}}\\
\eqdef{}&\setComp{\prop\in\pset{\mathbb{N}}}{\All n, m. n \geq m \Ra n \in\prop\Ra m \in\prop}\\
\eqdef{}&\setComp{X\in\pset{\mathbb{N}}}{\All n, m. n \geq m \Ra n \inX\Ra m \inX}\\
\prop\nequiv{n}\propB\eqdef{}&\All m \leq n. m \in\prop\Lra m \in\propB
X\nequiv{n}Y\eqdef{}&\All m \leq n. m \inX\Lra m \inY
\end{align*}
\end{align*}
Notice that with this notion of $\SProp$ is already hidden in the validity predicate $\mval_n$ of a CMRA:
We could equivalently require every CMRA to define $\mval_{-}(-) : \monoid\nfn\SProp$, replacing \ruleref{cmra-valid-ne} and \ruleref{cmra-valid-mono}.
Now we can rewrite $\UPred(\monoid)$ as monotone step-indexed predicates over $\monoid$, where the definition of a ``monotone'' function here is a little funny.
Now we can rewrite $\UPred(\monoid)$ as monotone step-indexed predicates over $\monoid$, where the definition of a ``monotone'' function here is a little funny.