constructor
a : Program
X : Formula
W : Type
M : KripkeModel W
w : W
⊢ evaluate M w (~(⌈∗a⌉X)⋀(~X⋀⌈a⌉⌈∗a⌉X)) ∧ evaluate M w (~(⌈∗a⌉X)⋀(~⌈∗a⌉X))
case left
a : Program
X : Formula
W : Type
M : KripkeModel W
w : W
⊢ evaluate M w (~(⌈∗a⌉X)⋀(~X⋀⌈a⌉⌈∗a⌉X))

case right
a : Program
X : Formula
W : Type
M : KripkeModel W
w : W
⊢ evaluate M w (~(⌈∗a⌉X)⋀(~⌈∗a⌉X))