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"