let F, G be Element of Funcs [:NAT ,(Funcs bound_QC-variables ,bound_QC-variables ):],CQC-WFF ; :: thesis: ( ( for k being Element of NAT
for h being Element of Funcs bound_QC-variables ,bound_QC-variables
for p being Element of CQC-WFF st p = f . (k + 1),(h +* (x .--> (x. k))) holds
F . k,h = All (x. k),p ) & ( for k being Element of NAT
for h being Element of Funcs bound_QC-variables ,bound_QC-variables
for p being Element of CQC-WFF st p = f . (k + 1),(h +* (x .--> (x. k))) holds
G . k,h = All (x. k),p ) implies F = G )

assume A3: for k being Element of NAT
for h being Element of Funcs bound_QC-variables ,bound_QC-variables
for p being Element of CQC-WFF st p = f . (k + 1),(h +* (x .--> (x. k))) holds
F . k,h = All (x. k),p ; :: thesis: ( ex k being Element of NAT ex h being Element of Funcs bound_QC-variables ,bound_QC-variables ex p being Element of CQC-WFF st
( p = f . (k + 1),(h +* (x .--> (x. k))) & not G . k,h = All (x. k),p ) or F = G )

assume A4: for k being Element of NAT
for h being Element of Funcs bound_QC-variables ,bound_QC-variables
for p being Element of CQC-WFF st p = f . (k + 1),(h +* (x .--> (x. k))) holds
G . k,h = All (x. k),p ; :: thesis: F = G
for a being Element of [:NAT ,(Funcs bound_QC-variables ,bound_QC-variables ):] holds F . a = G . a
proof
let a be Element of [:NAT ,(Funcs bound_QC-variables ,bound_QC-variables ):]; :: thesis: F . a = G . a
consider k being Element of NAT , h being Element of Funcs bound_QC-variables ,bound_QC-variables such that
A5: a = [k,h] by DOMAIN_1:9;
reconsider h2 = h +* (x .--> (x. k)) as Function of bound_QC-variables ,bound_QC-variables by Lm1;
reconsider h2 = h2 as Element of Funcs bound_QC-variables ,bound_QC-variables by FUNCT_2:11;
reconsider p = f . (k + 1),h2 as Element of CQC-WFF ;
F . k,h = All (x. k),p by A3
.= G . k,h by A4 ;
hence F . a = G . a by A5; :: thesis: verum
end;
hence F = G by FUNCT_2:113; :: thesis: verum