defpred S1[ Function of (QC-Sub-WFF F1()),F2(), Nat] means for S being Element of QC-Sub-WFF F1() st len (@ (S `1)) <= $2 holds
( ( S is F1() -Sub_VERUM implies $1 . S = F3() ) & ( S is Sub_atomic implies $1 . S = F4(S) ) & ( S is Sub_negative implies $1 . S = F5(($1 . (Sub_the_argument_of S))) ) & ( S is Sub_conjunctive implies $1 . S = F6(($1 . (Sub_the_left_argument_of S)),($1 . (Sub_the_right_argument_of S))) ) & ( S is Sub_universal implies $1 . S = F7(F1(),S,($1 . (Sub_the_scope_of S))) ) );
defpred S2[ Element of F2(), Function of (QC-Sub-WFF F1()),F2(), Element of QC-Sub-WFF F1()] means ( ( $3 is F1() -Sub_VERUM implies $1 = F3() ) & ( $3 is Sub_atomic implies $1 = F4($3) ) & ( $3 is Sub_negative implies $1 = F5(($2 . (Sub_the_argument_of $3))) ) & ( $3 is Sub_conjunctive implies $1 = F6(($2 . (Sub_the_left_argument_of $3)),($2 . (Sub_the_right_argument_of $3))) ) & ( $3 is Sub_universal implies $1 = F7(F1(),$3,($2 . (Sub_the_scope_of $3))) ) );
defpred S3[ Nat] means ex F being Function of (QC-Sub-WFF F1()),F2() st S1[F,$1];
defpred S4[ object , object ] means ex S being Element of QC-Sub-WFF F1() st
( S = $1 & ( for g being Function of (QC-Sub-WFF F1()),F2() st S1[g, len (@ (S `1))] holds
$2 = g . S ) );
A1:
for n being Nat st S3[n] holds
S3[n + 1]
proof
let n be
Nat;
( S3[n] implies S3[n + 1] )
given F being
Function of
(QC-Sub-WFF F1()),
F2()
such that A2:
S1[
F,
n]
;
S3[n + 1]
defpred S5[
Element of
QC-Sub-WFF F1(),
Element of
F2()]
means ( (
len (@ ($1 `1)) <> n + 1 implies $2
= F . $1 ) & (
len (@ ($1 `1)) = n + 1 implies
S2[$2,
F,$1] ) );
A3:
for
S being
Element of
QC-Sub-WFF F1() ex
y being
Element of
F2() st
S5[
S,
y]
proof
let S be
Element of
QC-Sub-WFF F1();
ex y being Element of F2() st S5[S,y]
now ( ( len (@ (S `1)) <> n + 1 & ex y being Element of F2() st y = F . S ) or ( len (@ (S `1)) = n + 1 & S is F1() -Sub_VERUM & ex y being Element of F2() st S2[y,F,S] ) or ( len (@ (S `1)) = n + 1 & S is Sub_atomic & ex y being Element of F2() st S2[y,F,S] ) or ( len (@ (S `1)) = n + 1 & S is Sub_negative & ex y being Element of F2() st S2[y,F,S] ) or ( len (@ (S `1)) = n + 1 & S is Sub_conjunctive & ex y being Element of F2() st S2[y,F,S] ) or ( len (@ (S `1)) = n + 1 & S is Sub_universal & ex y being Element of F2() st S2[y,F,S] ) )end;
hence
ex
y being
Element of
F2() st
S5[
S,
y]
;
verum
end;
consider G being
Function of
(QC-Sub-WFF F1()),
F2()
such that A9:
for
S being
Element of
QC-Sub-WFF F1() holds
S5[
S,
G . S]
from FUNCT_2:sch 3(A3);
take H =
G;
S1[H,n + 1]
thus
S1[
H,
n + 1]
verumproof
let S be
Element of
QC-Sub-WFF F1();
( len (@ (S `1)) <= n + 1 implies ( ( S is F1() -Sub_VERUM implies H . S = F3() ) & ( S is Sub_atomic implies H . S = F4(S) ) & ( S is Sub_negative implies H . S = F5((H . (Sub_the_argument_of S))) ) & ( S is Sub_conjunctive implies H . S = F6((H . (Sub_the_left_argument_of S)),(H . (Sub_the_right_argument_of S))) ) & ( S is Sub_universal implies H . S = F7(F1(),S,(H . (Sub_the_scope_of S))) ) ) )
assume A10:
len (@ (S `1)) <= n + 1
;
( ( S is F1() -Sub_VERUM implies H . S = F3() ) & ( S is Sub_atomic implies H . S = F4(S) ) & ( S is Sub_negative implies H . S = F5((H . (Sub_the_argument_of S))) ) & ( S is Sub_conjunctive implies H . S = F6((H . (Sub_the_left_argument_of S)),(H . (Sub_the_right_argument_of S))) ) & ( S is Sub_universal implies H . S = F7(F1(),S,(H . (Sub_the_scope_of S))) ) )
thus
(
S is
F1()
-Sub_VERUM implies
H . S = F3() )
( ( S is Sub_atomic implies H . S = F4(S) ) & ( S is Sub_negative implies H . S = F5((H . (Sub_the_argument_of S))) ) & ( S is Sub_conjunctive implies H . S = F6((H . (Sub_the_left_argument_of S)),(H . (Sub_the_right_argument_of S))) ) & ( S is Sub_universal implies H . S = F7(F1(),S,(H . (Sub_the_scope_of S))) ) )
thus
(
S is
Sub_atomic implies
H . S = F4(
S) )
( ( S is Sub_negative implies H . S = F5((H . (Sub_the_argument_of S))) ) & ( S is Sub_conjunctive implies H . S = F6((H . (Sub_the_left_argument_of S)),(H . (Sub_the_right_argument_of S))) ) & ( S is Sub_universal implies H . S = F7(F1(),S,(H . (Sub_the_scope_of S))) ) )
thus
(
S is
Sub_negative implies
H . S = F5(
(H . (Sub_the_argument_of S))) )
( ( S is Sub_conjunctive implies H . S = F6((H . (Sub_the_left_argument_of S)),(H . (Sub_the_right_argument_of S))) ) & ( S is Sub_universal implies H . S = F7(F1(),S,(H . (Sub_the_scope_of S))) ) )
thus
(
S is
Sub_conjunctive implies
H . S = F6(
(H . (Sub_the_left_argument_of S)),
(H . (Sub_the_right_argument_of S))) )
( S is Sub_universal implies H . S = F7(F1(),S,(H . (Sub_the_scope_of S))) )
thus
(
S is
Sub_universal implies
H . S = F7(
F1(),
S,
(H . (Sub_the_scope_of S))) )
verum
end;
end;
A18:
S3[ 0 ]
proof
set F = the
Function of
(QC-Sub-WFF F1()),
F2();
take
the
Function of
(QC-Sub-WFF F1()),
F2()
;
S1[ the Function of (QC-Sub-WFF F1()),F2(), 0 ]
let S be
Element of
QC-Sub-WFF F1();
( len (@ (S `1)) <= 0 implies ( ( S is F1() -Sub_VERUM implies the Function of (QC-Sub-WFF F1()),F2() . S = F3() ) & ( S is Sub_atomic implies the Function of (QC-Sub-WFF F1()),F2() . S = F4(S) ) & ( S is Sub_negative implies the Function of (QC-Sub-WFF F1()),F2() . S = F5(( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_argument_of S))) ) & ( S is Sub_conjunctive implies the Function of (QC-Sub-WFF F1()),F2() . S = F6(( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_left_argument_of S)),( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_right_argument_of S))) ) & ( S is Sub_universal implies the Function of (QC-Sub-WFF F1()),F2() . S = F7(F1(),S,( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_scope_of S))) ) ) )
assume
len (@ (S `1)) <= 0
;
( ( S is F1() -Sub_VERUM implies the Function of (QC-Sub-WFF F1()),F2() . S = F3() ) & ( S is Sub_atomic implies the Function of (QC-Sub-WFF F1()),F2() . S = F4(S) ) & ( S is Sub_negative implies the Function of (QC-Sub-WFF F1()),F2() . S = F5(( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_argument_of S))) ) & ( S is Sub_conjunctive implies the Function of (QC-Sub-WFF F1()),F2() . S = F6(( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_left_argument_of S)),( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_right_argument_of S))) ) & ( S is Sub_universal implies the Function of (QC-Sub-WFF F1()),F2() . S = F7(F1(),S,( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_scope_of S))) ) )
hence
( (
S is
F1()
-Sub_VERUM implies the
Function of
(QC-Sub-WFF F1()),
F2()
. S = F3() ) & (
S is
Sub_atomic implies the
Function of
(QC-Sub-WFF F1()),
F2()
. S = F4(
S) ) & (
S is
Sub_negative implies the
Function of
(QC-Sub-WFF F1()),
F2()
. S = F5(
( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_argument_of S))) ) & (
S is
Sub_conjunctive implies the
Function of
(QC-Sub-WFF F1()),
F2()
. S = F6(
( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_left_argument_of S)),
( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_right_argument_of S))) ) & (
S is
Sub_universal implies the
Function of
(QC-Sub-WFF F1()),
F2()
. S = F7(
F1(),
S,
( the Function of (QC-Sub-WFF F1()),F2() . (Sub_the_scope_of S))) ) )
by QC_LANG1:10;
verum
end;
A19:
for n being Nat holds S3[n]
from NAT_1:sch 2(A18, A1);
A20:
for x being object st x in QC-Sub-WFF F1() holds
ex y being object st S4[x,y]
proof
let x be
object ;
( x in QC-Sub-WFF F1() implies ex y being object st S4[x,y] )
assume
x in QC-Sub-WFF F1()
;
ex y being object st S4[x,y]
then reconsider x9 =
x as
Element of
QC-Sub-WFF F1() ;
consider F being
Function of
(QC-Sub-WFF F1()),
F2()
such that A21:
S1[
F,
len (@ (x9 `1))]
by A19;
take
F . x
;
S4[x,F . x]
take
x9
;
( x9 = x & ( for g being Function of (QC-Sub-WFF F1()),F2() st S1[g, len (@ (x9 `1))] holds
F . x = g . x9 ) )
thus
x9 = x
;
for g being Function of (QC-Sub-WFF F1()),F2() st S1[g, len (@ (x9 `1))] holds
F . x = g . x9
let G be
Function of
(QC-Sub-WFF F1()),
F2();
( S1[G, len (@ (x9 `1))] implies F . x = G . x9 )
assume A22:
S1[
G,
len (@ (x9 `1))]
;
F . x = G . x9
defpred S5[
Element of
QC-Sub-WFF F1()]
means (
len (@ ($1 `1)) <= len (@ (x9 `1)) implies
F . $1
= G . $1 );
for
S being
Element of
QC-Sub-WFF F1() holds
S5[
S]
from SUBSTUT1:sch 2(A23);
hence
F . x = G . x9
;
verum
end;
consider F being Function such that
A35:
dom F = QC-Sub-WFF F1()
and
A36:
for x being object st x in QC-Sub-WFF F1() holds
S4[x,F . x]
from CLASSES1:sch 1(A20);
rng F c= F2()
then reconsider F = F as Function of (QC-Sub-WFF F1()),F2() by A35, FUNCT_2:def 1, RELSET_1:4;
take
F
; for S being Element of QC-Sub-WFF F1()
for d1, d2 being Element of F2() holds
( ( S is F1() -Sub_VERUM implies F . S = F3() ) & ( S is Sub_atomic implies F . S = F4(S) ) & ( S is Sub_negative & d1 = F . (Sub_the_argument_of S) implies F . S = F5(d1) ) & ( S is Sub_conjunctive & d1 = F . (Sub_the_left_argument_of S) & d2 = F . (Sub_the_right_argument_of S) implies F . S = F6(d1,d2) ) & ( S is Sub_universal & d1 = F . (Sub_the_scope_of S) implies F . S = F7(F1(),S,d1) ) )
let S be Element of QC-Sub-WFF F1(); for d1, d2 being Element of F2() holds
( ( S is F1() -Sub_VERUM implies F . S = F3() ) & ( S is Sub_atomic implies F . S = F4(S) ) & ( S is Sub_negative & d1 = F . (Sub_the_argument_of S) implies F . S = F5(d1) ) & ( S is Sub_conjunctive & d1 = F . (Sub_the_left_argument_of S) & d2 = F . (Sub_the_right_argument_of S) implies F . S = F6(d1,d2) ) & ( S is Sub_universal & d1 = F . (Sub_the_scope_of S) implies F . S = F7(F1(),S,d1) ) )
consider S1 being Element of QC-Sub-WFF F1() such that
A40:
S1 = S
and
A41:
for g being Function of (QC-Sub-WFF F1()),F2() st S1[g, len (@ (S1 `1))] holds
F . S = g . S1
by A36;
let d1, d2 be Element of F2(); ( ( S is F1() -Sub_VERUM implies F . S = F3() ) & ( S is Sub_atomic implies F . S = F4(S) ) & ( S is Sub_negative & d1 = F . (Sub_the_argument_of S) implies F . S = F5(d1) ) & ( S is Sub_conjunctive & d1 = F . (Sub_the_left_argument_of S) & d2 = F . (Sub_the_right_argument_of S) implies F . S = F6(d1,d2) ) & ( S is Sub_universal & d1 = F . (Sub_the_scope_of S) implies F . S = F7(F1(),S,d1) ) )
consider G being Function of (QC-Sub-WFF F1()),F2() such that
A42:
S1[G, len (@ (S1 `1))]
by A19;
set S9 = Sub_the_scope_of S;
A43:
ex S1 being Element of QC-Sub-WFF F1() st
( S1 = Sub_the_scope_of S & ( for g being Function of (QC-Sub-WFF F1()),F2() st S1[g, len (@ (S1 `1))] holds
F . (Sub_the_scope_of S) = g . S1 ) )
by A36;
A44:
F . S = G . S
by A40, A41, A42;
hence
( S is F1() -Sub_VERUM implies F . S = F3() )
by A40, A42; ( ( S is Sub_atomic implies F . S = F4(S) ) & ( S is Sub_negative & d1 = F . (Sub_the_argument_of S) implies F . S = F5(d1) ) & ( S is Sub_conjunctive & d1 = F . (Sub_the_left_argument_of S) & d2 = F . (Sub_the_right_argument_of S) implies F . S = F6(d1,d2) ) & ( S is Sub_universal & d1 = F . (Sub_the_scope_of S) implies F . S = F7(F1(),S,d1) ) )
thus
( S is Sub_atomic implies F . S = F4(S) )
by A40, A42, A44; ( ( S is Sub_negative & d1 = F . (Sub_the_argument_of S) implies F . S = F5(d1) ) & ( S is Sub_conjunctive & d1 = F . (Sub_the_left_argument_of S) & d2 = F . (Sub_the_right_argument_of S) implies F . S = F6(d1,d2) ) & ( S is Sub_universal & d1 = F . (Sub_the_scope_of S) implies F . S = F7(F1(),S,d1) ) )
A45:
for k being Nat st k < len (@ (S `1)) holds
S1[G,k]
proof
let k be
Nat;
( k < len (@ (S `1)) implies S1[G,k] )
assume A46:
k < len (@ (S `1))
;
S1[G,k]
let S9 be
Element of
QC-Sub-WFF F1();
( len (@ (S9 `1)) <= k implies ( ( S9 is F1() -Sub_VERUM implies G . S9 = F3() ) & ( S9 is Sub_atomic implies G . S9 = F4(S9) ) & ( S9 is Sub_negative implies G . S9 = F5((G . (Sub_the_argument_of S9))) ) & ( S9 is Sub_conjunctive implies G . S9 = F6((G . (Sub_the_left_argument_of S9)),(G . (Sub_the_right_argument_of S9))) ) & ( S9 is Sub_universal implies G . S9 = F7(F1(),S9,(G . (Sub_the_scope_of S9))) ) ) )
assume
len (@ (S9 `1)) <= k
;
( ( S9 is F1() -Sub_VERUM implies G . S9 = F3() ) & ( S9 is Sub_atomic implies G . S9 = F4(S9) ) & ( S9 is Sub_negative implies G . S9 = F5((G . (Sub_the_argument_of S9))) ) & ( S9 is Sub_conjunctive implies G . S9 = F6((G . (Sub_the_left_argument_of S9)),(G . (Sub_the_right_argument_of S9))) ) & ( S9 is Sub_universal implies G . S9 = F7(F1(),S9,(G . (Sub_the_scope_of S9))) ) )
then
len (@ (S9 `1)) <= len (@ (S `1))
by A46, XXREAL_0:2;
hence
( (
S9 is
F1()
-Sub_VERUM implies
G . S9 = F3() ) & (
S9 is
Sub_atomic implies
G . S9 = F4(
S9) ) & (
S9 is
Sub_negative implies
G . S9 = F5(
(G . (Sub_the_argument_of S9))) ) & (
S9 is
Sub_conjunctive implies
G . S9 = F6(
(G . (Sub_the_left_argument_of S9)),
(G . (Sub_the_right_argument_of S9))) ) & (
S9 is
Sub_universal implies
G . S9 = F7(
F1(),
S9,
(G . (Sub_the_scope_of S9))) ) )
by A40, A42;
verum
end;
thus
( S is Sub_negative & d1 = F . (Sub_the_argument_of S) implies F . S = F5(d1) )
( ( S is Sub_conjunctive & d1 = F . (Sub_the_left_argument_of S) & d2 = F . (Sub_the_right_argument_of S) implies F . S = F6(d1,d2) ) & ( S is Sub_universal & d1 = F . (Sub_the_scope_of S) implies F . S = F7(F1(),S,d1) ) )
thus
( S is Sub_conjunctive & d1 = F . (Sub_the_left_argument_of S) & d2 = F . (Sub_the_right_argument_of S) implies F . S = F6(d1,d2) )
( S is Sub_universal & d1 = F . (Sub_the_scope_of S) implies F . S = F7(F1(),S,d1) )proof
set S99 =
Sub_the_right_argument_of S;
set S9 =
Sub_the_left_argument_of S;
set k9 =
len (@ ((Sub_the_left_argument_of S) `1));
set k99 =
len (@ ((Sub_the_right_argument_of S) `1));
A49:
ex
S2 being
Element of
QC-Sub-WFF F1() st
(
S2 = Sub_the_right_argument_of S & ( for
g being
Function of
(QC-Sub-WFF F1()),
F2() st
S1[
g,
len (@ (S2 `1))] holds
F . (Sub_the_right_argument_of S) = g . S2 ) )
by A36;
assume A50:
S is
Sub_conjunctive
;
( not d1 = F . (Sub_the_left_argument_of S) or not d2 = F . (Sub_the_right_argument_of S) or F . S = F6(d1,d2) )
then
len (@ ((Sub_the_left_argument_of S) `1)) < len (@ (S `1))
by Th23;
then A51:
S1[
G,
len (@ ((Sub_the_left_argument_of S) `1))]
by A45;
len (@ ((Sub_the_right_argument_of S) `1)) < len (@ (S `1))
by A50, Th23;
then
S1[
G,
len (@ ((Sub_the_right_argument_of S) `1))]
by A45;
then A52:
F . (Sub_the_right_argument_of S) = G . (Sub_the_right_argument_of S)
by A49;
ex
S1 being
Element of
QC-Sub-WFF F1() st
(
S1 = Sub_the_left_argument_of S & ( for
g being
Function of
(QC-Sub-WFF F1()),
F2() st
S1[
g,
len (@ (S1 `1))] holds
F . (Sub_the_left_argument_of S) = g . S1 ) )
by A36;
then
F . (Sub_the_left_argument_of S) = G . (Sub_the_left_argument_of S)
by A51;
hence
( not
d1 = F . (Sub_the_left_argument_of S) or not
d2 = F . (Sub_the_right_argument_of S) or
F . S = F6(
d1,
d2) )
by A40, A42, A44, A50, A52;
verum
end;
set k = len (@ ((Sub_the_scope_of S) `1));
assume A53:
S is Sub_universal
; ( not d1 = F . (Sub_the_scope_of S) or F . S = F7(F1(),S,d1) )
then
len (@ ((Sub_the_scope_of S) `1)) < len (@ (S `1))
by Th24;
then
S1[G, len (@ ((Sub_the_scope_of S) `1))]
by A45;
then
F . (Sub_the_scope_of S) = G . (Sub_the_scope_of S)
by A43;
hence
( not d1 = F . (Sub_the_scope_of S) or F . S = F7(F1(),S,d1) )
by A40, A42, A44, A53; verum