set C = bool the carrier of U0;
defpred S1[ set ] means ( A c= $1 & Constants U0 c= $1 & ( for B being non empty Subset of U0 st B = $1 holds
B is opers_closed ) );
consider X being set such that
A2:
for x being set holds
( x in X iff ( x in bool the carrier of U0 & S1[x] ) )
from XBOOLE_0:sch 1();
set P = meet X;
A3:
the carrier of U0 in bool the carrier of U0
by ZFMISC_1:def 1;
for B being non empty Subset of U0 st B = the carrier of U0 holds
B is opers_closed
by Th7;
then A4:
the carrier of U0 in X
by A2, A3;
A5:
meet X c= the carrier of U0
then A6:
A \/ (Constants U0) c= meet X
by A4, SETFAM_1:6;
then reconsider P = meet X as non empty Subset of U0 by A1, A5;
A7:
P is opers_closed
take E = UniAlgSetClosed P; :: thesis: ( A c= the carrier of E & ( for U1 being SubAlgebra of U0 st A c= the carrier of U1 holds
E is SubAlgebra of U1 ) )
A11:
E = UAStr(# P,(Opers U0,P) #)
by A7, Def9;
A c= A \/ (Constants U0)
by XBOOLE_1:7;
hence
A c= the carrier of E
by A6, A11, XBOOLE_1:1; :: thesis: for U1 being SubAlgebra of U0 st A c= the carrier of U1 holds
E is SubAlgebra of U1
let U1 be SubAlgebra of U0; :: thesis: ( A c= the carrier of U1 implies E is SubAlgebra of U1 )
assume A12:
A c= the carrier of U1
; :: thesis: E is SubAlgebra of U1
set u1 = the carrier of U1;
A13:
Constants U0 c= the carrier of U1
proof
let x be
set ;
:: according to TARSKI:def 3 :: thesis: ( not x in Constants U0 or x in the carrier of U1 )
assume
x in Constants U0
;
:: thesis: x in the carrier of U1
then consider a being
Element of
U0 such that A14:
(
a = x & ex
o being
operation of
U0 st
(
arity o = 0 &
a in rng o ) )
;
consider o0 being
operation of
U0 such that A15:
(
arity o0 = 0 &
a in rng o0 )
by A14;
consider n being
Nat such that A16:
(
n in dom the
charact of
U0 & the
charact of
U0 . n = o0 )
by FINSEQ_2:11;
reconsider B = the
carrier of
U1 as non
empty Subset of
U0 by Def8;
A17:
( the
charact of
U1 = Opers U0,
B &
B is
opers_closed )
by Def8;
A18:
n in dom the
charact of
U1
by A16, Th10;
then reconsider o1 = the
charact of
U1 . n as
operation of
U1 by FUNCT_1:def 5;
A19:
o1 = o0 /. B
by A16, A17, A18, Def7;
consider y being
set such that A20:
(
y in dom o0 &
a = o0 . y )
by A15, FUNCT_1:def 5;
A21:
B is_closed_on o0
by A17, Def5;
dom o0 =
0 -tuples_on the
carrier of
U0
by A15, Th2
.=
{(<*> the carrier of U0)}
by FINSEQ_2:112
;
then
y in {(<*> B)}
by A20;
then
y in 0 -tuples_on B
by FINSEQ_2:112;
then
y in (dom o0) /\ ((arity o0) -tuples_on B)
by A15, A20, XBOOLE_0:def 4;
then A22:
y in dom (o0 | ((arity o0) -tuples_on B))
by FUNCT_1:68;
then A23:
y in dom (o0 /. B)
by A21, Def6;
A24:
o1 . y =
(o0 | ((arity o0) -tuples_on B)) . y
by A19, A21, Def6
.=
a
by A20, A22, FUNCT_1:68
;
(
o1 . y in rng o1 &
rng o1 c= the
carrier of
U1 )
by A19, A23, FUNCT_1:def 5, RELSET_1:12;
hence
x in the
carrier of
U1
by A14, A24;
:: thesis: verum
end;
( the carrier of U1 is Subset of U0 & ( for B being non empty Subset of U0 st B = the carrier of U1 holds
( the charact of U1 = Opers U0,B & B is opers_closed ) ) )
by Def8;
then
( the carrier of U1 in bool the carrier of U0 & ( for B being non empty Subset of U0 st B = the carrier of U1 holds
B is opers_closed ) )
;
then A25:
the carrier of U1 in X
by A2, A12, A13;
then A26:
P c= the carrier of U1
by SETFAM_1:4;
thus
the carrier of E is Subset of U1
by A11, A25, SETFAM_1:4; :: according to UNIALG_2:def 8 :: thesis: for B being non empty Subset of U1 st B = the carrier of E holds
( the charact of E = Opers U1,B & B is opers_closed )
let B be non empty Subset of U1; :: thesis: ( B = the carrier of E implies ( the charact of E = Opers U1,B & B is opers_closed ) )
assume A27:
B = the carrier of E
; :: thesis: ( the charact of E = Opers U1,B & B is opers_closed )
reconsider u11 = the carrier of U1 as non empty Subset of U0 by Def8;
A28:
( the charact of U1 = Opers U0,u11 & u11 is opers_closed )
by Def8;
A29:
( dom the charact of U0 = dom (Opers U0,P) & dom the charact of U0 = dom (Opers U0,u11) )
by Def7;
A30:
now let o1 be
operation of
U1;
:: thesis: B is_closed_on o1consider n being
Nat such that A31:
(
n in dom the
charact of
U1 &
o1 = the
charact of
U1 . n )
by FINSEQ_2:11;
reconsider o0 = the
charact of
U0 . n as
operation of
U0 by A28, A29, A31, FUNCT_1:def 5;
A32:
arity o0 = arity o1
by A31, Th9;
A33:
u11 is_closed_on o0
by A28, Def5;
now let s be
FinSequence of
B;
:: thesis: ( len s = arity o1 implies o1 . s in B )assume A34:
len s = arity o1
;
:: thesis: o1 . s in Breconsider sE =
s as
Element of
P * by A11, A27, FINSEQ_1:def 11;
s is
FinSequence of
u11
by FINSEQ_2:27;
then reconsider s1 =
s as
Element of
u11 * by FINSEQ_1:def 11;
A35:
dom (o0 | ((arity o0) -tuples_on u11)) =
(dom o0) /\ ((arity o0) -tuples_on u11)
by FUNCT_1:68
.=
((arity o0) -tuples_on the carrier of U0) /\ ((arity o0) -tuples_on u11)
by Th2
.=
(arity o0) -tuples_on u11
by Th1
;
s1 in { q where q is Element of u11 * : len q = arity o0 }
by A32, A34;
then A36:
s1 in dom (o0 | ((arity o0) -tuples_on u11))
by A35, FINSEQ_2:def 4;
A37:
P is_closed_on o0
by A7, Def5;
o1 . s =
(o0 /. u11) . s1
by A28, A31, Def7
.=
(o0 | ((arity o0) -tuples_on u11)) . s1
by A33, Def6
.=
o0 . sE
by A36, FUNCT_1:68
;
hence
o1 . s in B
by A11, A27, A32, A34, A37, Def4;
:: thesis: verum end; hence
B is_closed_on o1
by Def4;
:: thesis: verum end;
A38:
dom (Opers U1,B) = dom the charact of U1
by Def7;
now let n be
Nat;
:: thesis: ( n in dom the charact of U0 implies the charact of E . n = (Opers U1,B) . n )assume A39:
n in dom the
charact of
U0
;
:: thesis: the charact of E . n = (Opers U1,B) . nthen reconsider o0 = the
charact of
U0 . n as
operation of
U0 by FUNCT_1:def 5;
reconsider o1 = the
charact of
U1 . n as
operation of
U1 by A28, A29, A39, FUNCT_1:def 5;
A40:
u11 is_closed_on o0
by A28, Def5;
A41:
P is_closed_on o0
by A7, Def5;
thus the
charact of
E . n =
o0 /. P
by A11, A29, A39, Def7
.=
o0 | ((arity o0) -tuples_on P)
by A41, Def6
.=
o0 | (((arity o0) -tuples_on u11) /\ ((arity o0) -tuples_on P))
by A26, Th1
.=
(o0 | ((arity o0) -tuples_on u11)) | ((arity o0) -tuples_on P)
by RELAT_1:100
.=
(o0 /. u11) | ((arity o0) -tuples_on P)
by A40, Def6
.=
o1 | ((arity o0) -tuples_on P)
by A28, A29, A39, Def7
.=
o1 | ((arity o1) -tuples_on B)
by A11, A27, A28, A29, A39, Th9
.=
o1 /. B
by A30, Def6
.=
(Opers U1,B) . n
by A28, A29, A38, A39, Def7
;
:: thesis: verum end;
hence
( the charact of E = Opers U1,B & B is opers_closed )
by A11, A28, A29, A30, A38, Def5, FINSEQ_1:17; :: thesis: verum