Local Open Scope logic_base.
Local Open Scope syntax.
Local Open Scope kripke_model.
(* TODO: It is so obvious that this file is very similar with Trivial.v. The should be merged. The obstacle is the way that we formalize Kripke Semantics. See the "TODO" in GeneralLogic/Semantics/Kripke.v *)
Module Semantics.
Definition andp {worlds: Type} (X: Ensemble worlds) (Y: Ensemble worlds): Ensemble worlds :=
fun m => X m /\ Y m.
Definition orp {worlds: Type} (X: Ensemble worlds) (Y: Ensemble worlds): Ensemble worlds :=
fun m => X m \/ Y m.
Definition falsep {worlds: Type}: Ensemble worlds := fun m => False.

Lemma falsep_closed {worlds: Type} {R: Relation worlds}:
upwards_closed_Kdenote falsep.