:: The Tichonov Theorem
:: by Bart{\l}omiej Skorulski
::
:: Received May 23, 2000
:: Copyright (c) 2000-2026 Association of Mizar Users
:: (Stowarzyszenie Uzytkownikow Mizara, Bialystok, Poland).
:: This code can be distributed under the GNU General Public Licence
:: version 3.0 or later, or the Creative Commons Attribution-ShareAlike
:: License version 3.0 or later, subject to the binding interpretation
:: detailed in file COPYING.interpretation.
:: See COPYING.GPL and COPYING.CC-BY-SA for the full text of these
:: licenses, or see http://www.gnu.org/licenses/gpl.html and
:: http://creativecommons.org/licenses/by-sa/3.0/.
environ
vocabularies FUNCT_1, SUBSET_1, CARD_3, RELAT_1, XBOOLE_0, FUNCT_4, TARSKI,
WAYBEL18, WAYBEL_3, PBOOLE, STRUCT_0, RLVECT_2, PRE_TOPC, RCOMP_1,
SETFAM_1, FINSET_1, CANTOR_1, YELLOW_1, ZFMISC_1;
notations TARSKI, XBOOLE_0, ZFMISC_1, SUBSET_1, STRUCT_0, RELAT_1, FUNCT_1,
RELSET_1, FUNCT_7, FINSET_1, PBOOLE, PRALG_1, CARD_3, PRE_TOPC, TOPS_2,
COMPTS_1, CANTOR_1, YELLOW_1, WAYBEL_3, WAYBEL18;
constructors SETFAM_1, FUNCT_7, TOPS_2, COMPTS_1, CANTOR_1, MONOID_0,
WAYBEL18, RELSET_1, FUNCT_4;
registrations SUBSET_1, RELSET_1, FINSET_1, CARD_3, STRUCT_0, PRE_TOPC,
MONOID_0, YELLOW_1, YELLOW_6, WAYBEL18;
requirements SUBSET, BOOLE;
definitions TARSKI, COMPTS_1, XBOOLE_0;
equalities XBOOLE_0, STRUCT_0;
expansions TARSKI, COMPTS_1, XBOOLE_0;
theorems TARSKI, ZFMISC_1, RELAT_1, FUNCT_1, FUNCT_7, CARD_3, PRE_TOPC,
TOPS_2, YELLOW_1, WAYBEL_3, WAYBEL_7, YELLOW_6, WAYBEL18, XBOOLE_0,
XBOOLE_1, TOPMETR, PARTFUN1;
schemes CLASSES1, PRE_CIRC, FUNCT_1;
begin ::Some Properties of Products
theorem Th1:
for F being Function, i, xi being set, Ai being Subset of F.i
holds proj(F,i)"({xi}) meets proj(F,i)"Ai implies xi in Ai
proof
let F be Function, i be set, xi be set, Ai be Subset of F.i;
set f = the Element of proj(F,i)"({xi}) /\ proj(F,i)"Ai;
assume
A1: proj(F,i)"({xi}) /\ proj(F,i)"Ai <> {};
then f in proj(F,i)"({xi}) by XBOOLE_0:def 4;
then proj(F,i).f in {xi} by FUNCT_1:def 7;
then
A2: proj(F,i).f = xi by TARSKI:def 1;
f in proj(F,i)"Ai by A1,XBOOLE_0:def 4;
hence thesis by A2,FUNCT_1:def 7;
end;
theorem Th2:
for F,f being Function, i,xi being set st xi in F.i & f in product F
holds f+*(i,xi) in product F
proof
let F,f be Function, i,xi be set;
assume
A1: xi in F.i;
assume
A2: f in product F;
A3: for x being object st x in dom F holds (f+*(i,xi)).x in F.x
proof
let x be object;
assume
A4: x in dom F;
per cases;
suppose
A5: i=x;
thus (f+*(i,xi)).x in F.x
proof
per cases;
suppose
i in dom f;
hence thesis by A1,A5,FUNCT_7:31;
end;
suppose
not i in dom f;
then (f+*(i,xi)) =f by FUNCT_7:def 3;
hence thesis by A2,A4,CARD_3:9;
end;
end;
end;
suppose
i<>x;
then (f+*(i,xi)).x = f.x by FUNCT_7:32;
hence thesis by A2,A4,CARD_3:9;
end;
end;
dom f = dom F by A2,CARD_3:9;
then dom(f+*(i,xi)) = dom F by FUNCT_7:30;
hence thesis by A3,CARD_3:9;
end;
theorem Th3:
for F being Function, i being set st i in dom F holds rng proj(F,i) c= F.i &
(product F <> {} implies rng proj(F,i) = F.i)
proof
let F be Function, i be set;
assume
A1: i in dom F;
thus
A2: rng proj(F,i) c= F.i
proof
let x be object;
assume x in rng proj(F,i);
then consider f9 being object such that
A3: f9 in dom proj(F,i) and
A4: x = proj(F,i).f9 by FUNCT_1:def 3;
f9 in product F by A3;
then consider f being Function such that
A5: f9 = f and
dom f = dom F and
A6: for x being object st x in dom F holds f.x in F.x by CARD_3:def 5;
proj(F,i).f = f.i by A3,A5,CARD_3:def 16;
hence thesis by A1,A4,A5,A6;
end;
assume
A7: product F <> {};
thus rng proj(F,i) c= F.i by A2;
let x be object;
set f9 = the Element of product F;
consider f being Function such that
A8: f9 = f and
A9: dom f = dom F and
for x being object st x in dom F holds f.x in F.x by A7,CARD_3:def 5;
assume x in F.i;
then f+*(i,x)in product F by A7,A8,Th2;
then
A10: f+*(i,x) in dom proj(F,i) by CARD_3:def 16;
(f+*(i,x)).i = x by A1,A9,FUNCT_7:31;
then proj(F,i).(f+*(i,x)) = x by A10,CARD_3:def 16;
hence thesis by A10,FUNCT_1:def 3;
end;
theorem Th4:
for F being Function, i being set st i in dom F holds
proj(F,i)"(F.i) = product F
proof
let F be Function, i be set;
assume
A1: i in dom F;
dom proj(F,i)=product F by CARD_3:def 16;
hence proj(F,i)"(F.i) c= product F by RELAT_1:132;
let f9 be object;
assume
A2: f9 in product F;
then consider f being Function such that
A3: f9 = f and
dom f = dom F and
A4: for x being object st x in dom F holds f.x in F.x by CARD_3:def 5;
A5: f in dom proj(F,i) by A2,A3,CARD_3:def 16;
f.i in F.i by A1,A4;
then proj(F,i).f in F.i by A5,CARD_3:def 16;
hence thesis by A3,A5,FUNCT_1:def 7;
end;
theorem Th5:
for F,f being Function, i,xi being set st xi in F.i & i in dom F
& f in product F holds f+*(i,xi) in proj(F,i)"({xi})
proof
let F,f be Function, i,xi be set;
assume that
A1: xi in F.i and
A2: i in dom F and
A3: f in product F;
(f+*(i,xi))in product F by A1,A3,Th2;
then
A4: (f+*(i,xi))in dom proj(F,i) by CARD_3:def 16;
i in dom f by A2,A3,CARD_3:9;
then (f+*(i,xi)).i = xi by FUNCT_7:31;
then (f+*(i,xi)).i in {xi} by TARSKI:def 1;
then proj(F,i).(f+*(i,xi)) in {xi} by A4,CARD_3:def 16;
hence thesis by A4,FUNCT_1:def 7;
end;
Lm1: for F,g being Function, i1,i2,xi1 being set, Ai2 being Subset of F.i2 st
i1<>i2 & g in product F holds g+*(i1,xi1) in proj(F,i2)"Ai2 implies g in proj(F
,i2)"Ai2
proof
let F,g be Function, i1,i2,xi1 be set, Ai2 be Subset of F.i2;
assume that
A1: i1<>i2 and
A2: g in product F;
A3: g in dom proj(F,i2) by A2,CARD_3:def 16;
assume g+*(i1,xi1) in proj(F,i2)"Ai2;
then g+*(i1,xi1)in dom proj(F,i2) & proj(F,i2).(g+*(i1,xi1)) in Ai2 by
FUNCT_1:def 7;
then (g+*(i1,xi1)).i2 in Ai2 by CARD_3:def 16;
then g.i2 in Ai2 by A1,FUNCT_7:32;
then proj(F,i2).g in Ai2 by A3,CARD_3:def 16;
hence thesis by A3,FUNCT_1:def 7;
end;
theorem Th6:
for F,f being Function, i1,i2,xi1 being set, Ai2 being Subset of
F.i2 st xi1 in F.i1 & f in product F holds i1 <> i2 implies (f in proj(F,i2)"
Ai2 iff f+*(i1,xi1) in proj(F,i2)"Ai2)
proof
let F,f be Function, i1,i2,xi1 be set, Ai2 be Subset of F.i2;
assume that
A1: xi1 in F.i1 and
A2: f in product F;
assume
A3: i1 <> i2;
thus f in proj(F,i2)"Ai2 implies f+*(i1,xi1) in proj(F,i2)"Ai2
proof
A4: (f+*(i1,xi1))+*(i1,f.i1) = f +*(i1,f.i1) by FUNCT_7:34
.= f by FUNCT_7:35;
assume f in proj(F,i2)"Ai2;
hence thesis by A1,A2,A3,A4,Lm1,Th2;
end;
assume f+*(i1,xi1) in proj(F,i2)"Ai2;
hence thesis by A2,A3,Lm1;
end;
theorem Th7:
for F being Function, i1,i2,xi1 being set, Ai2 being Subset of F.
i2 st product F <> {} & xi1 in F.i1 & i1 in dom F & i2 in dom F & Ai2<>F.i2
holds proj(F,i1)"({xi1}) c= proj(F,i2)"Ai2 iff i1 = i2 & xi1 in Ai2
proof
let F be Function, i1,i2,xi1 be set, Ai2 be Subset of F.i2;
assume that
A1: product F <> {} and
A2: xi1 in F.i1 and
A3: i1 in dom F and
A4: i2 in dom F and
A5: Ai2<>F.i2;
set f9 = the Element of product F;
consider f being Function such that
A6: f9 = f and
A7: dom f = dom F and
for x being object st x in dom F holds f.x in F.x by A1,CARD_3:def 5;
not F.i2 c= Ai2 by A5;
then consider xi2 being object such that
A8: xi2 in F.i2 and
A9: not xi2 in Ai2;
reconsider xi2 as Element of F.i2 by A8;
A10: (f+*(i2,xi2)).i2 = xi2 by A4,A7,FUNCT_7:31;
thus proj(F,i1)"({xi1}) c= proj(F,i2)"Ai2 implies i1 = i2 & xi1 in Ai2
proof
assume
A11: proj(F,i1)"({xi1}) c= proj(F,i2)"Ai2;
thus
A12: i1 = i2
proof
assume
A13: i1<>i2;
f+*(i2,xi2) in product F & (f+*(i2,xi2))+*(i1,xi1) in proj(F,i1)"({
xi1}) by A1,A2,A3,A8,A6,Th2,Th5;
then f+*(i2,xi2) in proj(F,i2)"Ai2 by A2,A11,A13,Th6;
then f+*(i2,xi2) in dom proj(F,i2) & proj(F,i2).(f+*(i2,xi2)) in Ai2 by
FUNCT_1:def 7;
hence contradiction by A9,A10,CARD_3:def 16;
end;
xi1 in rng proj(F,i1) by A1,A2,A3,Th3;
then {xi1} c= rng proj(F,i1) by ZFMISC_1:31;
then {xi1} c= Ai2 by A11,A12,FUNCT_1:88;
hence thesis by ZFMISC_1:31;
end;
assume that
A14: i1 = i2 and
A15: xi1 in Ai2;
{xi1} c= Ai2 by A15,ZFMISC_1:31;
hence thesis by A14,RELAT_1:143;
end;
scheme
ElProductEx { I()->non empty set, J()->TopStruct-yielding non-Empty
ManySortedSet of I(), P[object,object] }:
ex f being Element of product J() st for i
being Element of I() holds P[f.i,i]
provided
A1: for i being Element of I() ex x being Element of J().i st P[x,i]
proof
defpred Q[object,object] means
P[$2,$1] & for i9 being Element of I() st $1=i9
holds $2 in the carrier of J().i9;
A2: for i being object st i in I() ex x being object st Q[i, x]
proof
let i be object;
assume i in I();
then reconsider i1=i as Element of I();
consider x being Element of J().i1 such that
A3: P[x,i1] by A1;
take x;
thus P[x,i] by A3;
let i9 be Element of I();
assume i=i9;
hence thesis;
end;
consider f being Function such that
A4: dom f = I() and
A5: for i being object st i in I() holds Q[i, f.i] from CLASSES1:sch 1(A2);
A6: for x being object st x in dom Carrier J() holds f.x in (Carrier J()).x
proof
let x be object;
assume x in dom Carrier J();
then reconsider x9=x as Element of I();
f.x9 in the carrier of J().x9 by A5;
hence thesis by YELLOW_6:2;
end;
dom f = dom Carrier J() by A4,PARTFUN1:def 2;
then f in product(Carrier J()) by A6,CARD_3:9;
then reconsider f as Element of product J() by WAYBEL18:def 3;
take f;
let i be Element of I();
thus thesis by A5;
end;
theorem Th8:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i being Element of I, f being Element of product J holds
proj(J,i).f=f.i
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i be Element of I, f be Element of product J;
f in the carrier of product J;
then f in product (Carrier J) by WAYBEL18:def 3;
then f in dom proj(Carrier J,i) by CARD_3:def 16;
then proj(Carrier J,i).f=f.i by CARD_3:def 16;
hence thesis by WAYBEL18:def 4;
end;
theorem Th9:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i being Element of I, xi being Element of J.i, Ai being
Subset of J.i holds proj(J,i)"({xi}) meets proj(J,i)"Ai implies xi in Ai
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i be Element of I, xi be Element of J.i, Ai be Subset of J.i;
assume proj(J,i)"({xi}) /\ proj(J,i)"Ai <> {};
then proj(Carrier J,i)"({xi}) /\ proj(J,i)"Ai <> {} by WAYBEL18:def 4;
then proj(Carrier J,i)"({xi}) /\ proj(Carrier J,i)"Ai <> {} by WAYBEL18:def 4
;
then
A1: proj(Carrier J,i)"({xi}) meets proj(Carrier J,i)"Ai;
Ai c= the carrier of J.i;
then Ai c= (Carrier J).i by YELLOW_6:2;
hence thesis by A1,Th1;
end;
theorem Th10:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i being Element of I holds
proj(J,i)"[#](J.i) = [#] product J
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i be Element of I;
i in I;
then i in dom Carrier J by PARTFUN1:def 2;
then proj(Carrier J,i)"((Carrier J).i) = product Carrier J by Th4;
then proj(Carrier J,i)"((Carrier J).i) = [#] product J by WAYBEL18:def 3;
then proj(Carrier J,i)"[#](J.i) = [#] product J by YELLOW_6:2;
hence thesis by WAYBEL18:def 4;
end;
theorem Th11:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i being Element of I, xi being Element of J.i, f being
Element of product J holds f+*(i,xi) in proj(J,i)"({xi})
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i be Element of I, xi be Element of J.i, f be Element of product J;
xi in the carrier of J.i;
then
A1: xi in (Carrier J).i by YELLOW_6:2;
f in the carrier of product J;
then
A2: f in product (Carrier J) by WAYBEL18:def 3;
i in I;
then i in dom Carrier J by PARTFUN1:def 2;
then f+*(i,xi) in proj(Carrier J,i)"({xi}) by A1,A2,Th5;
hence thesis by WAYBEL18:def 4;
end;
theorem Th12:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i1,i2 being Element of I, xi1 being Element of J.i1, Ai2
being Subset of J.i2 st Ai2<>[#](J.i2) holds proj(J,i1)"({xi1}) c= proj(J,i2)"
Ai2 iff i1 = i2 & xi1 in Ai2
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i1,i2 be Element of I, xi1 be Element of J.i1, Ai2 be Subset of J.i2;
reconsider Ai29=Ai2 as Subset of (Carrier J).i2 by YELLOW_6:2;
i2 in I;
then
A1: i2 in dom Carrier J by PARTFUN1:def 2;
assume Ai2<>[#](J.i2);
then
A2: Ai29 <> (Carrier J).i2 by YELLOW_6:2;
xi1 in the carrier of J.i1;
then
A3: xi1 in (Carrier J).i1 by YELLOW_6:2;
i1 in I;
then product Carrier J <> {} & i1 in dom Carrier J by PARTFUN1:def 2;
then
proj(Carrier J,i1)"({xi1}) c= proj(Carrier J,i2)"Ai29 iff i1 = i2 & xi1
in Ai29 by A1,A3,A2,Th7;
then proj(J,i1)"({xi1}) c= proj(Carrier J,i2)"Ai2 iff i1 = i2 & xi1 in Ai29
by WAYBEL18:def 4;
hence thesis by WAYBEL18:def 4;
end;
theorem Th13:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i1,i2 being Element of I, xi1 being Element of J.i1, Ai2
being Subset of J.i2, f being Element of product J st i1<> i2 holds f in proj(J
,i2)"Ai2 iff f+*(i1,xi1) in proj(J,i2)"Ai2
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i1,i2 be Element of I, xi1 be Element of J.i1, Ai2 be Subset of J.i2, f be
Element of product J;
reconsider Ai29=Ai2 as Subset of (Carrier J).i2 by YELLOW_6:2;
xi1 in the carrier of J.i1;
then
A1: xi1 in (Carrier J).i1 by YELLOW_6:2;
f in the carrier of product J;
then
A2: f in product (Carrier J) by WAYBEL18:def 3;
assume i1<> i2;
then
f in proj(Carrier J,i2)"Ai29 iff f+*(i1,xi1) in proj(Carrier J,i2)" Ai29
by A1,A2,Th6;
hence thesis by WAYBEL18:def 4;
end;
begin
theorem Th14:
for T being non empty TopStruct holds T is compact iff for F
being Subset-Family of T st F is open & [#](T) c= union(F) ex G being
Subset-Family of T st G c= F & [#]T c= union G & G is finite
proof
let T be non empty TopStruct;
thus T is compact implies for F being Subset-Family of T st F is open & [#](
T) c= union(F) ex G being Subset-Family of T st G c= F & [#]T c= union G & G is
finite
proof
assume
A1: T is compact;
let F be Subset-Family of T;
assume that
A2: F is open and
A3: [#](T) c= union(F);
F is Cover of T by A3,TOPMETR:1;
then consider G being Subset-Family of T such that
A4: G c= F & G is Cover of T & G is finite by A1,A2;
take G;
thus thesis by A4,TOPMETR:1;
end;
assume
A5: for F being Subset-Family of T st F is open & [#](T) c= union(F) ex
G being Subset-Family of T st G c= F & [#]T c= union G & G is finite;
let F be Subset-Family of T;
assume that
A6: F is Cover of T and
A7: F is open;
[#](T) c= union(F) by A6,TOPMETR:1;
then consider G being Subset-Family of T such that
A8: G c= F & [#]T c= union G & G is finite by A5,A7;
take G;
thus thesis by A8,TOPMETR:1;
end;
theorem Th15:
for T being non empty TopSpace, B being prebasis of T holds T is
compact iff for F being Subset of B st [#](T) c= union(F) ex G being finite
Subset of F st [#]T c= union G
proof
let T be non empty TopSpace, B be prebasis of T;
set x = the carrier of T;
the carrier of T in the topology of T by PRE_TOPC:def 1;
then reconsider x as Element of InclPoset the topology of T by YELLOW_1:1;
x is compact iff x << x by WAYBEL_3:def 2;
hence thesis by WAYBEL_3:37,WAYBEL_7:31;
end;
begin ::The Tichonov Theorem
theorem Th16:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, A being set st A in product_prebasis J ex i being Element
of I, Ai being Subset of J.i st Ai is open & proj(J,i)"Ai = A
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
A be set;
assume A in product_prebasis J;
then consider i being set, T being TopStruct, Ai being Subset of T such that
A1: i in I and
A2: Ai is open and
A3: T = J.i and
A4: A = product ((Carrier J) +* (i,Ai)) by WAYBEL18:def 2;
reconsider i as Element of I by A1;
reconsider Ai as Subset of J.i by A3;
take i;
take Ai;
thus Ai is open by A2,A3;
thus thesis by A4,WAYBEL18:4;
end;
theorem Th17:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i being Element of I, xi being Element of J.i, A being set
st A in product_prebasis J & proj(J,i)"({xi}) c= A holds A = [#](product J) or
ex Ai being Subset of J.i st Ai <> [#](J.i) & xi in Ai & Ai is open & A=proj(J,
i)"Ai
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i be Element of I, xi be Element of J.i, A be set;
assume A in product_prebasis J;
then consider i1 being Element of I, Ai1 being Subset of J.i1 such that
A1: Ai1 is open and
A2: proj(J,i1)"Ai1 = A by Th16;
assume
A3: proj(J,i)"({xi}) c= A;
assume not A = [#](product J);
then
A4: Ai1 <> [#](J.i1) by A2,Th10;
then reconsider Ai=Ai1 as Subset of J.i by A3,A2,Th12;
take Ai;
thus Ai <> [#](J.i) by A3,A2,A4,Th12;
thus xi in Ai by A3,A2,A4,Th12;
J.i = J.i1 by A3,A2,A4,Th12;
hence Ai is open by A1;
thus thesis by A3,A2,A4,Th12;
end;
theorem Th18:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i being Element of I, Fi being non empty Subset-Family of J
.i st [#](J.i) c= union(Fi) holds [#](product J) c= union the set of all
proj(J,i)"Ai where
Ai is Element of Fi
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i be Element of I, Fi be non empty Subset-Family of J.i;
assume
A1: [#](J.i) c= union(Fi);
let f be object;
assume
A2: f in [#](product J);
then reconsider f9=f as Element of product J;
f9.i in [#](J.i);
then consider Ai0 being set such that
A3: f9.i in Ai0 and
A4: Ai0 in Fi by A1,TARSKI:def 4;
f9 in product Carrier J by A2,WAYBEL18:def 3;
then f9 in dom proj(Carrier J,i) by CARD_3:def 16;
then
A5: f9 in dom proj(J,i) by WAYBEL18:def 4;
reconsider Ai0 as Element of Fi by A4;
proj(J,i).f9 in Ai0 by A3,Th8;
then proj (J,i)"Ai0 in the set of all proj(J,i)"Ai where Ai is Element of Fi
& f9 in proj(J,i)"Ai0 by A5,FUNCT_1:def 7;
hence thesis by TARSKI:def 4;
end;
theorem Th19:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i being Element of I, xi being Element of J.i, G being
Subset of product_prebasis J st proj(J,i)"({xi}) c= union G & (for A being set
st A in product_prebasis J & A in G holds not proj(J,i)"({xi}) c= A) holds [#](
product J) c= union G
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i be Element of I, xi be Element of J.i, G be Subset of product_prebasis J;
assume that
A1: proj(J,i)"({xi}) c= union G and
A2: for A being set st A in product_prebasis J & A in G holds not proj(J
,i)"({xi}) c= A;
let f be object;
assume f in [#](product J);
then reconsider f9=f as Element of product J;
set g = f9+*(i,xi);
A3: g in proj(J,i)"({xi}) by Th11;
then consider Ag being set such that
A4: g in Ag and
A5: Ag in G by A1,TARSKI:def 4;
consider i2 being Element of I, Ai2 being Subset of J.i2 such that
Ai2 is open and
A6: proj(J,i2)"Ai2 = Ag by A5,Th16;
A7: Ai2 <> [#](J.i2)
proof
assume Ai2 = [#](J.i2);
then proj(J,i2)"Ai2 = [#] product J by Th10
.= the carrier of product J;
hence contradiction by A2,A5,A6;
end;
A8: not proj(J,i)"({xi}) c= proj(J,i2)"Ai2 by A2,A5,A6;
i<>i2
proof
assume
A9: i = i2;
then reconsider Ai29=Ai2 as Subset of J.i;
proj(J,i)"({xi}) /\ proj(J,i)"Ai29 <> {} by A3,A4,A6,A9,XBOOLE_0:def 4;
then
A10: proj(J,i)"({xi}) meets proj(J,i)"Ai29;
not xi in Ai2 by A8,A7,A9,Th12;
hence contradiction by A10,Th9;
end;
then f in proj(J,i2)"Ai2 by A4,A6,Th13;
hence thesis by A5,A6,TARSKI:def 4;
end;
theorem Th20:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i being Element of I, F being Subset of product_prebasis J
holds (for G being finite Subset of F holds not [#](product J) c= union G)
implies for xi being Element of J.i, G being finite Subset of F st proj(J,i)"({
xi}) c= union G ex A being set st A in product_prebasis J & A in G & proj(J,i)"
({xi}) c= A
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i be Element of I, F be Subset of product_prebasis J;
assume
A1: for G being finite Subset of F holds not [#](product J) c= union G;
let xi be Element of J.i, G be finite Subset of F;
reconsider G9=G as Subset of product_prebasis J by XBOOLE_1:1;
assume
A2: proj(J,i)"({xi}) c= union G;
assume for A being set st A in product_prebasis J & A in G holds not proj(J
,i)"({xi}) c= A;
then [#](product J) c= union G9 by A2,Th19;
hence contradiction by A1;
end;
theorem Th21:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i being Element of I, F being Subset of product_prebasis J
holds (for G being finite Subset of F holds not [#](product J) c= union G)
implies for xi being Element of J.i, G being finite Subset of F st proj(J,i)"({
xi}) c= union G holds ex Ai being Subset of J.i st Ai <> [#](J.i) & xi in Ai &
proj(J,i)"Ai in G & Ai is open
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i be Element of I, F be Subset of product_prebasis J;
assume
A1: for G being finite Subset of F holds not [#](product J) c= union G;
let xi be Element of J.i, G be finite Subset of F;
assume proj(J,i)"({xi}) c= union G;
then consider A being set such that
A2: A in product_prebasis J and
A3: A in G and
A4: proj(J,i)"({xi}) c= A by A1,Th20;
A <> [#](product J)
proof
reconsider G1 = {A} as finite Subset of F by A3,ZFMISC_1:31;
assume A = [#](product J);
then union G1 = [#](product J) by ZFMISC_1:25;
hence contradiction by A1;
end;
then consider Ai being Subset of J.i such that
A5: Ai <> [#](J.i) and
A6: xi in Ai and
A7: Ai is open and
A8: A=proj(J,i)"Ai by A2,A4,Th17;
take Ai;
thus Ai <> [#](J.i) by A5;
thus xi in Ai by A6;
thus proj(J,i)"Ai in G by A3,A8;
thus thesis by A7;
end;
theorem Th22:
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I, i being Element of I, F being Subset of product_prebasis J
st (for i being Element of I holds J.i is compact) & (for G being finite Subset
of F holds not [#](product J) c= union G) ex xi being Element of J.i st for G
being finite Subset of F holds not proj(J,i)"({xi}) c= union G
proof
defpred P[set] means not contradiction;
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I,
i be Element of I, F be Subset of product_prebasis J;
assume that
A1: for i being Element of I holds J.i is compact and
A2: for G being finite Subset of F holds not [#](product J) c= union G;
deffunc F(set) = proj(J,i)"$1;
defpred P[object,object] means
ex A being set st A = $2 &
$1 in A & proj(J,i)"A in F & for V being Subset
of J.i st V = $2 holds V is open;
assume
A3: for xi being Element of J.i ex G being finite Subset of F st proj(J,
i)"({xi}) c= union G;
A4: for xi being object st xi in the carrier of J.i
ex Ai being object st Ai in bool the carrier of J.i & P[xi, Ai]
proof
let xi be object;
assume xi in the carrier of J.i;
then reconsider xi9=xi as Element of J.i;
consider G being finite Subset of F such that
A5: proj(J,i)"({xi9}) c= union G by A3;
consider Ai being Subset of J.i such that
Ai <> [#](J.i) and
A6: xi in Ai and
A7: proj(J,i)"Ai in G and
A8: Ai is open by A2,A5,Th21;
take Ai;
thus Ai in bool the carrier of J.i;
take Ai;
thus Ai = Ai;
thus xi in Ai by A6;
thus proj(J,i)"Ai in F by A7;
let V be Subset of J.i;
assume V = Ai;
hence thesis by A8;
end;
consider h being Function such that
A9: dom h = the carrier of J.i and
A10: rng h c= bool the carrier of J.i and
A11: for xi being object st xi in the carrier of J.i holds P[xi, h.xi] from
FUNCT_1:sch 6(A4);
reconsider bGip = rng h as Subset-Family of (J.i) by A10;
reconsider bGip as Subset-Family of J.i;
A12: [#](J.i) c= union bGip
proof
let x be object;
assume
A13: x in [#](J.i);
then P[x,h.x] by A11;
then consider A being set such that
A14: A = h.x &
x in A & proj(J,i)"A in F & for V being Subset
of J.i st V = h.x holds V is open;
x in h.x & h.x in bGip by A9,FUNCT_1:def 3,A14,A13;
hence thesis by TARSKI:def 4;
end;
for P being Subset of J.i holds P in bGip implies P is open
proof
let P be Subset of J.i;
assume
P in bGip;
then consider x being object such that
A15: x in dom h & P = h.x by FUNCT_1:def 3;
P[x,h.x] by A9,A11,A15;
hence thesis by A15;
end;
then
A16: bGip is open by TOPS_2:def 1;
J.i is compact by A1;
then consider Gip being Subset-Family of J.i such that
A17: Gip c= bGip and
A18: [#](J.i) c= union Gip and
A19: Gip is finite by A12,A16,Th14;
reconsider Gip as non empty finite Subset-Family of J.i by A18,A19,ZFMISC_1:2
;
set Gp={F(Ai) where Ai is Element of Gip: P[Ai]};
A20: Gp c= F
proof
let A be object;
assume A in Gp;
then consider Ai being Element of Gip such that
A21: A= proj(J,i)"Ai;
Ai in Gip;
then consider x being object such that
A22: x in dom h & h.x = Ai by A17,FUNCT_1:def 3;
P[x,h.x] by A9,A11,A22;
hence thesis by A21,A22;
end;
Gp is finite from PRE_CIRC:sch 1;
then reconsider Gp as finite Subset of F by A20;
[#](product J) c= union Gp by A18,Th18;
hence contradiction by A2;
end;
::$N Tychonoff's theorem
::$L https://en.wikipedia.org/wiki/Tychonoff's_theorem Tychonoff's theorem
theorem
for I being non empty set, J being TopStruct-yielding non-Empty
ManySortedSet of I st for i being Element of I holds J.i is compact holds
product J is compact
proof
let I be non empty set, J be TopStruct-yielding non-Empty ManySortedSet of I;
assume
A1: for i being Element of I holds J.i is compact;
reconsider B=product_prebasis J as prebasis of product J by WAYBEL18:def 3;
assume not product J is compact;
then consider F being Subset of B such that
A2: [#](product J) c= union(F) and
A3: for G being finite Subset of F holds not [#](product J) c= union G by Th15;
defpred P[set,Element of I] means for G being finite Subset of F holds not
proj(J,$2)"({$1}) c= union G;
A4: for i being Element of I ex xi being Element of J.i st P[xi, i] by A1,A3
,Th22;
consider f being Element of product J such that
A5: for i being Element of I holds P[f.i, i] from ElProductEx(A4);
f in [#](product J);
then consider A being set such that
A6: f in A and
A7: A in F by A2,TARSKI:def 4;
reconsider G = {A} as finite Subset of F by A7,ZFMISC_1:31;
consider i being Element of I, Ai being Subset of J.i such that
Ai is open and
A8: proj(J,i)"Ai = A by A7,Th16;
proj(J,i).f in Ai by A6,A8,FUNCT_1:def 7;
then f.i in Ai by Th8;
then {f.i} c= Ai by ZFMISC_1:31;
then proj(J,i)"({f.i}) c= A by A8,RELAT_1:143;
then proj(J,i)"({f.i}) c= union G by ZFMISC_1:25;
hence contradiction by A5;
end;