]> matita.cs.unibo.it Git - helm.git/blob - matita/contribs/LOGIC/Track/props.ma
New developement LOGIC about the cut elimination of implication for Sambin's basic...
[helm.git] / matita / contribs / LOGIC / Track / props.ma
1 (**************************************************************************)
2 (*       ___                                                              *)
3 (*      ||M||                                                             *)
4 (*      ||A||       A project by Andrea Asperti                           *)
5 (*      ||T||                                                             *)
6 (*      ||I||       Developers:                                           *)
7 (*      ||T||         The HELM team.                                      *)
8 (*      ||A||         http://helm.cs.unibo.it                             *)
9 (*      \   /                                                             *)
10 (*       \ /        This file is distributed under the terms of the       *)
11 (*        v         GNU General Public License Version 2                  *)
12 (*                                                                        *)
13 (**************************************************************************)
14
15 set "baseuri" "cic:/matita/LOGIC/Track/props".
16
17 include "Insert/props.ma".
18 include "Track/inv.ma".
19
20 theorem track_weak: \forall R,p,P,Q,S,i. 
21                     Track P p S \to Insert R i P Q \to 
22                     \exists q. Track Q q S.
23  intros 2. elim p; clear p;
24  [ lapply linear track_inv_lref to H as H0; decompose;
25    lapply linear insert_trans to H, H1; decompose; autobatch
26  | lapply linear track_inv_parx to H. subst. autobatch
27  | lapply linear track_inv_impw to H1. decompose. subst.
28    lapply linear H to H4, H2. decompose. autobatch
29  | lapply linear track_inv_impi to H1. decompose. subst.
30    lapply linear H to H4, H2. decompose. autobatch
31  | lapply linear track_inv_impe to H1. decompose. subst.
32    lapply linear insert_conf to H2, H4. decompose.
33    lapply linear H to H5, H3. decompose. autobatch
34  ]
35 qed.
36
37 theorem track_comp: \forall R,q,p,P,Q,S,i. 
38                     Track P p R \to Track Q q S \to Insert R i P Q \to
39                     \exists r. Track P r S.
40  intros 2. elim q; clear q;
41  [ lapply linear track_inv_lref to H1 as H0; decompose;
42    lapply linear insert_conf_rev_full to H1,H2; decompose; subst; autobatch
43  | lapply linear track_inv_parx to H1. subst. autobatch
44  | lapply linear track_inv_impw to H2. decompose. subst.
45    lapply linear H to H1, H5, H3. decompose. autobatch
46  | lapply linear track_inv_impi to H2. decompose. subst.
47    lapply linear H to H1, H5, H3. decompose. autobatch
48  | lapply linear track_inv_impe to H2. decompose. subst.
49    lapply linear insert_trans to H3, H5. decompose.
50    lapply track_weak to H1, H3. clear H1. decompose.
51    lapply linear H to H1, H6, H4. decompose. autobatch
52  ].
53 qed.