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 (* This file was automatically generated: do not edit *********************)
17 set "baseuri" "cic:/matita/LAMBDA-TYPES/LambdaDelta-1/csubst0/props".
19 include "csubst0/defs.ma".
21 theorem csubst0_snd_bind:
22 \forall (b: B).(\forall (i: nat).(\forall (v: T).(\forall (u1: T).(\forall
23 (u2: T).((subst0 i v u1 u2) \to (\forall (c: C).(csubst0 (S i) v (CHead c
24 (Bind b) u1) (CHead c (Bind b) u2))))))))
26 \lambda (b: B).(\lambda (i: nat).(\lambda (v: T).(\lambda (u1: T).(\lambda
27 (u2: T).(\lambda (H: (subst0 i v u1 u2)).(\lambda (c: C).(eq_ind nat (s (Bind
28 b) i) (\lambda (n: nat).(csubst0 n v (CHead c (Bind b) u1) (CHead c (Bind b)
29 u2))) (csubst0_snd (Bind b) i v u1 u2 H c) (S i) (refl_equal nat (S
32 theorem csubst0_fst_bind:
33 \forall (b: B).(\forall (i: nat).(\forall (c1: C).(\forall (c2: C).(\forall
34 (v: T).((csubst0 i v c1 c2) \to (\forall (u: T).(csubst0 (S i) v (CHead c1
35 (Bind b) u) (CHead c2 (Bind b) u))))))))
37 \lambda (b: B).(\lambda (i: nat).(\lambda (c1: C).(\lambda (c2: C).(\lambda
38 (v: T).(\lambda (H: (csubst0 i v c1 c2)).(\lambda (u: T).(eq_ind nat (s (Bind
39 b) i) (\lambda (n: nat).(csubst0 n v (CHead c1 (Bind b) u) (CHead c2 (Bind b)
40 u))) (csubst0_fst (Bind b) i c1 c2 v H u) (S i) (refl_equal nat (S i))))))))).
42 theorem csubst0_both_bind:
43 \forall (b: B).(\forall (i: nat).(\forall (v: T).(\forall (u1: T).(\forall
44 (u2: T).((subst0 i v u1 u2) \to (\forall (c1: C).(\forall (c2: C).((csubst0 i
45 v c1 c2) \to (csubst0 (S i) v (CHead c1 (Bind b) u1) (CHead c2 (Bind b)
48 \lambda (b: B).(\lambda (i: nat).(\lambda (v: T).(\lambda (u1: T).(\lambda
49 (u2: T).(\lambda (H: (subst0 i v u1 u2)).(\lambda (c1: C).(\lambda (c2:
50 C).(\lambda (H0: (csubst0 i v c1 c2)).(eq_ind nat (s (Bind b) i) (\lambda (n:
51 nat).(csubst0 n v (CHead c1 (Bind b) u1) (CHead c2 (Bind b) u2)))
52 (csubst0_both (Bind b) i v u1 u2 H c1 c2 H0) (S i) (refl_equal nat (S