let p_forall x p =
  match val_of p with
    | Ptrue | Pfalse | Papp ("dummy",_) -> p
    | _ -> Pforall(x,p)