我已经证明了这SIMP规则:为什么不会在lambda表达式中简单处理这个术语?
lemma AAA: the_sector (log_update ?f ?s) ?p = the_sector ?s ?p
规则不用于简化如下:
lemma BBB: "(λA. if A then (the_sector (log_update f s) p) else B)
=
(λA. if A then (the_sector s p) else B)"
我知道,我可以申请自动或(规则EXT)其次通过simp来证明这个引理,但我的最终目标是比功能平等更加棘手。我相信这个关键点是在if条件中使用函数变量A.我想明白为什么simp在这种情况下不会简化一个术语。
以下说明为什么我相信这是症结所在(两者都证明):
lemma CCC: "(λf s p. the_sector (log_update f s) p) = (λf s p. the_sector s p)"
by simp
lemma DDD: "(if A then (the_sector (log_update f s) p) else B)
=
(if A then (the_sector s p) else B)"
by simp
感谢您的任何意见。