Fixpoint denote (f: Var -> Prop) (t: Term) : Prop :=
  match t with
  | andp t1 t2 => denote f t1 /\ denote f t2
  | orp t1 t2 => denote f t1 \/ denote f t2
  | impp t1 t2 => denote f t1 -> denote f t2
  | falsep => False
  | varp x => f x
  end.Definition Trivial_sem: Semantic := mk_sem (Var -> Prop) denote.

(* Specifications: *)
Lemma sound_Trivial_IPC: forall {venv: Var_env}, sound Trivial_sem IPC.