→ S0
语义.在执行一个选择的时候求值所有的守卫。如果没有守卫被求值为真，则选择的执行会abort，否则非确定性的选择其值为真的守卫之一，并执行对应的语句。
例子.
简单.用伪代码：用守卫命令语言：
使用skip.用伪代码：用守卫命令语言：如果第二个守卫被省略，并且error = False，结果是abort。
多个守卫为真. if a ≥ b → max := a