defpred S1[ set , set ] means ex M being strict feasible MSAlgebra of S st
( M = $2 & $1 = [the Sorts of M,the Charact of M] );
A1:
for x, y, z being set st S1[x,y] & S1[x,z] holds
y = z
proof
let x,
y,
z be
set ;
:: thesis: ( S1[x,y] & S1[x,z] implies y = z )
given M being
strict feasible MSAlgebra of
S such that A2:
(
M = y &
x = [the Sorts of M,the Charact of M] )
;
:: thesis: ( not S1[x,z] or y = z )
given N being
strict feasible MSAlgebra of
S such that A3:
(
N = z &
x = [the Sorts of N,the Charact of N] )
;
:: thesis: y = z
( the
Sorts of
M = the
Sorts of
N & the
Charact of
M = the
Charact of
N )
by A2, A3, ZFMISC_1:33;
hence
y = z
by A2, A3;
:: thesis: verum
end;
consider X being set such that
A4:
for x being set holds
( x in X iff ex y being set st
( y in [:(Funcs the carrier of S,(bool A)),(Funcs the carrier' of S,(PFuncs (PFuncs NAT ,A),A)):] & S1[y,x] ) )
from TARSKI:sch 1(A1);
take
X
; :: thesis: for x being set holds
( x in X iff ex M being strict feasible MSAlgebra of S st
( x = M & ( for C being Component of the Sorts of M holds C c= A ) ) )
thus
for x being set holds
( x in X iff ex M being strict feasible MSAlgebra of S st
( x = M & ( for C being Component of the Sorts of M holds C c= A ) ) )
:: thesis: verumproof
let x be
set ;
:: thesis: ( x in X iff ex M being strict feasible MSAlgebra of S st
( x = M & ( for C being Component of the Sorts of M holds C c= A ) ) )
given M being
strict feasible MSAlgebra of
S such that A9:
(
x = M & ( for
C being
Component of the
Sorts of
M holds
C c= A ) )
;
:: thesis: x in X
consider y being
set such that A10:
y = [the Sorts of M,the Charact of M]
;
A11:
dom the
Sorts of
M = the
carrier of
S
by PARTFUN1:def 4;
then reconsider SM = the
Sorts of
M as
Function of the
carrier of
S,
(rng the Sorts of M) by FUNCT_2:3;
A13:
rng the
Sorts of
M c= bool A
then reconsider SM' =
SM as
Function of the
carrier of
S,
(bool A) by FUNCT_2:8;
A14:
SM' in Funcs the
carrier of
S,
(bool A)
by FUNCT_2:11;
A15:
dom the
Charact of
M = the
carrier' of
S
by PARTFUN1:def 4;
rng the
Charact of
M c= PFuncs (PFuncs NAT ,A),
A
proof
let x be
set ;
:: according to TARSKI:def 3 :: thesis: ( not x in rng the Charact of M or x in PFuncs (PFuncs NAT ,A),A )
assume
x in rng the
Charact of
M
;
:: thesis: x in PFuncs (PFuncs NAT ,A),A
then consider x1 being
set such that A16:
(
x1 in dom the
Charact of
M &
x = the
Charact of
M . x1 )
by FUNCT_1:def 5;
reconsider SA =
(the Sorts of M # ) * the
Arity of
S,
SR = the
Sorts of
M * the
ResultSort of
S as
ManySortedSet of ;
reconsider CM = the
Charact of
M as
ManySortedFunction of
SA,
SR ;
A17:
x1 in the
carrier' of
S
by A16, PARTFUN1:def 4;
A18:
(
x1 in dom SR &
x1 in dom SA )
by A15, A16, PARTFUN1:def 4;
reconsider Cm =
CM . x1 as
Function of
(SA . x1),
(SR . x1) by A15, A16, PBOOLE:def 18;
A19:
the
ResultSort of
S . x1 in the
carrier of
S
by A15, A16, FUNCT_2:7;
SR . x1 = the
Sorts of
M . (the ResultSort of S . x1)
by A18, FUNCT_1:22;
then A20:
SR . x1 in rng the
Sorts of
M
by A11, A19, FUNCT_1:def 5;
SA . x1 c= PFuncs NAT ,
A
then
(
dom Cm c= PFuncs NAT ,
A &
rng Cm c= A )
by A13, A20, XBOOLE_1:1;
hence
x in PFuncs (PFuncs NAT ,A),
A
by A16, PARTFUN1:def 5;
:: thesis: verum
end;
then
the
Charact of
M in Funcs the
carrier' of
S,
(PFuncs (PFuncs NAT ,A),A)
by A15, FUNCT_2:def 2;
then
(
y in [:(Funcs the carrier of S,(bool A)),(Funcs the carrier' of S,(PFuncs (PFuncs NAT ,A),A)):] & ex
M being
strict feasible MSAlgebra of
S st
(
M = x &
y = [the Sorts of M,the Charact of M] ) )
by A9, A10, A14, ZFMISC_1:106;
hence
x in X
by A4;
:: thesis: verum
end;