You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In version 2.0.4 of Abella, the search tactic seems inconsistent when working with lists of nominal constants (or my understanding of the underlying logic is terribly wrong). With
Kind t type.
Type f t -> o.
Abella (unexpectedly) proves this theorem with just an application of the search tactic:
Theorem bug : forall A, member A (f n1 :: nil) -> member A (f n2 :: nil).
search.
This results in inconsistencies. Indeed, we can (as expected) prove that no element can be a member of the two singleton lists mentioned above:
Theorem ok : forall A, member A (f n1 :: nil) -> member A (f n2 :: nil) -> false.
intros. case H1. case H2. case H3. case H2. case H3. case H3.
But then
Theorem proof_of_false : false.
assert member (f n1) (f n1 :: nil). apply bug to H1. apply ok to H1 H2.
The text was updated successfully, but these errors were encountered:
In version 2.0.4 of Abella, the search tactic seems inconsistent when working with lists of nominal constants (or my understanding of the underlying logic is terribly wrong). With
Abella (unexpectedly) proves this theorem with just an application of the
search
tactic:This results in inconsistencies. Indeed, we can (as expected) prove that no element can be a member of the two singleton lists mentioned above:
But then
The text was updated successfully, but these errors were encountered: