X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fmatita%2Fcontribs%2FLOGIC%2FNTrack%2Finv.ma;h=68e7d7b1ff39a0f70e91cf1f5555a846e409c257;hb=dcde2b362a4106e36623d25e6a2d26dffac61848;hp=347d7fccb78d9b2faf2d009fd4fb1c41486773f0;hpb=4f1bd2790a4448a8ebfbe67eb8baa481c124745c;p=helm.git diff --git a/helm/software/matita/contribs/LOGIC/NTrack/inv.ma b/helm/software/matita/contribs/LOGIC/NTrack/inv.ma index 347d7fccb..68e7d7b1f 100644 --- a/helm/software/matita/contribs/LOGIC/NTrack/inv.ma +++ b/helm/software/matita/contribs/LOGIC/NTrack/inv.ma @@ -12,54 +12,55 @@ (* *) (**************************************************************************) -set "baseuri" "cic:/matita/LOGIC/Track/inv". -include "Track/defs.ma". -theorem track_inv_lref: \forall Q,S,i. Track Q (lref i) S \to - \exists P. Insert S i P Q. - intros; inversion H; clear H; intros; subst; autobatch. +include "NTrack/defs.ma". +(* +theorem ntrack_inv_lref: \forall Q,S,i. NTrack Q (lref i) S \to + \exists P. Insert S i P Q. + intros; inversion H; clear H; intros; destruct; autobatch. qed. -theorem track_inv_parx: \forall P,S,h. Track P (parx h) S \to - S = pair (posr h) (posr h). - intros; inversion H; clear H; intros; subst; autobatch. +theorem ntrack_inv_parx: \forall P,S,h. NTrack P (parx h) S \to + S = pair (posr h) (posr h). + intros; inversion H; clear H; intros; destruct; autobatch. qed. -theorem track_inv_impw: \forall P,p,S. Track P (impw p) S \to - \exists B,a,b. - S = pair (impl a b) B \land - Track P p (pair lleaf B). - intros; inversion H; clear H; intros; subst; autobatch depth = 5. +theorem ntrack_inv_impw: \forall P,p,S. NTrack P (impw p) S \to + \exists B,a,b. + S = pair (impl a b) B \land + NTrack P p (pair lleaf B). + intros; inversion H; clear H; intros; destruct; autobatch depth = 5. qed. -theorem track_inv_impr: \forall P,p,S. Track P (impr p) S \to - \exists a,b:Formula. - S = pair lleaf (impl a b) \land - Track P p (pair a b). - intros; inversion H; clear H; intros; subst; autobatch depth = 4. +theorem ntrack_inv_impr: \forall P,p,S. NTrack P (impr p) S \to + \exists a,b:Formula. + S = pair lleaf (impl a b) \land + NTrack P p (pair a b). + intros; inversion H; clear H; intros; destruct; autobatch depth = 4. qed. -theorem track_inv_impi: \forall P,p,q,r,S. Track P (impi p q r) S \to - \exists Q,A,B,D,i. \exists a,b:Formula. - S = pair (impl a b) D \land - Track P p (pair A a) \land - Track P q (pair b B) \land - Track Q r (pair lleaf D) \land - Insert (pair A B) i P Q. - intros; inversion H; clear H; intros; subst; autobatch depth = 12 width = 5 size = 16. +theorem ntrack_inv_impi: \forall P,p,q,r,S. NTrack P (impi p q r) S \to + \exists Q,A,B,D,i. \exists a,b:Formula. + S = pair (impl a b) D \land + NTrack P p (pair A a) \land + NTrack P q (pair b B) \land + NTrack Q r (pair lleaf D) \land + Insert (pair A B) i P Q. + intros; inversion H; clear H; intros; destruct; autobatch depth = 12 width = 5 size = 16. qed. -theorem track_inv_scut: \forall P,q,r,S. Track P (scut q r) S \to False. - intros; inversion H; clear H; intros; subst. +theorem ntrack_inv_scut: \forall P,q,r,S. NTrack P (scut q r) S \to False. + intros; inversion H; clear H; intros; destruct. qed. -theorem track_inv_lleaf_impl: - \forall Q,p,a,b. Track Q p (pair lleaf (impl a b)) \to +theorem ntrack_inv_lleaf_impl: + \forall Q,p,a,b. NTrack Q p (pair lleaf (impl a b)) \to (\exists P,i. p = lref i \land Insert (pair lleaf (impl a b)) i P Q) \lor - (\exists r. p = impr r \land Track Q r (pair a b)). - intros; inversion H; clear H; intros; subst; + (\exists r. p = impr r \land NTrack Q r (pair a b)). + intros; inversion H; clear H; intros; destruct; [ autobatch depth = 5 - | subst; autobatch depth = 4 + | destruct; autobatch depth = 4 ]. qed. +*)