1 (**************************************************************************)
4 (* ||A|| A project by Andrea Asperti *)
6 (* ||I|| Developers: *)
7 (* ||T|| The HELM team. *)
8 (* ||A|| http://helm.cs.unibo.it *)
10 (* \ / This file is distributed under the terms of the *)
11 (* v GNU General Public License Version 2 *)
13 (**************************************************************************)
15 include "static_2/relocation/drops.ma".
16 include "basic_2/rt_transition/cwhx.ma".
18 (* WHD NORMAL TERMS FOR UNBOUND CONTEXT-SENSITIVE PARALLEL RT-TRANSITION ****)
20 (* Properties with generic slicing ******************************************)
22 lemma cwhx_lifts (h) (G): d_liftable1 … (cwhx h G).
23 #h #G #K #T #H elim H -K -T
24 [ #K #s #b #f #L #HLK #X #H
25 lapply (lifts_inv_sort1 … H) -H #H destruct //
26 | #p #K #V #T #b #f #L #HLK #X #H
27 elim (lifts_inv_bind1 … H) -H #W #U #HVW #HTU #H destruct //
28 | #K #V #T #_ #IH #b #f #L #HLK #X #H
29 elim (lifts_inv_bind1 … H) -H #W #U #HVW #HTU #H destruct
30 /5 width=4 by cwhx_ldef, drops_skip, ext2_pair/
34 (* Inversion lemmas with generic slicing ************************************)
36 lemma cwhx_inv_lifts (h) (G): d_deliftable1 … (cwhx h G).
37 #h #G #L #U #H elim H -L -U
38 [ #L #s #b #f #K #HLK #X #H
39 lapply (lifts_inv_sort2 … H) -H #H destruct //
40 | #p #L #W #U #b #f #K #HLK #X #H
41 elim (lifts_inv_bind2 … H) -H #V #T #HVW #HTU #H destruct //
42 | #L #W #U #_ #IH #b #f #K #HLK #X #H
43 elim (lifts_inv_bind2 … H) -H #V #T #HVW #HTU #H destruct
44 /5 width=4 by cwhx_ldef, drops_skip, ext2_pair/