let rec collect_iff ps = function
  | Fol.Piff(a,b) -> collect_iff (collect_iff ps b) a
  | p -> p :: ps