我正在制作一份证据,我目前仍然坚持这一点。我的假设是:
T1E : tree1 = EmptyTree -> isEmpty (leftChild (Node tree1 tree2)) = true
我也有一个假设:
H2 : isEmpty (leftChild (Node tree1 tree2)) = true
我当前的子目标是
tree1 = EmptyTree
好像我应该能够做到
rewrite <- T1E
为了将子目标更改为
isEmpty (leftChild (Node tree1 tree2)) = true
但是当我尝试时,Coq说
Error: Found no subterm matching "true" in the current goal.
如何使用T1E和H2证明我当前的子目标?
答案 0 :(得分:2)
您可能无法使用T1E
来证明自己的目标。从本质上讲,您试图证明A
知道“如果A
为真,则B
为真。”
但是,根据您的情况,在我看来,您应该能够简化H2
并获得tree1
的矛盾或更多信息,这无论如何应该导致什么你想要的。