let predicate_kind_txt pk ki = match pk, ki with
  | Property.PKRequires _, Kglobal -> "pre"
  | Property.PKRequires _, Kstmt _ -> "stmt_pre"
  | Property.PKAssumes _, _ -> "assume"
  | Property.PKEnsures (_, tk), Kglobal ->
      string_of_termination_kind tk
  | Property.PKEnsures (_, tk), Kstmt _ ->
      "stmt_" ^ (string_of_termination_kind tk)
  | Property.PKTerminates, _ -> "terminates"