:: FINTOPO3 semantic presentation
begin
definition
let T be non empty RelStr ;
let A be Subset of T;
funcA ^d -> Subset of T equals :: FINTOPO3:def 1
{ x where x is Element of T : for y being Element of T st y in A ` holds
not x in U_FT y } ;
coherence
{ x where x is Element of T : for y being Element of T st y in A ` holds
not x in U_FT y } is Subset of T
proof
defpred S1[ Element of T] means for y being Element of T st y in A ` holds
not $1 in U_FT y;
{ x where x is Element of T : S1[x] } is Subset of T from DOMAIN_1:sch_7();
hence { x where x is Element of T : for y being Element of T st y in A ` holds
not x in U_FT y } is Subset of T ; ::_thesis: verum
end;
end;
:: deftheorem defines ^d FINTOPO3:def_1_:_
for T being non empty RelStr
for A being Subset of T holds A ^d = { x where x is Element of T : for y being Element of T st y in A ` holds
not x in U_FT y } ;
theorem Th1: :: FINTOPO3:1
for T being non empty RelStr
for A being Subset of T st T is filled holds
A c= A ^f
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T st T is filled holds
A c= A ^f
let A be Subset of T; ::_thesis: ( T is filled implies A c= A ^f )
assume A1: T is filled ; ::_thesis: A c= A ^f
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in A or x in A ^f )
assume A2: x in A ; ::_thesis: x in A ^f
then reconsider y = x as Element of T ;
y in U_FT y by A1, FIN_TOPO:def_4;
hence x in A ^f by A2, FIN_TOPO:11; ::_thesis: verum
end;
theorem Th2: :: FINTOPO3:2
for T being non empty RelStr
for A being Subset of T
for x being Element of T holds
( x in A ^d iff for y being Element of T st y in A ` holds
not x in U_FT y )
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T
for x being Element of T holds
( x in A ^d iff for y being Element of T st y in A ` holds
not x in U_FT y )
let A be Subset of T; ::_thesis: for x being Element of T holds
( x in A ^d iff for y being Element of T st y in A ` holds
not x in U_FT y )
let x be Element of T; ::_thesis: ( x in A ^d iff for y being Element of T st y in A ` holds
not x in U_FT y )
thus ( x in A ^d implies for y being Element of T st y in A ` holds
not x in U_FT y ) ::_thesis: ( ( for y being Element of T st y in A ` holds
not x in U_FT y ) implies x in A ^d )
proof
assume x in A ^d ; ::_thesis: for y being Element of T st y in A ` holds
not x in U_FT y
then ex y being Element of T st
( y = x & ( for z being Element of T st z in A ` holds
not y in U_FT z ) ) ;
hence for y being Element of T st y in A ` holds
not x in U_FT y ; ::_thesis: verum
end;
assume for z being Element of T st z in A ` holds
not x in U_FT z ; ::_thesis: x in A ^d
hence x in A ^d ; ::_thesis: verum
end;
theorem Th3: :: FINTOPO3:3
for T being non empty RelStr
for A being Subset of T st T is filled holds
A ^d c= A
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T st T is filled holds
A ^d c= A
let A be Subset of T; ::_thesis: ( T is filled implies A ^d c= A )
assume A1: T is filled ; ::_thesis: A ^d c= A
thus A ^d c= A ::_thesis: verum
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in A ^d or x in A )
assume A2: x in A ^d ; ::_thesis: x in A
then reconsider z = x as Element of T ;
now__::_thesis:_x_in_A
assume not x in A ; ::_thesis: contradiction
then A3: x in A ` by A2, SUBSET_1:29;
x in U_FT z by A1, FIN_TOPO:def_4;
hence contradiction by A2, A3, Th2; ::_thesis: verum
end;
hence x in A ; ::_thesis: verum
end;
end;
theorem Th4: :: FINTOPO3:4
for T being non empty RelStr
for A being Subset of T holds A ^d = ((A `) ^f) `
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T holds A ^d = ((A `) ^f) `
let A be Subset of T; ::_thesis: A ^d = ((A `) ^f) `
for x being set holds
( x in A ^d iff x in ((A `) ^f) ` )
proof
let x be set ; ::_thesis: ( x in A ^d iff x in ((A `) ^f) ` )
A1: (A `) ^f = { x2 where x2 is Element of T : ex y being Element of T st
( y in A ` & x2 in U_FT y ) } by FIN_TOPO:def_12;
thus ( x in A ^d implies x in ((A `) ^f) ` ) ::_thesis: ( x in ((A `) ^f) ` implies x in A ^d )
proof
A2: (A `) ^f = { x2 where x2 is Element of T : ex y being Element of T st
( y in A ` & x2 in U_FT y ) } by FIN_TOPO:def_12;
assume A3: x in A ^d ; ::_thesis: x in ((A `) ^f) `
then for x2 being Element of T holds
( not x2 = x or for y being Element of T holds
( not y in A ` or not x2 in U_FT y ) ) by Th2;
then not x in (A `) ^f by A2;
hence x in ((A `) ^f) ` by A3, SUBSET_1:29; ::_thesis: verum
end;
assume A4: x in ((A `) ^f) ` ; ::_thesis: x in A ^d
then not x in (A `) ^f by XBOOLE_0:def_5;
then for y being Element of T st y in A ` holds
not x in U_FT y by A1;
hence x in A ^d by A4; ::_thesis: verum
end;
hence A ^d = ((A `) ^f) ` by TARSKI:1; ::_thesis: verum
end;
theorem Th5: :: FINTOPO3:5
for T being non empty RelStr
for A, B being Subset of T st A c= B holds
A ^f c= B ^f
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T st A c= B holds
A ^f c= B ^f
let A, B be Subset of T; ::_thesis: ( A c= B implies A ^f c= B ^f )
assume A1: A c= B ; ::_thesis: A ^f c= B ^f
let z be set ; :: according to TARSKI:def_3 ::_thesis: ( not z in A ^f or z in B ^f )
assume z in A ^f ; ::_thesis: z in B ^f
then ex y being Element of T st
( y in A & z in U_FT y ) by FIN_TOPO:11;
hence z in B ^f by A1, FIN_TOPO:11; ::_thesis: verum
end;
theorem Th6: :: FINTOPO3:6
for T being non empty RelStr
for A, B being Subset of T st A c= B holds
A ^d c= B ^d
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T st A c= B holds
A ^d c= B ^d
let A, B be Subset of T; ::_thesis: ( A c= B implies A ^d c= B ^d )
assume A c= B ; ::_thesis: A ^d c= B ^d
then A1: B ` c= A ` by SUBSET_1:12;
let z be set ; :: according to TARSKI:def_3 ::_thesis: ( not z in A ^d or z in B ^d )
assume A2: z in A ^d ; ::_thesis: z in B ^d
then for y being Element of T st y in B ` holds
not z in U_FT y by A1, Th2;
hence z in B ^d by A2; ::_thesis: verum
end;
theorem :: FINTOPO3:7
for T being non empty RelStr
for A, B being Subset of T holds (A /\ B) ^b c= (A ^b) /\ (B ^b)
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T holds (A /\ B) ^b c= (A ^b) /\ (B ^b)
let A, B be Subset of T; ::_thesis: (A /\ B) ^b c= (A ^b) /\ (B ^b)
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (A /\ B) ^b or x in (A ^b) /\ (B ^b) )
assume A1: x in (A /\ B) ^b ; ::_thesis: x in (A ^b) /\ (B ^b)
then reconsider px = x as Point of T ;
A2: U_FT px meets A /\ B by A1, FIN_TOPO:8;
then U_FT px meets B by XBOOLE_1:74;
then A3: x in B ^b by FIN_TOPO:8;
U_FT px meets A by A2, XBOOLE_1:74;
then x in A ^b by FIN_TOPO:8;
hence x in (A ^b) /\ (B ^b) by A3, XBOOLE_0:def_4; ::_thesis: verum
end;
theorem Th8: :: FINTOPO3:8
for T being non empty RelStr
for A, B being Subset of T holds (A \/ B) ^b = (A ^b) \/ (B ^b)
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T holds (A \/ B) ^b = (A ^b) \/ (B ^b)
let A, B be Subset of T; ::_thesis: (A \/ B) ^b = (A ^b) \/ (B ^b)
thus (A \/ B) ^b c= (A ^b) \/ (B ^b) :: according to XBOOLE_0:def_10 ::_thesis: (A ^b) \/ (B ^b) c= (A \/ B) ^b
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (A \/ B) ^b or x in (A ^b) \/ (B ^b) )
assume A1: x in (A \/ B) ^b ; ::_thesis: x in (A ^b) \/ (B ^b)
then reconsider px = x as Point of T ;
U_FT px meets A \/ B by A1, FIN_TOPO:8;
then ( U_FT px meets A or U_FT px meets B ) by XBOOLE_1:70;
then ( x in A ^b or x in B ^b ) by FIN_TOPO:8;
hence x in (A ^b) \/ (B ^b) by XBOOLE_0:def_3; ::_thesis: verum
end;
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (A ^b) \/ (B ^b) or x in (A \/ B) ^b )
assume A2: x in (A ^b) \/ (B ^b) ; ::_thesis: x in (A \/ B) ^b
then reconsider px = x as Point of T ;
( x in A ^b or x in B ^b ) by A2, XBOOLE_0:def_3;
then ( U_FT px meets A or U_FT px meets B ) by FIN_TOPO:8;
then U_FT px meets A \/ B by XBOOLE_1:70;
hence x in (A \/ B) ^b by FIN_TOPO:8; ::_thesis: verum
end;
theorem :: FINTOPO3:9
for T being non empty RelStr
for A, B being Subset of T holds (A ^i) \/ (B ^i) c= (A \/ B) ^i
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T holds (A ^i) \/ (B ^i) c= (A \/ B) ^i
let A, B be Subset of T; ::_thesis: (A ^i) \/ (B ^i) c= (A \/ B) ^i
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (A ^i) \/ (B ^i) or x in (A \/ B) ^i )
assume A1: x in (A ^i) \/ (B ^i) ; ::_thesis: x in (A \/ B) ^i
then reconsider px = x as Point of T ;
( x in A ^i or x in B ^i ) by A1, XBOOLE_0:def_3;
then A2: ( U_FT px c= A or U_FT px c= B ) by FIN_TOPO:7;
( A c= A \/ B & B c= A \/ B ) by XBOOLE_1:7;
then U_FT px c= A \/ B by A2, XBOOLE_1:1;
hence x in (A \/ B) ^i by FIN_TOPO:7; ::_thesis: verum
end;
theorem Th10: :: FINTOPO3:10
for T being non empty RelStr
for A, B being Subset of T holds (A ^i) /\ (B ^i) = (A /\ B) ^i
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T holds (A ^i) /\ (B ^i) = (A /\ B) ^i
let A, B be Subset of T; ::_thesis: (A ^i) /\ (B ^i) = (A /\ B) ^i
thus (A ^i) /\ (B ^i) c= (A /\ B) ^i :: according to XBOOLE_0:def_10 ::_thesis: (A /\ B) ^i c= (A ^i) /\ (B ^i)
proof
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (A ^i) /\ (B ^i) or x in (A /\ B) ^i )
assume A1: x in (A ^i) /\ (B ^i) ; ::_thesis: x in (A /\ B) ^i
then reconsider px = x as Point of T ;
x in B ^i by A1, XBOOLE_0:def_4;
then A2: U_FT px c= B by FIN_TOPO:7;
x in A ^i by A1, XBOOLE_0:def_4;
then U_FT px c= A by FIN_TOPO:7;
then U_FT px c= A /\ B by A2, XBOOLE_1:19;
hence x in (A /\ B) ^i by FIN_TOPO:7; ::_thesis: verum
end;
let x be set ; :: according to TARSKI:def_3 ::_thesis: ( not x in (A /\ B) ^i or x in (A ^i) /\ (B ^i) )
assume A3: x in (A /\ B) ^i ; ::_thesis: x in (A ^i) /\ (B ^i)
then reconsider px = x as Point of T ;
A4: U_FT px c= A /\ B by A3, FIN_TOPO:7;
then U_FT px c= B by XBOOLE_1:18;
then A5: x in B ^i by FIN_TOPO:7;
U_FT px c= A by A4, XBOOLE_1:18;
then x in A ^i by FIN_TOPO:7;
hence x in (A ^i) /\ (B ^i) by A5, XBOOLE_0:def_4; ::_thesis: verum
end;
theorem Th11: :: FINTOPO3:11
for T being non empty RelStr
for A, B being Subset of T holds (A ^f) \/ (B ^f) = (A \/ B) ^f
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T holds (A ^f) \/ (B ^f) = (A \/ B) ^f
let A, B be Subset of T; ::_thesis: (A ^f) \/ (B ^f) = (A \/ B) ^f
( A ^f c= (A \/ B) ^f & B ^f c= (A \/ B) ^f ) by Th5, XBOOLE_1:7;
hence (A ^f) \/ (B ^f) c= (A \/ B) ^f by XBOOLE_1:8; :: according to XBOOLE_0:def_10 ::_thesis: (A \/ B) ^f c= (A ^f) \/ (B ^f)
let z be set ; :: according to TARSKI:def_3 ::_thesis: ( not z in (A \/ B) ^f or z in (A ^f) \/ (B ^f) )
assume z in (A \/ B) ^f ; ::_thesis: z in (A ^f) \/ (B ^f)
then consider y being Element of T such that
A1: y in A \/ B and
A2: z in U_FT y by FIN_TOPO:11;
percases ( y in A or y in B ) by A1, XBOOLE_0:def_3;
suppose y in A ; ::_thesis: z in (A ^f) \/ (B ^f)
then z in A ^f by A2, FIN_TOPO:11;
hence z in (A ^f) \/ (B ^f) by XBOOLE_0:def_3; ::_thesis: verum
end;
suppose y in B ; ::_thesis: z in (A ^f) \/ (B ^f)
then z in B ^f by A2, FIN_TOPO:11;
hence z in (A ^f) \/ (B ^f) by XBOOLE_0:def_3; ::_thesis: verum
end;
end;
end;
theorem Th12: :: FINTOPO3:12
for T being non empty RelStr
for A, B being Subset of T holds (A ^d) /\ (B ^d) = (A /\ B) ^d
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T holds (A ^d) /\ (B ^d) = (A /\ B) ^d
let A, B be Subset of T; ::_thesis: (A ^d) /\ (B ^d) = (A /\ B) ^d
A1: B ^d = ((B `) ^f) ` by Th4;
thus (A ^d) /\ (B ^d) = (((A `) ^f) `) /\ (B ^d) by Th4
.= (((A `) ^f) \/ ((B `) ^f)) ` by A1, XBOOLE_1:53
.= (((A `) \/ (B `)) ^f) ` by Th11
.= (((A /\ B) `) ^f) ` by XBOOLE_1:54
.= (A /\ B) ^d by Th4 ; ::_thesis: verum
end;
definition
let T be non empty RelStr ;
let A be Subset of T;
func Fcl A -> Function of NAT,(bool the carrier of T) means :Def2: :: FINTOPO3:def 2
( ( for n being Element of NAT
for B being Subset of T st B = it . n holds
it . (n + 1) = B ^b ) & it . 0 = A );
existence
ex b1 being Function of NAT,(bool the carrier of T) st
( ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^b ) & b1 . 0 = A )
proof
defpred S1[ set , set , set ] means for B being Subset of T st B = $2 holds
$3 = B ^b ;
A1: for n being Element of NAT
for x being Subset of T ex y being Subset of T st S1[n,x,y]
proof
let n be Element of NAT ; ::_thesis: for x being Subset of T ex y being Subset of T st S1[n,x,y]
let x be Subset of T; ::_thesis: ex y being Subset of T st S1[n,x,y]
reconsider C = x as Subset of T ;
S1[n,x,C ^b ] ;
hence ex y being Subset of T st S1[n,x,y] ; ::_thesis: verum
end;
ex f being Function of NAT,(bool the carrier of T) st
( f . 0 = A & ( for n being Element of NAT holds S1[n,f . n,f . (n + 1)] ) ) from RECDEF_1:sch_2(A1);
hence ex b1 being Function of NAT,(bool the carrier of T) st
( ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^b ) & b1 . 0 = A ) ; ::_thesis: verum
end;
uniqueness
for b1, b2 being Function of NAT,(bool the carrier of T) st ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^b ) & b1 . 0 = A & ( for n being Element of NAT
for B being Subset of T st B = b2 . n holds
b2 . (n + 1) = B ^b ) & b2 . 0 = A holds
b1 = b2
proof
let f1, f2 be Function of NAT,(bool the carrier of T); ::_thesis: ( ( for n being Element of NAT
for B being Subset of T st B = f1 . n holds
f1 . (n + 1) = B ^b ) & f1 . 0 = A & ( for n being Element of NAT
for B being Subset of T st B = f2 . n holds
f2 . (n + 1) = B ^b ) & f2 . 0 = A implies f1 = f2 )
assume that
A2: for n being Element of NAT
for B being Subset of T st B = f1 . n holds
f1 . (n + 1) = B ^b and
A3: f1 . 0 = A and
A4: for n being Element of NAT
for B being Subset of T st B = f2 . n holds
f2 . (n + 1) = B ^b and
A5: f2 . 0 = A ; ::_thesis: f1 = f2
defpred S1[ Element of NAT ] means f1 . $1 = f2 . $1;
A6: for n being Element of NAT st S1[n] holds
S1[n + 1]
proof
let n be Element of NAT ; ::_thesis: ( S1[n] implies S1[n + 1] )
assume A7: S1[n] ; ::_thesis: S1[n + 1]
reconsider B1 = f1 . n as Subset of T ;
B1 ^b = f1 . (n + 1) by A2;
hence S1[n + 1] by A4, A7; ::_thesis: verum
end;
A8: dom f1 = NAT by FUNCT_2:def_1;
then A9: dom f1 = dom f2 by FUNCT_2:def_1;
A10: S1[ 0 ] by A3, A5;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A10, A6);
then for x being set st x in dom f1 holds
f1 . x = f2 . x by A8;
hence f1 = f2 by A9, FUNCT_1:2; ::_thesis: verum
end;
end;
:: deftheorem Def2 defines Fcl FINTOPO3:def_2_:_
for T being non empty RelStr
for A being Subset of T
for b3 being Function of NAT,(bool the carrier of T) holds
( b3 = Fcl A iff ( ( for n being Element of NAT
for B being Subset of T st B = b3 . n holds
b3 . (n + 1) = B ^b ) & b3 . 0 = A ) );
definition
let T be non empty RelStr ;
let A be Subset of T;
let n be Nat;
func Fcl (A,n) -> Subset of T equals :: FINTOPO3:def 3
(Fcl A) . n;
coherence
(Fcl A) . n is Subset of T
proof
reconsider n9 = n as Element of NAT by ORDINAL1:def_12;
(Fcl A) . n9 c= the carrier of T ;
hence (Fcl A) . n is Subset of T ; ::_thesis: verum
end;
end;
:: deftheorem defines Fcl FINTOPO3:def_3_:_
for T being non empty RelStr
for A being Subset of T
for n being Nat holds Fcl (A,n) = (Fcl A) . n;
definition
let T be non empty RelStr ;
let A be Subset of T;
func Fint A -> Function of NAT,(bool the carrier of T) means :Def4: :: FINTOPO3:def 4
( ( for n being Element of NAT
for B being Subset of T st B = it . n holds
it . (n + 1) = B ^i ) & it . 0 = A );
existence
ex b1 being Function of NAT,(bool the carrier of T) st
( ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^i ) & b1 . 0 = A )
proof
defpred S1[ set , set , set ] means for B being Subset of T st B = $2 holds
$3 = B ^i ;
A1: for n being Element of NAT
for x being Subset of T ex y being Subset of T st S1[n,x,y]
proof
let n be Element of NAT ; ::_thesis: for x being Subset of T ex y being Subset of T st S1[n,x,y]
let x be Subset of T; ::_thesis: ex y being Subset of T st S1[n,x,y]
reconsider C = x as Subset of T ;
for B being Subset of T st B = x holds
C ^i = B ^i ;
hence ex y being Subset of T st S1[n,x,y] ; ::_thesis: verum
end;
ex f being Function of NAT,(bool the carrier of T) st
( f . 0 = A & ( for n being Element of NAT holds S1[n,f . n,f . (n + 1)] ) ) from RECDEF_1:sch_2(A1);
hence ex b1 being Function of NAT,(bool the carrier of T) st
( ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^i ) & b1 . 0 = A ) ; ::_thesis: verum
end;
uniqueness
for b1, b2 being Function of NAT,(bool the carrier of T) st ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^i ) & b1 . 0 = A & ( for n being Element of NAT
for B being Subset of T st B = b2 . n holds
b2 . (n + 1) = B ^i ) & b2 . 0 = A holds
b1 = b2
proof
let f1, f2 be Function of NAT,(bool the carrier of T); ::_thesis: ( ( for n being Element of NAT
for B being Subset of T st B = f1 . n holds
f1 . (n + 1) = B ^i ) & f1 . 0 = A & ( for n being Element of NAT
for B being Subset of T st B = f2 . n holds
f2 . (n + 1) = B ^i ) & f2 . 0 = A implies f1 = f2 )
assume that
A2: for n being Element of NAT
for B being Subset of T st B = f1 . n holds
f1 . (n + 1) = B ^i and
A3: f1 . 0 = A and
A4: for n being Element of NAT
for B being Subset of T st B = f2 . n holds
f2 . (n + 1) = B ^i and
A5: f2 . 0 = A ; ::_thesis: f1 = f2
defpred S1[ Element of NAT ] means f1 . $1 = f2 . $1;
A6: for n being Element of NAT st S1[n] holds
S1[n + 1]
proof
let n be Element of NAT ; ::_thesis: ( S1[n] implies S1[n + 1] )
assume A7: S1[n] ; ::_thesis: S1[n + 1]
reconsider B1 = f1 . n as Subset of T ;
B1 ^i = f1 . (n + 1) by A2;
hence S1[n + 1] by A4, A7; ::_thesis: verum
end;
A8: dom f1 = NAT by FUNCT_2:def_1;
then A9: dom f1 = dom f2 by FUNCT_2:def_1;
A10: S1[ 0 ] by A3, A5;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A10, A6);
then for x being set st x in dom f1 holds
f1 . x = f2 . x by A8;
hence f1 = f2 by A9, FUNCT_1:2; ::_thesis: verum
end;
end;
:: deftheorem Def4 defines Fint FINTOPO3:def_4_:_
for T being non empty RelStr
for A being Subset of T
for b3 being Function of NAT,(bool the carrier of T) holds
( b3 = Fint A iff ( ( for n being Element of NAT
for B being Subset of T st B = b3 . n holds
b3 . (n + 1) = B ^i ) & b3 . 0 = A ) );
definition
let T be non empty RelStr ;
let A be Subset of T;
let n be Nat;
func Fint (A,n) -> Subset of T equals :: FINTOPO3:def 5
(Fint A) . n;
coherence
(Fint A) . n is Subset of T
proof
reconsider n9 = n as Element of NAT by ORDINAL1:def_12;
(Fint A) . n9 c= the carrier of T ;
hence (Fint A) . n is Subset of T ; ::_thesis: verum
end;
end;
:: deftheorem defines Fint FINTOPO3:def_5_:_
for T being non empty RelStr
for A being Subset of T
for n being Nat holds Fint (A,n) = (Fint A) . n;
theorem :: FINTOPO3:13
for T being non empty RelStr
for A being Subset of T
for n being Element of NAT holds Fcl (A,(n + 1)) = (Fcl (A,n)) ^b by Def2;
theorem :: FINTOPO3:14
for T being non empty RelStr
for A being Subset of T holds Fcl (A,0) = A by Def2;
theorem Th15: :: FINTOPO3:15
for T being non empty RelStr
for A being Subset of T holds Fcl (A,1) = A ^b
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T holds Fcl (A,1) = A ^b
let A be Subset of T; ::_thesis: Fcl (A,1) = A ^b
(Fcl A) . 0 = A by Def2;
then (Fcl A) . (0 + 1) = A ^b by Def2;
hence Fcl (A,1) = A ^b ; ::_thesis: verum
end;
theorem :: FINTOPO3:16
for T being non empty RelStr
for A being Subset of T holds Fcl (A,2) = (A ^b) ^b
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T holds Fcl (A,2) = (A ^b) ^b
let A be Subset of T; ::_thesis: Fcl (A,2) = (A ^b) ^b
for B being Subset of T st B = (Fcl A) . 1 holds
(Fcl A) . (1 + 1) = B ^b by Def2;
then Fcl (A,2) = (Fcl (A,1)) ^b
.= (A ^b) ^b by Th15 ;
hence Fcl (A,2) = (A ^b) ^b ; ::_thesis: verum
end;
theorem Th17: :: FINTOPO3:17
for T being non empty RelStr
for A, B being Subset of T
for n being Element of NAT holds Fcl ((A \/ B),n) = (Fcl (A,n)) \/ (Fcl (B,n))
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T
for n being Element of NAT holds Fcl ((A \/ B),n) = (Fcl (A,n)) \/ (Fcl (B,n))
let A, B be Subset of T; ::_thesis: for n being Element of NAT holds Fcl ((A \/ B),n) = (Fcl (A,n)) \/ (Fcl (B,n))
let n be Element of NAT ; ::_thesis: Fcl ((A \/ B),n) = (Fcl (A,n)) \/ (Fcl (B,n))
for n being Element of NAT holds (Fcl (A \/ B)) . n = ((Fcl A) . n) \/ ((Fcl B) . n)
proof
defpred S1[ Element of NAT ] means (Fcl (A \/ B)) . $1 = ((Fcl A) . $1) \/ ((Fcl B) . $1);
A1: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume A2: S1[k] ; ::_thesis: S1[k + 1]
(Fcl (A \/ B)) . (k + 1) = (Fcl ((A \/ B),k)) ^b by Def2
.= ((Fcl (A,k)) ^b) \/ ((Fcl (B,k)) ^b) by A2, Th8
.= (Fcl (A,(k + 1))) \/ ((Fcl (B,k)) ^b) by Def2
.= ((Fcl A) . (k + 1)) \/ ((Fcl B) . (k + 1)) by Def2 ;
hence S1[k + 1] ; ::_thesis: verum
end;
(Fcl (A \/ B)) . 0 = A \/ B by Def2
.= ((Fcl A) . 0) \/ B by Def2
.= ((Fcl A) . 0) \/ ((Fcl B) . 0) by Def2 ;
then A3: S1[ 0 ] ;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A3, A1);
hence for n being Element of NAT holds (Fcl (A \/ B)) . n = ((Fcl A) . n) \/ ((Fcl B) . n) ; ::_thesis: verum
end;
hence Fcl ((A \/ B),n) = (Fcl (A,n)) \/ (Fcl (B,n)) ; ::_thesis: verum
end;
theorem :: FINTOPO3:18
for T being non empty RelStr
for A being Subset of T
for n being Element of NAT holds Fint (A,(n + 1)) = (Fint (A,n)) ^i by Def4;
theorem :: FINTOPO3:19
for T being non empty RelStr
for A being Subset of T holds Fint (A,0) = A by Def4;
theorem Th20: :: FINTOPO3:20
for T being non empty RelStr
for A being Subset of T holds Fint (A,1) = A ^i
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T holds Fint (A,1) = A ^i
let A be Subset of T; ::_thesis: Fint (A,1) = A ^i
( (Fint A) . 0 = A & ( for B being Subset of T st B = (Fint A) . 0 holds
(Fint A) . (0 + 1) = B ^i ) ) by Def4;
hence Fint (A,1) = A ^i ; ::_thesis: verum
end;
theorem :: FINTOPO3:21
for T being non empty RelStr
for A being Subset of T holds Fint (A,2) = (A ^i) ^i
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T holds Fint (A,2) = (A ^i) ^i
let A be Subset of T; ::_thesis: Fint (A,2) = (A ^i) ^i
thus Fint (A,2) = Fint (A,(1 + 1))
.= (Fint (A,1)) ^i by Def4
.= (A ^i) ^i by Th20 ; ::_thesis: verum
end;
theorem Th22: :: FINTOPO3:22
for T being non empty RelStr
for A, B being Subset of T
for n being Element of NAT holds Fint ((A /\ B),n) = (Fint (A,n)) /\ (Fint (B,n))
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T
for n being Element of NAT holds Fint ((A /\ B),n) = (Fint (A,n)) /\ (Fint (B,n))
let A, B be Subset of T; ::_thesis: for n being Element of NAT holds Fint ((A /\ B),n) = (Fint (A,n)) /\ (Fint (B,n))
defpred S1[ Element of NAT ] means (Fint (A /\ B)) . $1 = ((Fint A) . $1) /\ ((Fint B) . $1);
let n be Element of NAT ; ::_thesis: Fint ((A /\ B),n) = (Fint (A,n)) /\ (Fint (B,n))
A1: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume A2: S1[k] ; ::_thesis: S1[k + 1]
(Fint (A /\ B)) . (k + 1) = (Fint ((A /\ B),k)) ^i by Def4
.= ((Fint (A,k)) ^i) /\ ((Fint (B,k)) ^i) by A2, Th10
.= (Fint (A,(k + 1))) /\ ((Fint (B,k)) ^i) by Def4
.= ((Fint A) . (k + 1)) /\ ((Fint B) . (k + 1)) by Def4 ;
hence S1[k + 1] ; ::_thesis: verum
end;
(Fint (A /\ B)) . 0 = A /\ B by Def4
.= ((Fint A) . 0) /\ B by Def4
.= ((Fint A) . 0) /\ ((Fint B) . 0) by Def4 ;
then A3: S1[ 0 ] ;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A3, A1);
hence Fint ((A /\ B),n) = (Fint (A,n)) /\ (Fint (B,n)) ; ::_thesis: verum
end;
theorem :: FINTOPO3:23
for T being non empty RelStr
for A being Subset of T st T is filled holds
for n being Element of NAT holds A c= Fcl (A,n)
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T st T is filled holds
for n being Element of NAT holds A c= Fcl (A,n)
let A be Subset of T; ::_thesis: ( T is filled implies for n being Element of NAT holds A c= Fcl (A,n) )
defpred S1[ Element of NAT ] means A c= (Fcl A) . $1;
assume A1: T is filled ; ::_thesis: for n being Element of NAT holds A c= Fcl (A,n)
A2: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume S1[k] ; ::_thesis: S1[k + 1]
then A ^b c= (Fcl (A,k)) ^b by FIN_TOPO:14;
then A3: A ^b c= Fcl (A,(k + 1)) by Def2;
A c= A ^b by A1, FIN_TOPO:13;
hence S1[k + 1] by A3, XBOOLE_1:1; ::_thesis: verum
end;
let n be Element of NAT ; ::_thesis: A c= Fcl (A,n)
A4: S1[ 0 ] by Def2;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A4, A2);
hence A c= Fcl (A,n) ; ::_thesis: verum
end;
theorem :: FINTOPO3:24
for T being non empty RelStr
for A being Subset of T st T is filled holds
for n being Element of NAT holds Fint (A,n) c= A
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T st T is filled holds
for n being Element of NAT holds Fint (A,n) c= A
let A be Subset of T; ::_thesis: ( T is filled implies for n being Element of NAT holds Fint (A,n) c= A )
defpred S1[ Element of NAT ] means (Fint A) . $1 c= A;
assume A1: T is filled ; ::_thesis: for n being Element of NAT holds Fint (A,n) c= A
A2: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume S1[k] ; ::_thesis: S1[k + 1]
then (Fint (A,k)) ^i c= A ^i by FINTOPO2:1;
then A3: Fint (A,(k + 1)) c= A ^i by Def4;
A ^i c= A by A1, FIN_TOPO:22;
hence S1[k + 1] by A3, XBOOLE_1:1; ::_thesis: verum
end;
let n be Element of NAT ; ::_thesis: Fint (A,n) c= A
A4: S1[ 0 ] by Def4;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A4, A2);
hence Fint (A,n) c= A ; ::_thesis: verum
end;
theorem :: FINTOPO3:25
for T being non empty RelStr
for A being Subset of T st T is filled holds
for n being Element of NAT holds Fcl (A,n) c= Fcl (A,(n + 1))
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T st T is filled holds
for n being Element of NAT holds Fcl (A,n) c= Fcl (A,(n + 1))
let A be Subset of T; ::_thesis: ( T is filled implies for n being Element of NAT holds Fcl (A,n) c= Fcl (A,(n + 1)) )
assume A1: T is filled ; ::_thesis: for n being Element of NAT holds Fcl (A,n) c= Fcl (A,(n + 1))
let n be Element of NAT ; ::_thesis: Fcl (A,n) c= Fcl (A,(n + 1))
((Fcl A) . n) ^b = Fcl (A,(n + 1)) by Def2;
hence Fcl (A,n) c= Fcl (A,(n + 1)) by A1, FIN_TOPO:13; ::_thesis: verum
end;
theorem :: FINTOPO3:26
for T being non empty RelStr
for A being Subset of T st T is filled holds
for n being Element of NAT holds Fint (A,(n + 1)) c= Fint (A,n)
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T st T is filled holds
for n being Element of NAT holds Fint (A,(n + 1)) c= Fint (A,n)
let A be Subset of T; ::_thesis: ( T is filled implies for n being Element of NAT holds Fint (A,(n + 1)) c= Fint (A,n) )
assume A1: T is filled ; ::_thesis: for n being Element of NAT holds Fint (A,(n + 1)) c= Fint (A,n)
let n be Element of NAT ; ::_thesis: Fint (A,(n + 1)) c= Fint (A,n)
((Fint A) . n) ^i = Fint (A,(n + 1)) by Def4;
hence Fint (A,(n + 1)) c= Fint (A,n) by A1, FIN_TOPO:22; ::_thesis: verum
end;
theorem Th27: :: FINTOPO3:27
for T being non empty RelStr
for A being Subset of T
for n being Element of NAT holds (Fint ((A `),n)) ` = Fcl (A,n)
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T
for n being Element of NAT holds (Fint ((A `),n)) ` = Fcl (A,n)
let A be Subset of T; ::_thesis: for n being Element of NAT holds (Fint ((A `),n)) ` = Fcl (A,n)
defpred S1[ Element of NAT ] means (Fint ((A `),$1)) ` = Fcl (A,$1);
A1: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume A2: S1[k] ; ::_thesis: S1[k + 1]
Fcl (A,(k + 1)) = (Fcl (A,k)) ^b by Def2
.= ((((Fint ((A `),k)) `) `) ^i) ` by A2, FIN_TOPO:16
.= (Fint ((A `),(k + 1))) ` by Def4 ;
hence S1[k + 1] ; ::_thesis: verum
end;
(Fint ((A `),0)) ` = (A `) ` by Def4
.= Fcl (A,0) by Def2 ;
then A3: S1[ 0 ] ;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A3, A1);
hence for n being Element of NAT holds (Fint ((A `),n)) ` = Fcl (A,n) ; ::_thesis: verum
end;
theorem Th28: :: FINTOPO3:28
for T being non empty RelStr
for A being Subset of T
for n being Element of NAT holds (Fcl ((A `),n)) ` = Fint (A,n)
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T
for n being Element of NAT holds (Fcl ((A `),n)) ` = Fint (A,n)
let A be Subset of T; ::_thesis: for n being Element of NAT holds (Fcl ((A `),n)) ` = Fint (A,n)
let n be Element of NAT ; ::_thesis: (Fcl ((A `),n)) ` = Fint (A,n)
Fint (A,n) = ((Fint (((A `) `),n)) `) `
.= (Fcl ((A `),n)) ` by Th27 ;
hence (Fcl ((A `),n)) ` = Fint (A,n) ; ::_thesis: verum
end;
theorem :: FINTOPO3:29
for T being non empty RelStr
for A, B being Subset of T
for n being Element of NAT holds (Fcl (A,n)) \/ (Fcl (B,n)) = (Fint (((A \/ B) `),n)) `
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T
for n being Element of NAT holds (Fcl (A,n)) \/ (Fcl (B,n)) = (Fint (((A \/ B) `),n)) `
let A, B be Subset of T; ::_thesis: for n being Element of NAT holds (Fcl (A,n)) \/ (Fcl (B,n)) = (Fint (((A \/ B) `),n)) `
let n be Element of NAT ; ::_thesis: (Fcl (A,n)) \/ (Fcl (B,n)) = (Fint (((A \/ B) `),n)) `
(Fcl (A,n)) \/ (Fcl (B,n)) = Fcl ((A \/ B),n) by Th17
.= (Fint (((A \/ B) `),n)) ` by Th27 ;
hence (Fcl (A,n)) \/ (Fcl (B,n)) = (Fint (((A \/ B) `),n)) ` ; ::_thesis: verum
end;
theorem :: FINTOPO3:30
for T being non empty RelStr
for A, B being Subset of T
for n being Element of NAT holds (Fint (A,n)) /\ (Fint (B,n)) = (Fcl (((A /\ B) `),n)) `
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T
for n being Element of NAT holds (Fint (A,n)) /\ (Fint (B,n)) = (Fcl (((A /\ B) `),n)) `
let A, B be Subset of T; ::_thesis: for n being Element of NAT holds (Fint (A,n)) /\ (Fint (B,n)) = (Fcl (((A /\ B) `),n)) `
let n be Element of NAT ; ::_thesis: (Fint (A,n)) /\ (Fint (B,n)) = (Fcl (((A /\ B) `),n)) `
(Fint (A,n)) /\ (Fint (B,n)) = Fint ((A /\ B),n) by Th22
.= (Fcl (((A /\ B) `),n)) ` by Th28 ;
hence (Fint (A,n)) /\ (Fint (B,n)) = (Fcl (((A /\ B) `),n)) ` ; ::_thesis: verum
end;
definition
let T be non empty RelStr ;
let A be Subset of T;
func Finf A -> Function of NAT,(bool the carrier of T) means :Def6: :: FINTOPO3:def 6
( ( for n being Element of NAT
for B being Subset of T st B = it . n holds
it . (n + 1) = B ^f ) & it . 0 = A );
existence
ex b1 being Function of NAT,(bool the carrier of T) st
( ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^f ) & b1 . 0 = A )
proof
defpred S1[ set , set , set ] means for B being Subset of T st B = $2 holds
$3 = B ^f ;
A1: for n being Element of NAT
for x being Subset of T ex y being Subset of T st S1[n,x,y]
proof
let n be Element of NAT ; ::_thesis: for x being Subset of T ex y being Subset of T st S1[n,x,y]
let x be Subset of T; ::_thesis: ex y being Subset of T st S1[n,x,y]
reconsider C = x as Subset of T ;
for B being Subset of T st B = x holds
C ^f = B ^f ;
hence ex y being Subset of T st S1[n,x,y] ; ::_thesis: verum
end;
ex f being Function of NAT,(bool the carrier of T) st
( f . 0 = A & ( for n being Element of NAT holds S1[n,f . n,f . (n + 1)] ) ) from RECDEF_1:sch_2(A1);
hence ex b1 being Function of NAT,(bool the carrier of T) st
( ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^f ) & b1 . 0 = A ) ; ::_thesis: verum
end;
uniqueness
for b1, b2 being Function of NAT,(bool the carrier of T) st ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^f ) & b1 . 0 = A & ( for n being Element of NAT
for B being Subset of T st B = b2 . n holds
b2 . (n + 1) = B ^f ) & b2 . 0 = A holds
b1 = b2
proof
let f1, f2 be Function of NAT,(bool the carrier of T); ::_thesis: ( ( for n being Element of NAT
for B being Subset of T st B = f1 . n holds
f1 . (n + 1) = B ^f ) & f1 . 0 = A & ( for n being Element of NAT
for B being Subset of T st B = f2 . n holds
f2 . (n + 1) = B ^f ) & f2 . 0 = A implies f1 = f2 )
assume that
A2: for n being Element of NAT
for B being Subset of T st B = f1 . n holds
f1 . (n + 1) = B ^f and
A3: f1 . 0 = A and
A4: for n being Element of NAT
for B being Subset of T st B = f2 . n holds
f2 . (n + 1) = B ^f and
A5: f2 . 0 = A ; ::_thesis: f1 = f2
defpred S1[ Element of NAT ] means f1 . $1 = f2 . $1;
A6: dom f1 = NAT by FUNCT_2:def_1;
then A7: dom f1 = dom f2 by FUNCT_2:def_1;
for n being Element of NAT holds S1[n]
proof
let n be Element of NAT ; ::_thesis: S1[n]
A8: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume A9: S1[k] ; ::_thesis: S1[k + 1]
reconsider B1 = f1 . k as Subset of T ;
B1 ^f = f1 . (k + 1) by A2;
hence S1[k + 1] by A4, A9; ::_thesis: verum
end;
A10: S1[ 0 ] by A3, A5;
for m being Element of NAT holds S1[m] from NAT_1:sch_1(A10, A8);
hence S1[n] ; ::_thesis: verum
end;
then for x being set st x in dom f1 holds
f1 . x = f2 . x by A6;
hence f1 = f2 by A7, FUNCT_1:2; ::_thesis: verum
end;
end;
:: deftheorem Def6 defines Finf FINTOPO3:def_6_:_
for T being non empty RelStr
for A being Subset of T
for b3 being Function of NAT,(bool the carrier of T) holds
( b3 = Finf A iff ( ( for n being Element of NAT
for B being Subset of T st B = b3 . n holds
b3 . (n + 1) = B ^f ) & b3 . 0 = A ) );
definition
let T be non empty RelStr ;
let A be Subset of T;
let n be Nat;
func Finf (A,n) -> Subset of T equals :: FINTOPO3:def 7
(Finf A) . n;
coherence
(Finf A) . n is Subset of T
proof
reconsider n9 = n as Element of NAT by ORDINAL1:def_12;
(Finf A) . n9 c= the carrier of T ;
hence (Finf A) . n is Subset of T ; ::_thesis: verum
end;
end;
:: deftheorem defines Finf FINTOPO3:def_7_:_
for T being non empty RelStr
for A being Subset of T
for n being Nat holds Finf (A,n) = (Finf A) . n;
definition
let T be non empty RelStr ;
let A be Subset of T;
func Fdfl A -> Function of NAT,(bool the carrier of T) means :Def8: :: FINTOPO3:def 8
( ( for n being Element of NAT
for B being Subset of T st B = it . n holds
it . (n + 1) = B ^d ) & it . 0 = A );
existence
ex b1 being Function of NAT,(bool the carrier of T) st
( ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^d ) & b1 . 0 = A )
proof
defpred S1[ set , set , set ] means for B being Subset of T st B = $2 holds
$3 = B ^d ;
A1: for n being Element of NAT
for x being Subset of T ex y being Subset of T st S1[n,x,y]
proof
let n be Element of NAT ; ::_thesis: for x being Subset of T ex y being Subset of T st S1[n,x,y]
let x be Subset of T; ::_thesis: ex y being Subset of T st S1[n,x,y]
for B being Subset of T st B = x holds
x ^d = B ^d ;
hence ex y being Subset of T st S1[n,x,y] ; ::_thesis: verum
end;
ex f being Function of NAT,(bool the carrier of T) st
( f . 0 = A & ( for n being Element of NAT holds S1[n,f . n,f . (n + 1)] ) ) from RECDEF_1:sch_2(A1);
hence ex b1 being Function of NAT,(bool the carrier of T) st
( ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^d ) & b1 . 0 = A ) ; ::_thesis: verum
end;
uniqueness
for b1, b2 being Function of NAT,(bool the carrier of T) st ( for n being Element of NAT
for B being Subset of T st B = b1 . n holds
b1 . (n + 1) = B ^d ) & b1 . 0 = A & ( for n being Element of NAT
for B being Subset of T st B = b2 . n holds
b2 . (n + 1) = B ^d ) & b2 . 0 = A holds
b1 = b2
proof
let f1, f2 be Function of NAT,(bool the carrier of T); ::_thesis: ( ( for n being Element of NAT
for B being Subset of T st B = f1 . n holds
f1 . (n + 1) = B ^d ) & f1 . 0 = A & ( for n being Element of NAT
for B being Subset of T st B = f2 . n holds
f2 . (n + 1) = B ^d ) & f2 . 0 = A implies f1 = f2 )
assume that
A2: for n being Element of NAT
for B being Subset of T st B = f1 . n holds
f1 . (n + 1) = B ^d and
A3: f1 . 0 = A and
A4: for n being Element of NAT
for B being Subset of T st B = f2 . n holds
f2 . (n + 1) = B ^d and
A5: f2 . 0 = A ; ::_thesis: f1 = f2
defpred S1[ Element of NAT ] means f1 . $1 = f2 . $1;
A6: for n being Element of NAT st S1[n] holds
S1[n + 1]
proof
let n be Element of NAT ; ::_thesis: ( S1[n] implies S1[n + 1] )
assume A7: S1[n] ; ::_thesis: S1[n + 1]
reconsider B1 = f1 . n as Subset of T ;
B1 ^d = f1 . (n + 1) by A2;
hence S1[n + 1] by A4, A7; ::_thesis: verum
end;
A8: dom f1 = NAT by FUNCT_2:def_1;
then A9: dom f1 = dom f2 by FUNCT_2:def_1;
A10: S1[ 0 ] by A3, A5;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A10, A6);
then for x being set st x in dom f1 holds
f1 . x = f2 . x by A8;
hence f1 = f2 by A9, FUNCT_1:2; ::_thesis: verum
end;
end;
:: deftheorem Def8 defines Fdfl FINTOPO3:def_8_:_
for T being non empty RelStr
for A being Subset of T
for b3 being Function of NAT,(bool the carrier of T) holds
( b3 = Fdfl A iff ( ( for n being Element of NAT
for B being Subset of T st B = b3 . n holds
b3 . (n + 1) = B ^d ) & b3 . 0 = A ) );
definition
let T be non empty RelStr ;
let A be Subset of T;
let n be Nat;
func Fdfl (A,n) -> Subset of T equals :: FINTOPO3:def 9
(Fdfl A) . n;
coherence
(Fdfl A) . n is Subset of T
proof
reconsider n9 = n as Element of NAT by ORDINAL1:def_12;
(Fdfl A) . n9 c= the carrier of T ;
hence (Fdfl A) . n is Subset of T ; ::_thesis: verum
end;
end;
:: deftheorem defines Fdfl FINTOPO3:def_9_:_
for T being non empty RelStr
for A being Subset of T
for n being Nat holds Fdfl (A,n) = (Fdfl A) . n;
theorem :: FINTOPO3:31
for T being non empty RelStr
for A being Subset of T
for n being Element of NAT holds Finf (A,(n + 1)) = (Finf (A,n)) ^f by Def6;
theorem :: FINTOPO3:32
for T being non empty RelStr
for A being Subset of T holds Finf (A,0) = A by Def6;
theorem Th33: :: FINTOPO3:33
for T being non empty RelStr
for A being Subset of T holds Finf (A,1) = A ^f
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T holds Finf (A,1) = A ^f
let A be Subset of T; ::_thesis: Finf (A,1) = A ^f
( (Finf A) . 0 = A & ( for B being Subset of T st B = (Finf A) . 0 holds
(Finf A) . (0 + 1) = B ^f ) ) by Def6;
hence Finf (A,1) = A ^f ; ::_thesis: verum
end;
theorem :: FINTOPO3:34
for T being non empty RelStr
for A being Subset of T holds Finf (A,2) = (A ^f) ^f
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T holds Finf (A,2) = (A ^f) ^f
let A be Subset of T; ::_thesis: Finf (A,2) = (A ^f) ^f
Finf (A,2) = Finf (A,(1 + 1))
.= (Finf (A,1)) ^f by Def6
.= (A ^f) ^f by Th33 ;
hence Finf (A,2) = (A ^f) ^f ; ::_thesis: verum
end;
theorem :: FINTOPO3:35
for T being non empty RelStr
for A, B being Subset of T
for n being Element of NAT holds Finf ((A \/ B),n) = (Finf (A,n)) \/ (Finf (B,n))
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T
for n being Element of NAT holds Finf ((A \/ B),n) = (Finf (A,n)) \/ (Finf (B,n))
let A, B be Subset of T; ::_thesis: for n being Element of NAT holds Finf ((A \/ B),n) = (Finf (A,n)) \/ (Finf (B,n))
defpred S1[ Element of NAT ] means (Finf (A \/ B)) . $1 = ((Finf A) . $1) \/ ((Finf B) . $1);
let n be Element of NAT ; ::_thesis: Finf ((A \/ B),n) = (Finf (A,n)) \/ (Finf (B,n))
A1: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume A2: S1[k] ; ::_thesis: S1[k + 1]
(Finf (A \/ B)) . (k + 1) = (Finf ((A \/ B),k)) ^f by Def6
.= ((Finf (A,k)) ^f) \/ ((Finf (B,k)) ^f) by A2, Th11
.= (Finf (A,(k + 1))) \/ ((Finf (B,k)) ^f) by Def6
.= ((Finf A) . (k + 1)) \/ ((Finf B) . (k + 1)) by Def6 ;
hence S1[k + 1] ; ::_thesis: verum
end;
(Finf (A \/ B)) . 0 = A \/ B by Def6
.= ((Finf A) . 0) \/ B by Def6
.= ((Finf A) . 0) \/ ((Finf B) . 0) by Def6 ;
then A3: S1[ 0 ] ;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A3, A1);
hence Finf ((A \/ B),n) = (Finf (A,n)) \/ (Finf (B,n)) ; ::_thesis: verum
end;
theorem :: FINTOPO3:36
for T being non empty RelStr
for A being Subset of T st T is filled holds
for n being Element of NAT holds A c= Finf (A,n)
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T st T is filled holds
for n being Element of NAT holds A c= Finf (A,n)
let A be Subset of T; ::_thesis: ( T is filled implies for n being Element of NAT holds A c= Finf (A,n) )
defpred S1[ Element of NAT ] means A c= (Finf A) . $1;
assume A1: T is filled ; ::_thesis: for n being Element of NAT holds A c= Finf (A,n)
A2: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume S1[k] ; ::_thesis: S1[k + 1]
then A ^f c= (Finf (A,k)) ^f by Th5;
then A3: A ^f c= Finf (A,(k + 1)) by Def6;
A c= A ^f by A1, Th1;
hence S1[k + 1] by A3, XBOOLE_1:1; ::_thesis: verum
end;
let n be Element of NAT ; ::_thesis: A c= Finf (A,n)
A4: S1[ 0 ] by Def6;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A4, A2);
hence A c= Finf (A,n) ; ::_thesis: verum
end;
theorem :: FINTOPO3:37
for T being non empty RelStr
for A being Subset of T st T is filled holds
for n being Element of NAT holds Finf (A,n) c= Finf (A,(n + 1))
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T st T is filled holds
for n being Element of NAT holds Finf (A,n) c= Finf (A,(n + 1))
let A be Subset of T; ::_thesis: ( T is filled implies for n being Element of NAT holds Finf (A,n) c= Finf (A,(n + 1)) )
assume A1: T is filled ; ::_thesis: for n being Element of NAT holds Finf (A,n) c= Finf (A,(n + 1))
let n be Element of NAT ; ::_thesis: Finf (A,n) c= Finf (A,(n + 1))
((Finf A) . n) ^f = Finf (A,(n + 1)) by Def6;
hence Finf (A,n) c= Finf (A,(n + 1)) by A1, Th1; ::_thesis: verum
end;
theorem :: FINTOPO3:38
for T being non empty RelStr
for A being Subset of T
for n being Element of NAT holds Fdfl (A,(n + 1)) = (Fdfl (A,n)) ^d by Def8;
theorem :: FINTOPO3:39
for T being non empty RelStr
for A being Subset of T holds Fdfl (A,0) = A by Def8;
theorem Th40: :: FINTOPO3:40
for T being non empty RelStr
for A being Subset of T holds Fdfl (A,1) = A ^d
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T holds Fdfl (A,1) = A ^d
let A be Subset of T; ::_thesis: Fdfl (A,1) = A ^d
( (Fdfl A) . 0 = A & ( for B being Subset of T st B = (Fdfl A) . 0 holds
(Fdfl A) . (0 + 1) = B ^d ) ) by Def8;
hence Fdfl (A,1) = A ^d ; ::_thesis: verum
end;
theorem :: FINTOPO3:41
for T being non empty RelStr
for A being Subset of T holds Fdfl (A,2) = (A ^d) ^d
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T holds Fdfl (A,2) = (A ^d) ^d
let A be Subset of T; ::_thesis: Fdfl (A,2) = (A ^d) ^d
Fdfl (A,2) = Fdfl (A,(1 + 1))
.= (Fdfl (A,1)) ^d by Def8 ;
hence Fdfl (A,2) = (A ^d) ^d by Th40; ::_thesis: verum
end;
theorem Th42: :: FINTOPO3:42
for T being non empty RelStr
for A, B being Subset of T
for n being Element of NAT holds Fdfl ((A /\ B),n) = (Fdfl (A,n)) /\ (Fdfl (B,n))
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T
for n being Element of NAT holds Fdfl ((A /\ B),n) = (Fdfl (A,n)) /\ (Fdfl (B,n))
let A, B be Subset of T; ::_thesis: for n being Element of NAT holds Fdfl ((A /\ B),n) = (Fdfl (A,n)) /\ (Fdfl (B,n))
defpred S1[ Element of NAT ] means (Fdfl (A /\ B)) . $1 = ((Fdfl A) . $1) /\ ((Fdfl B) . $1);
let n be Element of NAT ; ::_thesis: Fdfl ((A /\ B),n) = (Fdfl (A,n)) /\ (Fdfl (B,n))
A1: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume A2: S1[k] ; ::_thesis: S1[k + 1]
(Fdfl (A /\ B)) . (k + 1) = (Fdfl ((A /\ B),k)) ^d by Def8
.= ((Fdfl (A,k)) ^d) /\ ((Fdfl (B,k)) ^d) by A2, Th12
.= (Fdfl (A,(k + 1))) /\ ((Fdfl (B,k)) ^d) by Def8
.= ((Fdfl A) . (k + 1)) /\ ((Fdfl B) . (k + 1)) by Def8 ;
hence S1[k + 1] ; ::_thesis: verum
end;
(Fdfl (A /\ B)) . 0 = A /\ B by Def8
.= ((Fdfl A) . 0) /\ B by Def8
.= ((Fdfl A) . 0) /\ ((Fdfl B) . 0) by Def8 ;
then A3: S1[ 0 ] ;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A3, A1);
hence Fdfl ((A /\ B),n) = (Fdfl (A,n)) /\ (Fdfl (B,n)) ; ::_thesis: verum
end;
theorem :: FINTOPO3:43
for T being non empty RelStr
for A being Subset of T st T is filled holds
for n being Element of NAT holds Fdfl (A,n) c= A
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T st T is filled holds
for n being Element of NAT holds Fdfl (A,n) c= A
let A be Subset of T; ::_thesis: ( T is filled implies for n being Element of NAT holds Fdfl (A,n) c= A )
defpred S1[ Element of NAT ] means (Fdfl A) . $1 c= A;
assume A1: T is filled ; ::_thesis: for n being Element of NAT holds Fdfl (A,n) c= A
A2: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume S1[k] ; ::_thesis: S1[k + 1]
then (Fdfl (A,k)) ^d c= A ^d by Th6;
then A3: Fdfl (A,(k + 1)) c= A ^d by Def8;
A ^d c= A by A1, Th3;
hence S1[k + 1] by A3, XBOOLE_1:1; ::_thesis: verum
end;
let n be Element of NAT ; ::_thesis: Fdfl (A,n) c= A
A4: S1[ 0 ] by Def8;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A4, A2);
hence Fdfl (A,n) c= A ; ::_thesis: verum
end;
theorem :: FINTOPO3:44
for T being non empty RelStr
for A being Subset of T st T is filled holds
for n being Element of NAT holds Fdfl (A,(n + 1)) c= Fdfl (A,n)
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T st T is filled holds
for n being Element of NAT holds Fdfl (A,(n + 1)) c= Fdfl (A,n)
let A be Subset of T; ::_thesis: ( T is filled implies for n being Element of NAT holds Fdfl (A,(n + 1)) c= Fdfl (A,n) )
assume A1: T is filled ; ::_thesis: for n being Element of NAT holds Fdfl (A,(n + 1)) c= Fdfl (A,n)
let n be Element of NAT ; ::_thesis: Fdfl (A,(n + 1)) c= Fdfl (A,n)
((Fdfl A) . n) ^d = Fdfl (A,(n + 1)) by Def8;
hence Fdfl (A,(n + 1)) c= Fdfl (A,n) by A1, Th3; ::_thesis: verum
end;
theorem Th45: :: FINTOPO3:45
for T being non empty RelStr
for A being Subset of T
for n being Element of NAT holds Fdfl (A,n) = (Finf ((A `),n)) `
proof
let T be non empty RelStr ; ::_thesis: for A being Subset of T
for n being Element of NAT holds Fdfl (A,n) = (Finf ((A `),n)) `
let A be Subset of T; ::_thesis: for n being Element of NAT holds Fdfl (A,n) = (Finf ((A `),n)) `
defpred S1[ Element of NAT ] means (Fdfl A) . $1 = ((Finf (A `)) . $1) ` ;
let n be Element of NAT ; ::_thesis: Fdfl (A,n) = (Finf ((A `),n)) `
A1: for k being Element of NAT st S1[k] holds
S1[k + 1]
proof
let k be Element of NAT ; ::_thesis: ( S1[k] implies S1[k + 1] )
assume A2: S1[k] ; ::_thesis: S1[k + 1]
(Fdfl A) . (k + 1) = (Fdfl (A,k)) ^d by Def8;
then (Fdfl A) . (k + 1) = ((((Fdfl A) . k) `) ^f) ` by Th4
.= ((Finf (A `)) . (k + 1)) ` by A2, Def6 ;
hence S1[k + 1] ; ::_thesis: verum
end;
((Finf (A `)) . 0) ` = (A `) ` by Def6
.= A ;
then A3: S1[ 0 ] by Def8;
for n being Element of NAT holds S1[n] from NAT_1:sch_1(A3, A1);
hence Fdfl (A,n) = (Finf ((A `),n)) ` ; ::_thesis: verum
end;
theorem :: FINTOPO3:46
for T being non empty RelStr
for A, B being Subset of T
for n being Element of NAT holds (Fdfl (A,n)) /\ (Fdfl (B,n)) = (Finf (((A /\ B) `),n)) `
proof
let T be non empty RelStr ; ::_thesis: for A, B being Subset of T
for n being Element of NAT holds (Fdfl (A,n)) /\ (Fdfl (B,n)) = (Finf (((A /\ B) `),n)) `
let A, B be Subset of T; ::_thesis: for n being Element of NAT holds (Fdfl (A,n)) /\ (Fdfl (B,n)) = (Finf (((A /\ B) `),n)) `
let n be Element of NAT ; ::_thesis: (Fdfl (A,n)) /\ (Fdfl (B,n)) = (Finf (((A /\ B) `),n)) `
(Fdfl (A,n)) /\ (Fdfl (B,n)) = Fdfl ((A /\ B),n) by Th42
.= (Finf (((A /\ B) `),n)) ` by Th45 ;
hence (Fdfl (A,n)) /\ (Fdfl (B,n)) = (Finf (((A /\ B) `),n)) ` ; ::_thesis: verum
end;
definition
let T be non empty RelStr ;
let n be Nat;
let x be Element of T;
func U_FT (x,n) -> Subset of T equals :: FINTOPO3:def 10
Finf ((U_FT x),n);
coherence
Finf ((U_FT x),n) is Subset of T ;
end;
:: deftheorem defines U_FT FINTOPO3:def_10_:_
for T being non empty RelStr
for n being Nat
for x being Element of T holds U_FT (x,n) = Finf ((U_FT x),n);
theorem :: FINTOPO3:47
for T being non empty RelStr
for x being Element of T holds U_FT (x,0) = U_FT x by Def6;
theorem :: FINTOPO3:48
for T being non empty RelStr
for x being Element of T
for n being Element of NAT holds U_FT (x,(n + 1)) = (U_FT (x,n)) ^f by Def6;
definition
let S, T be non empty RelStr ;
predS,T are_mutually_symmetric means :: FINTOPO3:def 11
( the carrier of S = the carrier of T & ( for x being Element of S
for y being Element of T holds
( y in U_FT x iff x in U_FT y ) ) );
symmetry
for S, T being non empty RelStr st the carrier of S = the carrier of T & ( for x being Element of S
for y being Element of T holds
( y in U_FT x iff x in U_FT y ) ) holds
( the carrier of T = the carrier of S & ( for x being Element of T
for y being Element of S holds
( y in U_FT x iff x in U_FT y ) ) ) ;
end;
:: deftheorem defines are_mutually_symmetric FINTOPO3:def_11_:_
for S, T being non empty RelStr holds
( S,T are_mutually_symmetric iff ( the carrier of S = the carrier of T & ( for x being Element of S
for y being Element of T holds
( y in U_FT x iff x in U_FT y ) ) ) );