defpred S1[ set , set ] means ex M, N being strict feasible MSAlgebra of S ex F being ManySortedFunction of M,N st
( $2 = F & i = M & j = N & $1 = [the Sorts of M,the Charact of M,the Sorts of N,the Charact of N,F] & the Sorts of M is_transformable_to the Sorts of N & F is_homomorphism M,N );
A2:
for x, y, z being set st S1[x,y] & S1[x,z] holds
y = z
by MCART_2:7;
consider X being set such that
A3:
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)),(Funcs the carrier of S,(bool A)),(Funcs the carrier' of S,(PFuncs (PFuncs NAT ,A),A)),(Funcs the carrier of S,(PFuncs (union (bool A)),(union (bool A)))):] & S1[y,x] ) )
from TARSKI:sch 1(A2);
take
X
; :: thesis: for x being set holds
( x in X iff ex M, N being strict feasible MSAlgebra of S ex f being ManySortedFunction of M,N st
( M = i & N = j & f = x & the Sorts of M is_transformable_to the Sorts of N & f is_homomorphism M,N ) )
thus
for x being set holds
( x in X iff ex M, N being strict feasible MSAlgebra of S ex F being ManySortedFunction of M,N st
( M = i & N = j & F = x & the Sorts of M is_transformable_to the Sorts of N & F is_homomorphism M,N ) )
:: thesis: verumproof
let x be
set ;
:: thesis: ( x in X iff ex M, N being strict feasible MSAlgebra of S ex F being ManySortedFunction of M,N st
( M = i & N = j & F = x & the Sorts of M is_transformable_to the Sorts of N & F is_homomorphism M,N ) )
hereby :: thesis: ( ex M, N being strict feasible MSAlgebra of S ex F being ManySortedFunction of M,N st
( M = i & N = j & F = x & the Sorts of M is_transformable_to the Sorts of N & F is_homomorphism M,N ) implies x in X )
assume
x in X
;
:: thesis: ex M, N being strict feasible MSAlgebra of S ex F being ManySortedFunction of M,N st
( M = i & N = j & F = x & the Sorts of M is_transformable_to the Sorts of N & F is_homomorphism M,N )then consider y being
set such that A4:
(
y in [:(Funcs the carrier of S,(bool A)),(Funcs the carrier' of S,(PFuncs (PFuncs NAT ,A),A)),(Funcs the carrier of S,(bool A)),(Funcs the carrier' of S,(PFuncs (PFuncs NAT ,A),A)),(Funcs the carrier of S,(PFuncs (union (bool A)),(union (bool A)))):] &
S1[
y,
x] )
by A3;
consider M,
N being
strict feasible MSAlgebra of
S,
F being
ManySortedFunction of
M,
N such that A5:
(
x = F &
i = M &
j = N &
y = [the Sorts of M,the Charact of M,the Sorts of N,the Charact of N,F] & the
Sorts of
M is_transformable_to the
Sorts of
N &
F is_homomorphism M,
N )
by A4;
thus
ex
M,
N being
strict feasible MSAlgebra of
S ex
F being
ManySortedFunction of
M,
N st
(
M = i &
N = j &
F = x & the
Sorts of
M is_transformable_to the
Sorts of
N &
F is_homomorphism M,
N )
by A5;
:: thesis: verum
end;
given M,
N being
strict feasible MSAlgebra of
S,
F being
ManySortedFunction of
M,
N such that A6:
(
M = i &
N = j &
F = x & the
Sorts of
M is_transformable_to the
Sorts of
N &
F is_homomorphism M,
N )
;
:: thesis: x in X
set y =
[the Sorts of M,the Charact of M,the Sorts of N,the Charact of N,F];
[the Sorts of M,the Charact of M,the Sorts of N,the Charact of N,F] in [:(Funcs the carrier of S,(bool A)),(Funcs the carrier' of S,(PFuncs (PFuncs NAT ,A),A)),(Funcs the carrier of S,(bool A)),(Funcs the carrier' of S,(PFuncs (PFuncs NAT ,A),A)),(Funcs the carrier of S,(PFuncs (union (bool A)),(union (bool A)))):]
proof
A7:
the
Sorts of
M in Funcs the
carrier of
S,
(bool A)
by A1, A6, Th2;
A8:
the
Charact of
M in Funcs the
carrier' of
S,
(PFuncs (PFuncs NAT ,A),A)
by A1, A6, Th2;
A9:
the
Sorts of
N in Funcs the
carrier of
S,
(bool A)
by A1, A6, Th2;
A10:
the
Charact of
N in Funcs the
carrier' of
S,
(PFuncs (PFuncs NAT ,A),A)
by A1, A6, Th2;
A11:
dom F = the
carrier of
S
by PARTFUN1:def 4;
rng F c= PFuncs (union (bool A)),
(union (bool A))
proof
let w be
set ;
:: according to TARSKI:def 3 :: thesis: ( not w in rng F or w in PFuncs (union (bool A)),(union (bool A)) )
assume
w in rng F
;
:: thesis: w in PFuncs (union (bool A)),(union (bool A))
then consider w1 being
set such that A12:
(
w1 in dom F &
w = F . w1 )
by FUNCT_1:def 5;
A13:
(
dom the
Sorts of
N = the
carrier of
S &
dom the
Sorts of
M = the
carrier of
S )
by PARTFUN1:def 4;
reconsider w' =
w as
Function of
(the Sorts of M . w1),
(the Sorts of N . w1) by A11, A12, PBOOLE:def 18;
consider M' being
strict feasible MSAlgebra of
S such that A14:
(
M' = M & ( for
C being
Component of the
Sorts of
M' holds
C c= A ) )
by A1, A6, Def2;
A15:
rng the
Sorts of
M c= bool A
consider N' being
strict feasible MSAlgebra of
S such that A16:
(
N' = N & ( for
C being
Component of the
Sorts of
N' holds
C c= A ) )
by A1, A6, Def2;
A17:
rng the
Sorts of
N c= bool A
A18:
dom w' c= union (bool A)
rng w' c= union (bool A)
hence
w in PFuncs (union (bool A)),
(union (bool A))
by A18, PARTFUN1:def 5;
:: thesis: verum
end;
then
F in Funcs the
carrier of
S,
(PFuncs (union (bool A)),(union (bool A)))
by A11, FUNCT_2:def 2;
hence
[the Sorts of M,the Charact of M,the Sorts of N,the Charact of N,F] in [:(Funcs the carrier of S,(bool A)),(Funcs the carrier' of S,(PFuncs (PFuncs NAT ,A),A)),(Funcs the carrier of S,(bool A)),(Funcs the carrier' of S,(PFuncs (PFuncs NAT ,A),A)),(Funcs the carrier of S,(PFuncs (union (bool A)),(union (bool A)))):]
by A7, A8, A9, A10, MCART_2:31;
:: thesis: verum
end;
hence
x in X
by A3, A6;
:: thesis: verum
end;