Документы Coq говорят, что кольцо логических значений предопределено, и все, что нужно сделать, это Require Ring.
В документах также говорится, что ring
tacti c работает путем нормализации относительно ассоциативности и коммутативности.
Однако ring
tacti c не удаётся для этого тривиального доказательства, которое опирается только на коммутативность ||
(orb
):
Lemma ors: forall (a b: bool), a || b = b || a.
Proof.
intros.
ring.
Error: Tactic failure: not a valid ring equation.
Что пошло не так?