我在证明列表中存在变量时遇到问题。我怎样才能证明这样的事情:
Lemma exists_in_list_helper: forall (X : Type) (a : X) (P : X -> Prop),
(exists b : X, In b [a] -> P b) ->
P a.
Proof.
Admitted.
我有另一个问题。如何对列表中的值进行案例分析(如果它存在于列表的这一部分中)?这是我要证明的主要引理。任何帮助表示赞赏:
Lemma in_list: forall (X : Type) (a : X) l (P : X -> Prop),
(a :: l <> [] /\ exists b : X, In b (a :: l) -> P b) ->
(P a /\ l = []) \/
(P a /\ l <> [] /\ exists b : X, In b l -> P b) \/
(P a /\ l <> [] /\ forall b : X, In b l -> ~ P b) \/
(~ P a /\ l <> [] /\ exists b : X, In b l -> P b).
Proof.
谢谢,