Мой код выглядит следующим образом. Я ожидал, что он будет работать отлично, и действительно к концу финальной линии «отсюда» (которая была найдена Кувалдом) Изабель утверждает, что - ∀y. ∃x. P x y
, и что его цель имеет только один подцель, который равен ∀y. ∃x. P x y
. Эти два выражения идентичны, поэтому я бы подумал, что Изабель примет доказательство как законченное.Isabelle не смог завершить доказательство, хотя это точно так же, как цель
lemma assumes "EX x. ALL y. P x y" shows "ALL y. EX x. P x y"
proof -
fix y
assume "EX x. ALL f. P x f"
then obtain x where "ALL f. P x f" by blast
hence "P x y" by blast
hence "ALL y. EX x. P x y" using `∀f. P x f` by blast
qed
Что я пропустил? Я новичок в Изабель, как это очевидно.