theorem Th10: Depth (l,tt) SubstIn psi=Depth psi &
for I being Element of U-InterpretersOf S holds
I-TruthEval (l,tt) SubstIn psi=(l,I-TermEval.tt) ReassignIn I-TruthEval psi
proof
set II=U-InterpretersOf S, TT=AllTermsOf S, AF=AtomicFormulasOf
S, F=S-firstChar, L=LettersOf S;
set f0=l AtomicSubst tt, f1=l Subst1 tt, f4=(l,tt) Subst4 f1, FF=AllFormulasOf
S, N=TheNorSymbOf S;
defpred P[Nat] means for phi st Depth phi<=$1 holds
(Depth ((l,tt) SubstIn phi)=Depth phi &
for I being Element of II holds I-TruthEval ((l,tt) SubstIn phi)=
((l, I-TermEval.tt) ReassignIn I)-TruthEval phi);
tt null {} is ({}\/rng tt)-valued FinSequence; then
tt is FinSequence of (rng tt) by FOMODEL0:26; then
reconsider ttt=tt as Element of (rng tt)*;
A1: P[0]
proof
let phi; set d=Depth phi, IT=(l,tt) SubstIn phi; assume
A2: d<=0; reconsider phii=phi as 0wff string of S by A2;
Depth (l,tt) SubstIn phii=0; hence Depth IT=d; let I be Element of II;
set u=I-TermEval.tt, J=(l,u) ReassignIn I;
I-TruthEval ((l,tt) AtomicSubst phii) = J-TruthEval phii by Th8;
hence thesis;
end;
A3: for n st P[n] holds P[n+1]
proof
let n; assume
A4: P[n]; let phi; reconsider X=L\(rng tt \/ rng head phi \/ {l})
as infinite Subset of L; reconsider
XX=X as non empty Subset of L; set ll2= the Element of X;
reconsider l2=ll2 as literal Element of S by TARSKI:def 3; assume
C0: Depth phi <= n+1;  not l2 in rng tt \/ rng head phi \/ {l}
by XBOOLE_0:def 5; then not l2 in rng tt \/ rng head phi & not l2 in {l}
by XBOOLE_0:def 3; then
A5: l2<>l & not l2 in rng tt & not l2 in rng head phi
by XBOOLE_0:def 3, TARSKI:def 1;
per cases;
suppose phi is exal; then reconsider phii=phi as
non 0wff exal wff string of S; consider m such that
A6: Depth phii=m+1 by NAT_1:6; reconsider mm=m as Element of NAT by
ORDINAL1:def 12;
D1: m<=n by XREAL_1:8, C0, A6; reconsider phii as
non 0wff exal (m+1)-wff string of S by A6, FOMODEL2:def 31;
set IT=(l,tt) SubstIn phii, d=Depth phii;
reconsider l1=F.phii as literal Element of S; reconsider
phi1=head phii as Element of FF by FOMODEL2:16; set d1=Depth phi1;
reconsider phi2=tail phii as empty set;
reconsider psi=(l1,l2)-SymbolSubstIn phi as (m+1)-wff string of S;
reconsider psi1=(l1,l2)-SymbolSubstIn (head phii) as m-wff string of S;
Depth psi1\+\d1={}; then
A7: Depth psi1=Depth phi1 by FOMODEL0:29;
reconsider Phi1=(l,tt) SubstIn psi1 as wff string of S;
A8: phii=<*l1*>^phi1^phi2 by FOMODEL2:23 .= <*l1*>^phi1;
d1 <= m by FOMODEL2:def 31; then
A9: d1<=n by XXREAL_0:2,D1; then
A10: Depth Phi1=Depth (head phii) by A4, A7;
reconsider m1=m-d1 as Nat; reconsider
new1=((l,tt) SubstIn phi1) as wff string of S; set d11=Depth new1;
A11: IT= (l,tt,m,f4.mm) Subst2 phii by A6, Lm44;
per cases;
suppose l1<>l; then
A12: IT=<*l2*>^(f4.mm.((l1,l2)-SymbolSubstIn phi1))
by A6, Def20, A11 .= <*l2*>^(l,tt) SubstIn psi1 by Lm46; then
Depth IT=Depth phi1+1 by A10, FOMODEL2:17 .= Depth phi by A8, FOMODEL2:17;
hence Depth ((l,tt) SubstIn phi)=Depth phi; let I be Element of II;
set tu=I-TermEval.tt, It=(l,tu) ReassignIn I;
I-TruthEval IT=1 iff (l,tu) ReassignIn I-TruthEval phii=1
proof
hereby
assume I-TruthEval IT=1; then consider u such that
A13: ((l2,u) ReassignIn I)-TruthEval Phi1=1 by A12, FOMODEL2:19;
set I2=(l2,u) ReassignIn I;
1=((l,I2-TermEval.tt) ReassignIn I2)-TruthEval psi1 by A13, A7, A9, A4
.= ((l,tu) ReassignIn I2)-TruthEval psi1 by A5, FOMODEL2:25 .=
((l2,u) ReassignIn (l,tu) ReassignIn I)-TruthEval psi1 by A5, FOMODEL0:43
.= (l1,u) ReassignIn (l,tu) ReassignIn I-TruthEval (head phii) by A5, Th9;
hence 1 = (l,tu) ReassignIn I-TruthEval phii by A8, FOMODEL2:19;
end;
assume (l,tu) ReassignIn I-TruthEval phii=1; then consider u1 such that
A14: (l1,u1) ReassignIn (l,tu) ReassignIn I-TruthEval (head phii)=1 by
A8, FOMODEL2:19;
1= (l2,u1) ReassignIn (l,tu) ReassignIn I-TruthEval psi1 by A14, Th9, A5
.=(l,tu) ReassignIn (l2,u1) ReassignIn I-TruthEval psi1 by FOMODEL0:43,A5
.= (l,(l2,u1) ReassignIn I-TermEval.tt) ReassignIn (l2,u1) ReassignIn I
-TruthEval psi1 by FOMODEL2:25, A5 .=
(l2,u1) ReassignIn I-TruthEval Phi1 by A7, A9, A4; hence
I-TruthEval IT=1 by A12, FOMODEL2:19;
end; then
I-TruthEval IT=1 iff not (l,tu) ReassignIn I-TruthEval phii=0
by FOMODEL0:39; hence thesis by FOMODEL0:39;
end;
suppose
A15: l1=l; then
A16: phi = IT by Lm45;
thus Depth (l,tt) SubstIn phi = Depth phi by A15, Lm45;
let I be Element of II;
set tu=I-TermEval.tt, It=(l,tu) ReassignIn I;
It-TruthEval phii=1 iff I-TruthEval phii=1
proof
hereby
assume It-TruthEval phii=1; then consider u such that
A17: (l1,u) ReassignIn It-TruthEval phi1=1 by A8, FOMODEL2:19;
1=(l1,u) ReassignIn I-TruthEval phi1 by A17, A15, FOMODEL0:43;
hence I-TruthEval phii=1 by A8, FOMODEL2:19;
end;
assume I-TruthEval phii=1; then
consider u1 such that
A18: (l1,u1) ReassignIn I-TruthEval phi1=1 by A8, FOMODEL2:19;
(l1,u1) ReassignIn It-TruthEval phi1=1 by A15, A18, FOMODEL0:43;
hence It-TruthEval phii=1 by A8, FOMODEL2:19;
end;
then It-TruthEval phi=1 iff not I-TruthEval phi=0 by FOMODEL0:39;
hence thesis by A16, FOMODEL0:39;
end;
end;
suppose not phi is exal & not phi is 0wff;
then reconsider phii=phi
as non 0wff non exal wff string of S; set IT=(l,tt) SubstIn phii,
d=Depth phii; consider m such that
A19: d=m+1 by NAT_1:6;
W1: m+1+(-1)<=n+1-1 by XREAL_1:8, C0, A19;
reconsider mm=m as Element of NAT by ORDINAL1:def 12;
reconsider phii as
non 0wff non exal (m+1)-wff string of S by A19, FOMODEL2:def 31;
reconsider phi1=head phii, phi2=tail phii as Element of FF
by FOMODEL2:16; set d1=Depth phi1, d2=Depth phi2;
F.phii \+\ N={} & phii=<*F.phii*>^phi1^phi2 by FOMODEL2:23; then
A20: phii=<*N*>^phi1^phi2 by FOMODEL0:29;
D2: d1 <=m & d2 <= m by FOMODEL2:def 31;
reconsider m1=m-d1, m2=m-d2 as Nat; reconsider new1 =
((l,tt) SubstIn phi1), new2=(l,tt) SubstIn phi2 as wff string of S;
set d11=Depth new1, d22=Depth new2;
A21: d1<=n & d2<=n by W1,D2,XXREAL_0:2;
A22: IT = (l,tt,m,f4.mm) Subst2 phii by A19, Lm44 .=
<*N*>^(f4.(d1+m1).phi1)^(f4.(d2+m2).phi2) by Def20, A19 .=
<*N*>^new1^(f4.(d2+m2).phi2) by Lm45 .= <*N*>^new1^new2 by Lm45; then
Depth IT=1+max(d11, d22) by FOMODEL2:17 .= 1+max(d1, d22) by A21, A4 .=
1+max(d1,d2) by A21, A4 .= d by FOMODEL2:17, A20;
hence Depth (l,tt) SubstIn phi=Depth phi; let I be Element of II;
set TE=I-TermEval, u=TE.tt, J=(l,u) ReassignIn I, LH=I-TruthEval IT,
RH=J-TruthEval phii;
I-TruthEval new1=J-TruthEval phi1 & I-TruthEval new2=J-TruthEval phi2
by A21, A4; then J-TruthEval phii=1 iff
(I-TruthEval new1=0 & I-TruthEval new2=0) by A20, FOMODEL2:19; then
LH=1 iff not RH=0 by FOMODEL2:19, A22, FOMODEL0:39;
hence thesis by FOMODEL0:39;
end;
suppose phi is 0wff;
hence thesis by A1;
end;
end;
A23: for m holds P[m] from NAT_1:sch 2(A1,A3);
set m=Depth psi; thus Depth ((l,tt) SubstIn psi)=Depth psi by A23;
let I be Element of II; thus thesis by A23;
end;
