## Difference between ⫾ (U+2AFE) and ⫿ (U+2AFF) in the context of Dijkstra’s Guarded Command Language?

Continuing https://tex.stackexchange.com/questions/435986/how-to-draw-the-box-of-dijkstras-guarded-command-language, what is the difference in the intended usage of ⫾ (Dijkstra choice, U+2AFE) and ⫿ (n-ary Dijkstra choice, U+2AFF) in the context of the Guarded Command Language (GCL) of Dijkstra? In other words, when do you use ⫾ and when ⫿ for typesetting GCL programs? Moreover, can you confirm or reject Barbara’s answer?

Related: http://latex.org/forum/viewtopic.php?t=32939

Posted on Categories proxies

## What can’t guarded fragment of FO express?

I have some basic confusions about the definition of the guarded fragment of first-order logic. Hopefully someone can tell me where I’m wrong.

GF in FO is defined by:

1. Atomic formulas, $$x=y$$ and $$R(x_1,…,x_n)$$, are guarded formulas.
2. If $$\phi,\psi$$ are guarded formulas, so are $$\neg \phi$$ and $$\phi \wedge \psi$$.
3. For variables $$\{x_j,…,x_m\} \subseteq \{x_i,…,x_n\}$$ and guarded fomula $$\phi$$ and atomic formula $$A$$, $$\exists x_j\ A(x_i,…,x_n) \wedge \phi(x_j,…,x_m)$$ is a guarded formula.

My reasoning is: for arbitrary FO formula of form $$\exists x\ \phi$$, I can just pick some relation $$T$$ that’s always true and over all variables, and it’s then equivalent to $$\exists x \ T \wedge \phi$$, a guarded formula. Other forms follow from this. So FO reduces to GF.

But that’s obviously not true. I can’t figure out where my mistake is. Could someone let me know where I got it wrong?

For example, isn’t $$\forall x\ \exists y\ \forall z\ \phi$$ equivalent to $$\forall x\ (T \to \exists y\ (T \wedge \forall z\ (T \to \phi)))$$

## Self Guarded Sleep

Can an 11+ level Psion who is about to naturally fall asleep manifest Schism and should they fall asleep (or willfully fail a sleep spell saving throw) before Schism ends, use Guarded Sleep on their already sleeping primary mind manifested from their secondary mind before the Schism ends?

(The last sentence of Guarded Sleep made me wonder how it would be possible.)

## The Law of Excluded Miracle in the language of guarded commands

The definition of weakest precondition is familiar (let me use Isabelle’s syntax here):

definition "wp c Q s ≡ ∃t. (c,s) ⇒ t ∧ Q t" 

the weakest precondition ensuring Q when executing a command in an initial state s is given by the formula in the RHS.

Now, Dijkstra, for instance in, “Nondeterminacy and Formal Derivation of Programs” talks about the law of the excluded middle:

definition "F ≡ λ t. False"  lemma "wp c F = F" unfolding wp_def F_def by simp 

∃t. (c,s) ⇒ t ∧ (λ t. False) t = ∃t. (c,s) ⇒ t ∧ False = False