Wie kann ich beweisen, dass H und mein Ziel für alle Elemente der Liste gleich sind?Nachweis für alle Elemente einer Liste in Coq
X : Type
P : X -> Prop
l : list X
H : forall n : X, ~ (In n l /\ ~ P n)
______________________________________(1/1)
forall b : X, In b l -> P b
Die beiden Aussagen ~ (In n l /\ ~ P n)
und In b l -> P b
sind gleich. Ich versuchte apply imply_to_or
auf das Ziel zu vereinfachen, konnte aber nicht vereinheitlichen.
Danke,
Sind Sie sicher, dass dies konstruktiv wahr ist? – jbapple
Es wäre besser, wenn Sie Ihre Importe und die tatsächliche Aussage zur Verfügung stellen, was Sie versuchen zu beweisen ([mcve]). (1) Es wird uns ein wenig Tipparbeit ersparen. (2) Es wird uns sagen, dass Sie im Bereich der klassischen Logik arbeiten. Ich denke auch, was immer Sie über Listen beweisen, kann mit konstruktiver Logik bewiesen werden. (Ich meine auf breiter Ebene, nicht dieses Beispiel). –