После доказательства десятков лемм в исчислении высказываний и предикатов (некоторые более сложные, чем другие, но, как правило, все же доказуемые на intro-apply-destruct
автопилоте), я наткнулся на одну, начинающуюся с ~forall
, и тут же попался. Очевидно, мне не хватало понимания и знаний Coq. Итак, я прошу низкоуровневую технику Coq для доказательства утверждений общего вида
~forall A [B].., C -> D.
exists A [B].., ~(C -> D).
На словах, я надеюсь на общий рецепт Coq для настройки и запуска контрпримеров. (Основная причина количественной оценки вышеперечисленных функций заключается в том, что это (или) примитивная связка в Coq.) Если вам нужны примеры, я предлагаю, например.
~forall P Q: Prop, P -> Q.
~forall P: Prop, P -> ~P.
Существует связанный вопрос, который не ставил и не отвечал на мой, поэтому я полагаю, что это не дубликат.