【发布时间】:2021-08-31 15:51:37
【问题描述】:
我想证明引理 1 和引理 2,引理 21 是引理 2 的子目标之一。但是,在证明引理 2 时,它挂在应用(metis 步骤),我相信没有其他方法可以证明它。有没有办法阻止这种无限循环的发生?提前致谢。
inductive star :: "('a ⇒ 'a ⇒ bool) ⇒ 'a ⇒ 'a ⇒ bool" for r where
refl: "star r x x"|
step: "r x y ⟹star r y z⟹star r x z"
inductive star' ::"('a ⇒ 'a ⇒ bool) ⇒ 'a ⇒ 'a ⇒ bool"for r where
refl' : "star' r x x" |
step' : "star' r x y ⟹ r y z ⟹ star' r x z"
lemma 21 : "r x y ⟹
star r y z ⟹
star' r y z ⟹
star' r x z"
apply (metis step)
lemma 1 : "star' r x y ⟹ star r x y"
apply (induction rule : star'.induct)
apply (metis refl)
done
lemma 2 : "star r x y ⟹ star' r x y"
apply (induction rule: star.induct)
apply (metis refl')
done
【问题讨论】:
标签: infinite-loop isabelle proof