diff options
Diffstat (limited to 'theories/Logic/WeakFan.v')
-rw-r--r-- | theories/Logic/WeakFan.v | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/theories/Logic/WeakFan.v b/theories/Logic/WeakFan.v index 49cc12b8..2f84ebe5 100644 --- a/theories/Logic/WeakFan.v +++ b/theories/Logic/WeakFan.v @@ -89,17 +89,14 @@ Qed. Theorem WeakFanTheorem : forall P, barred P -> inductively_barred P []. Proof. intros P Hbar. -destruct (Hbar (X P)) as (l,(Hd,HP)). +destruct Hbar with (X P) as (l,(Hd/Y_approx,HP)). assert (inductively_barred P l) by (apply (now P l), HP). clear Hbar HP. -induction l. +induction l as [|a l]. - assumption. - destruct Hd as (Hd,HX). apply (IHl Hd). clear IHl. destruct a; unfold X in HX; simpl in HX. - + apply propagate. - * apply H. - * destruct HX as (l',(Hl,(HY,Ht))); firstorder. - apply Y_approx in Hd. rewrite <- (Y_unique P l' l Hl); trivial. - + destruct HX. exists l. split; auto using Y_approx. + + apply propagate; assumption. + + exfalso; destruct (HX H). Qed. |