defpred S1[ Function of (QC-WFF F1()),F2(), Nat] means for p being Element of QC-WFF F1() st len (@ p) <= $2 holds
( ( p = VERUM F1() implies $1 . p = F3() ) & ( p is atomic implies $1 . p = F4(p) ) & ( p is negative implies $1 . p = F5(($1 . (the_argument_of p)),p) ) & ( p is conjunctive implies $1 . p = F6(($1 . (the_left_argument_of p)),($1 . (the_right_argument_of p)),p) ) & ( p is universal implies $1 . p = F7(($1 . (the_scope_of p)),p) ) );
defpred S2[ Element of F2(), Function of (QC-WFF F1()),F2(), Element of QC-WFF F1()] means ( ( $3 = VERUM F1() implies $1 = F3() ) & ( $3 is atomic implies $1 = F4($3) ) & ( $3 is negative implies $1 = F5(($2 . (the_argument_of $3)),$3) ) & ( $3 is conjunctive implies $1 = F6(($2 . (the_left_argument_of $3)),($2 . (the_right_argument_of $3)),$3) ) & ( $3 is universal implies $1 = F7(($2 . (the_scope_of $3)),$3) ) );
defpred S3[ Nat] means ex F being Function of (QC-WFF F1()),F2() st S1[F,$1];
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-WFF F1()),
F2()
such that A2:
S1[
F,
n]
;
S3[n + 1]
defpred S4[
Element of
QC-WFF F1(),
Element of
F2()]
means ( (
len (@ $1) <> n + 1 implies $2
= F . $1 ) & (
len (@ $1) = n + 1 implies
S2[$2,
F,$1] ) );
A3:
for
x being
Element of
QC-WFF F1() ex
y being
Element of
F2() st
S4[
x,
y]
proof
let p be
Element of
QC-WFF F1();
ex y being Element of F2() st S4[p,y]
now ( ( len (@ p) <> n + 1 & ex y being Element of F2() st y = F . p ) or ( len (@ p) = n + 1 & p = VERUM F1() & ex y being Element of F2() st S2[y,F,p] ) or ( len (@ p) = n + 1 & p is atomic & ex y being Element of F2() st S2[y,F,p] ) or ( len (@ p) = n + 1 & p is negative & ex y being Element of F2() st S2[y,F,p] ) or ( len (@ p) = n + 1 & p is conjunctive & ex y being Element of F2() st S2[y,F,p] ) or ( len (@ p) = n + 1 & p is universal & ex y being Element of F2() st S2[y,F,p] ) )end;
hence
ex
y being
Element of
F2() st
S4[
p,
y]
;
verum
end;
consider G being
Function of
(QC-WFF F1()),
F2()
such that A9:
for
p being
Element of
QC-WFF F1() holds
S4[
p,
G . p]
from FUNCT_2:sch 3(A3);
take H =
G;
S1[H,n + 1]
thus
S1[
H,
n + 1]
verumproof
let p be
Element of
QC-WFF F1();
( len (@ p) <= n + 1 implies ( ( p = VERUM F1() implies H . p = F3() ) & ( p is atomic implies H . p = F4(p) ) & ( p is negative implies H . p = F5((H . (the_argument_of p)),p) ) & ( p is conjunctive implies H . p = F6((H . (the_left_argument_of p)),(H . (the_right_argument_of p)),p) ) & ( p is universal implies H . p = F7((H . (the_scope_of p)),p) ) ) )
assume A10:
len (@ p) <= n + 1
;
( ( p = VERUM F1() implies H . p = F3() ) & ( p is atomic implies H . p = F4(p) ) & ( p is negative implies H . p = F5((H . (the_argument_of p)),p) ) & ( p is conjunctive implies H . p = F6((H . (the_left_argument_of p)),(H . (the_right_argument_of p)),p) ) & ( p is universal implies H . p = F7((H . (the_scope_of p)),p) ) )
thus
(
p = VERUM F1() implies
H . p = F3() )
( ( p is atomic implies H . p = F4(p) ) & ( p is negative implies H . p = F5((H . (the_argument_of p)),p) ) & ( p is conjunctive implies H . p = F6((H . (the_left_argument_of p)),(H . (the_right_argument_of p)),p) ) & ( p is universal implies H . p = F7((H . (the_scope_of p)),p) ) )
thus
(
p is
atomic implies
H . p = F4(
p) )
( ( p is negative implies H . p = F5((H . (the_argument_of p)),p) ) & ( p is conjunctive implies H . p = F6((H . (the_left_argument_of p)),(H . (the_right_argument_of p)),p) ) & ( p is universal implies H . p = F7((H . (the_scope_of p)),p) ) )
thus
(
p is
negative implies
H . p = F5(
(H . (the_argument_of p)),
p) )
( ( p is conjunctive implies H . p = F6((H . (the_left_argument_of p)),(H . (the_right_argument_of p)),p) ) & ( p is universal implies H . p = F7((H . (the_scope_of p)),p) ) )
thus
(
p is
conjunctive implies
H . p = F6(
(H . (the_left_argument_of p)),
(H . (the_right_argument_of p)),
p) )
( p is universal implies H . p = F7((H . (the_scope_of p)),p) )
thus
(
p is
universal implies
H . p = F7(
(H . (the_scope_of p)),
p) )
verum
end;
end;
defpred S4[ object , object ] means ex p being Element of QC-WFF F1() st
( p = $1 & ( for g being Function of (QC-WFF F1()),F2() st S1[g, len (@ p)] holds
$2 = g . p ) );
A28:
S3[ 0 ]
A29:
for n being Nat holds S3[n]
from NAT_1:sch 2(A28, A1);
A30:
for x being object st x in QC-WFF F1() holds
ex y being object st S4[x,y]
proof
let x be
object ;
( x in QC-WFF F1() implies ex y being object st S4[x,y] )
assume
x in QC-WFF F1()
;
ex y being object st S4[x,y]
then reconsider x9 =
x as
Element of
QC-WFF F1() ;
consider F being
Function of
(QC-WFF F1()),
F2()
such that A31:
S1[
F,
len (@ x9)]
by A29;
take
F . x
;
S4[x,F . x]
take
x9
;
( x9 = x & ( for g being Function of (QC-WFF F1()),F2() st S1[g, len (@ x9)] holds
F . x = g . x9 ) )
thus
x = x9
;
for g being Function of (QC-WFF F1()),F2() st S1[g, len (@ x9)] holds
F . x = g . x9
let G be
Function of
(QC-WFF F1()),
F2();
( S1[G, len (@ x9)] implies F . x = G . x9 )
assume A32:
S1[
G,
len (@ x9)]
;
F . x = G . x9
defpred S5[
Element of
QC-WFF F1()]
means (
len (@ $1) <= len (@ x9) implies
F . $1
= G . $1 );
A33:
now for p being Element of QC-WFF F1() holds
( ( p is atomic implies S5[p] ) & S5[ VERUM F1()] & ( p is negative & S5[ the_argument_of p] implies S5[p] ) & ( p is conjunctive & S5[ the_left_argument_of p] & S5[ the_right_argument_of p] implies S5[p] ) & ( p is universal & S5[ the_scope_of p] implies S5[p] ) )let p be
Element of
QC-WFF F1();
( ( p is atomic implies S5[p] ) & S5[ VERUM F1()] & ( p is negative & S5[ the_argument_of p] implies S5[p] ) & ( p is conjunctive & S5[ the_left_argument_of p] & S5[ the_right_argument_of p] implies S5[p] ) & ( p is universal & S5[ the_scope_of p] implies S5[p] ) )thus
(
p is
atomic implies
S5[
p] )
( S5[ VERUM F1()] & ( p is negative & S5[ the_argument_of p] implies S5[p] ) & ( p is conjunctive & S5[ the_left_argument_of p] & S5[ the_right_argument_of p] implies S5[p] ) & ( p is universal & S5[ the_scope_of p] implies S5[p] ) )thus
S5[
VERUM F1()]
( ( p is negative & S5[ the_argument_of p] implies S5[p] ) & ( p is conjunctive & S5[ the_left_argument_of p] & S5[ the_right_argument_of p] implies S5[p] ) & ( p is universal & S5[ the_scope_of p] implies S5[p] ) )thus
(
p is
negative &
S5[
the_argument_of p] implies
S5[
p] )
( ( p is conjunctive & S5[ the_left_argument_of p] & S5[ the_right_argument_of p] implies S5[p] ) & ( p is universal & S5[ the_scope_of p] implies S5[p] ) )thus
(
p is
conjunctive &
S5[
the_left_argument_of p] &
S5[
the_right_argument_of p] implies
S5[
p] )
( p is universal & S5[ the_scope_of p] implies S5[p] )proof
assume that A40:
p is
conjunctive
and A41:
S5[
the_left_argument_of p]
and A42:
S5[
the_right_argument_of p]
and A43:
len (@ p) <= len (@ x9)
;
F . p = G . p
A44:
len (@ (the_right_argument_of p)) < len (@ p)
by A40, QC_LANG1:15;
len (@ (the_left_argument_of p)) < len (@ p)
by A40, QC_LANG1:15;
hence F . p =
F6(
(G . (the_left_argument_of p)),
(G . (the_right_argument_of p)),
p)
by A31, A40, A41, A42, A43, A44, XXREAL_0:2
.=
G . p
by A32, A40, A43
;
verum
end; thus
(
p is
universal &
S5[
the_scope_of p] implies
S5[
p] )
verum end;
for
p being
Element of
QC-WFF F1() holds
S5[
p]
from QC_LANG1:sch 2(A33);
hence
F . x = G . x9
;
verum
end;
consider F being Function such that
A48:
dom F = QC-WFF F1()
and
A49:
for x being object st x in QC-WFF F1() holds
S4[x,F . x]
from CLASSES1:sch 1(A30);
rng F c= F2()
then reconsider F = F as Function of (QC-WFF F1()),F2() by A48, FUNCT_2:def 1, RELSET_1:4;
consider p1 being Element of QC-WFF F1() such that
A54:
p1 = VERUM F1()
and
A55:
for g being Function of (QC-WFF F1()),F2() st S1[g, len (@ p1)] holds
F . (VERUM F1()) = g . p1
by A49;
take
F
; ( F . (VERUM F1()) = F3() & ( for p being Element of QC-WFF F1() holds
( ( p is atomic implies F . p = F4(p) ) & ( p is negative implies F . p = F5((F . (the_argument_of p)),p) ) & ( p is conjunctive implies F . p = F6((F . (the_left_argument_of p)),(F . (the_right_argument_of p)),p) ) & ( p is universal implies F . p = F7((F . (the_scope_of p)),p) ) ) ) )
consider G being Function of (QC-WFF F1()),F2() such that
A56:
S1[G, len (@ p1)]
by A29;
F . (VERUM F1()) = G . (VERUM F1())
by A54, A55, A56;
hence
F . (VERUM F1()) = F3()
by A54, A56; for p being Element of QC-WFF F1() holds
( ( p is atomic implies F . p = F4(p) ) & ( p is negative implies F . p = F5((F . (the_argument_of p)),p) ) & ( p is conjunctive implies F . p = F6((F . (the_left_argument_of p)),(F . (the_right_argument_of p)),p) ) & ( p is universal implies F . p = F7((F . (the_scope_of p)),p) ) )
let p be Element of QC-WFF F1(); ( ( p is atomic implies F . p = F4(p) ) & ( p is negative implies F . p = F5((F . (the_argument_of p)),p) ) & ( p is conjunctive implies F . p = F6((F . (the_left_argument_of p)),(F . (the_right_argument_of p)),p) ) & ( p is universal implies F . p = F7((F . (the_scope_of p)),p) ) )
consider p1 being Element of QC-WFF F1() such that
A57:
p1 = p
and
A58:
for g being Function of (QC-WFF F1()),F2() st S1[g, len (@ p1)] holds
F . p = g . p1
by A49;
consider G being Function of (QC-WFF F1()),F2() such that
A59:
S1[G, len (@ p1)]
by A29;
set p9 = the_scope_of p;
A60:
ex p1 being Element of QC-WFF F1() st
( p1 = the_scope_of p & ( for g being Function of (QC-WFF F1()),F2() st S1[g, len (@ p1)] holds
F . (the_scope_of p) = g . p1 ) )
by A49;
A61:
F . p = G . p
by A57, A58, A59;
hence
( p is atomic implies F . p = F4(p) )
by A57, A59; ( ( p is negative implies F . p = F5((F . (the_argument_of p)),p) ) & ( p is conjunctive implies F . p = F6((F . (the_left_argument_of p)),(F . (the_right_argument_of p)),p) ) & ( p is universal implies F . p = F7((F . (the_scope_of p)),p) ) )
A62:
for k being Element of NAT st k < len (@ p) holds
S1[G,k]
proof
let k be
Element of
NAT ;
( k < len (@ p) implies S1[G,k] )
assume A63:
k < len (@ p)
;
S1[G,k]
let p9 be
Element of
QC-WFF F1();
( len (@ p9) <= k implies ( ( p9 = VERUM F1() implies G . p9 = F3() ) & ( p9 is atomic implies G . p9 = F4(p9) ) & ( p9 is negative implies G . p9 = F5((G . (the_argument_of p9)),p9) ) & ( p9 is conjunctive implies G . p9 = F6((G . (the_left_argument_of p9)),(G . (the_right_argument_of p9)),p9) ) & ( p9 is universal implies G . p9 = F7((G . (the_scope_of p9)),p9) ) ) )
assume
len (@ p9) <= k
;
( ( p9 = VERUM F1() implies G . p9 = F3() ) & ( p9 is atomic implies G . p9 = F4(p9) ) & ( p9 is negative implies G . p9 = F5((G . (the_argument_of p9)),p9) ) & ( p9 is conjunctive implies G . p9 = F6((G . (the_left_argument_of p9)),(G . (the_right_argument_of p9)),p9) ) & ( p9 is universal implies G . p9 = F7((G . (the_scope_of p9)),p9) ) )
then
len (@ p9) <= len (@ p)
by A63, XXREAL_0:2;
hence
( (
p9 = VERUM F1() implies
G . p9 = F3() ) & (
p9 is
atomic implies
G . p9 = F4(
p9) ) & (
p9 is
negative implies
G . p9 = F5(
(G . (the_argument_of p9)),
p9) ) & (
p9 is
conjunctive implies
G . p9 = F6(
(G . (the_left_argument_of p9)),
(G . (the_right_argument_of p9)),
p9) ) & (
p9 is
universal implies
G . p9 = F7(
(G . (the_scope_of p9)),
p9) ) )
by A57, A59;
verum
end;
thus
( p is negative implies F . p = F5((F . (the_argument_of p)),p) )
( ( p is conjunctive implies F . p = F6((F . (the_left_argument_of p)),(F . (the_right_argument_of p)),p) ) & ( p is universal implies F . p = F7((F . (the_scope_of p)),p) ) )
thus
( p is conjunctive implies F . p = F6((F . (the_left_argument_of p)),(F . (the_right_argument_of p)),p) )
( p is universal implies F . p = F7((F . (the_scope_of p)),p) )proof
set p99 =
the_right_argument_of p;
set p9 =
the_left_argument_of p;
set k9 =
len (@ (the_left_argument_of p));
set k99 =
len (@ (the_right_argument_of p));
A66:
ex
p2 being
Element of
QC-WFF F1() st
(
p2 = the_right_argument_of p & ( for
g being
Function of
(QC-WFF F1()),
F2() st
S1[
g,
len (@ p2)] holds
F . (the_right_argument_of p) = g . p2 ) )
by A49;
assume A67:
p is
conjunctive
;
F . p = F6((F . (the_left_argument_of p)),(F . (the_right_argument_of p)),p)
then
len (@ (the_left_argument_of p)) < len (@ p)
by QC_LANG1:15;
then A68:
S1[
G,
len (@ (the_left_argument_of p))]
by A62;
len (@ (the_right_argument_of p)) < len (@ p)
by A67, QC_LANG1:15;
then
S1[
G,
len (@ (the_right_argument_of p))]
by A62;
then A69:
F . (the_right_argument_of p) = G . (the_right_argument_of p)
by A66;
ex
p1 being
Element of
QC-WFF F1() st
(
p1 = the_left_argument_of p & ( for
g being
Function of
(QC-WFF F1()),
F2() st
S1[
g,
len (@ p1)] holds
F . (the_left_argument_of p) = g . p1 ) )
by A49;
then
F . (the_left_argument_of p) = G . (the_left_argument_of p)
by A68;
hence
F . p = F6(
(F . (the_left_argument_of p)),
(F . (the_right_argument_of p)),
p)
by A57, A59, A61, A67, A69;
verum
end;
set k = len (@ (the_scope_of p));
assume A70:
p is universal
; F . p = F7((F . (the_scope_of p)),p)
then
len (@ (the_scope_of p)) < len (@ p)
by QC_LANG1:16;
then
S1[G, len (@ (the_scope_of p))]
by A62;
then
F . (the_scope_of p) = G . (the_scope_of p)
by A60;
hence
F . p = F7((F . (the_scope_of p)),p)
by A57, A59, A61, A70; verum