Как указано в справочном руководстве :
rewrite term
This tactic applies to any goal. The type of term must have the form
forall (x1:A1) … (xn:An)eq term1 term2.
where eq is the Leibniz equality or a registered setoid equality.
Но prop
не в форме с равенством Лейбница:
Coq < Unset Printing Notations.
Coq < Print prop.
prop : iff (eq x y) True
Так что coq требуетСетоид, чтобы проверить, является ли iff
равенством множества.