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

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