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 "delayed_updating/substitution/fsubst.ma".
16 include "delayed_updating/syntax/prototerm_eq.ma".
18 (* FOCALIZED SUBSTITUTION ***************************************************)
20 (* Constructions with subset_equivalence ************************************)
22 lemma fsubst_empty_rc (t) (u):
25 [ #Hp /3 width=3 by or_introl, ex2_intro/ ]
27 [ #r #Hr #H0 destruct // ]
28 #H1p #H2p elim H2p -H2p //
31 lemma subset_inclusion_fsubst_bi (t1) (t2) (u1) (u2) (p):
32 t1 ā t2 ā u1 ā u2 ā t1[āpāu1] ā t2[āpāu2].
33 #t1 #t2 #u1 #u2 #p #Ht #Hu #q * *
35 /4 width=3 by ex2_intro, or_introl/
36 | /4 width=2 by or_intror, conj/
40 lemma fsubst_eq_repl (t1) (t2) (u1) (u2) (p1) (p2):
41 t1 ā t2 ā p1 = p2 ā u1 ā u2 ā t1[āp1āu1] ā t2[āp2āu2].
42 #t1 #t2 #u1 #u2 #p1 #p2 * #H1t #H2t #Hp * #H1u #H2u
43 /3 width=5 by conj, subset_inclusion_fsubst_bi/