Article TOPALG_3, MML version 4.99.1005

:: TOPALG_3:th 1
theorem
for b1, b2, b3, b4 being set
for b5 being Function-like quasi_total Relation of b1,b2
      st b3 in b1 & b4 in b2
   holds b5 +* (b3 .--> b4) is Function-like quasi_total Relation of b1,b2;

:: TOPALG_3:th 2
theorem
for b1 being Relation-like Function-like set
for b2, b3 being set
      st b1 | b2 is one-to-one & b3 in proj2 (b1 | b2)
   holds ((b1 | b2) " * b1) . b3 = b3;

:: TOPALG_3:th 4
theorem
for b1, b2, b3 being set
for b4 being Function-like quasi_total Relation of b1,{b2,b3} holds
   b1 = (b4 " {b2}) \/ (b4 " {b3});

:: TOPALG_3:th 5
theorem
for b1, b2 being non empty 1-sorted
for b3 being Element of the carrier of b1
for b4 being Element of the carrier of b2 holds
   (b1 --> b4) . b3 = b4;

:: TOPALG_3:th 6
theorem
for b1 being non empty TopStruct
for b2 being Element of the carrier of b1
for b3 being Element of bool the carrier of b1
      st b3 = {b2}
   holds Sspace b2 = b1 | b3;

:: TOPALG_3:th 7
theorem
for b1 being TopSpace-like TopStruct
for b2, b3 being Element of bool the carrier of b1
for b4, b5 being Element of bool the carrier of TopStruct(#the carrier of b1,the topology of b1#)
      st b2 = b4 & b3 = b5
   holds    b2,b3 are_separated
   iff
      b4,b5 are_separated;

:: TOPALG_3:th 8
theorem
for b1 being non empty TopSpace-like TopStruct holds
      b1 is connected
   iff
      for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of 1TopSp {0,1}
            st b2 is continuous(b1, 1TopSp {0,1})
         holds b2 is onto(not the carrier of b1, the carrier of 1TopSp {0,1});

:: TOPALG_3:condreg 1
registration
  cluster empty -> connected (TopStruct);
end;

:: TOPALG_3:th 9
theorem
for b1 being TopSpace-like TopStruct
      st TopStruct(#the carrier of b1,the topology of b1#) is connected
   holds b1 is connected;

:: TOPALG_3:funcreg 1
registration
  let a1 be TopSpace-like connected TopStruct;
  cluster TopStruct(#the carrier of a1,the topology of a1#) -> strict connected;
end;

:: TOPALG_3:th 10
theorem
for b1, b2 being non empty TopSpace-like TopStruct
      st b1,b2 are_homeomorphic & b1 is arcwise_connected
   holds b2 is arcwise_connected;

:: TOPALG_3:condreg 2
registration
  cluster non empty trivial TopSpace-like -> arcwise_connected (TopStruct);
end;

:: TOPALG_3:th 11
theorem
for b1 being SubSpace of TOP-REAL 2
      st the carrier of b1 is being_simple_closed_curve Element of bool the carrier of TOP-REAL 2
   holds b1 is arcwise_connected;

:: TOPALG_3:th 12
theorem
for b1 being TopSpace-like TopStruct holds
   ex b2 being Element of bool bool the carrier of b1 st
      b2 = {the carrier of b1} & b2 is_a_cover_of b1 & b2 is open(b1);

:: TOPALG_3:exreg 1
registration
  let a1 be TopSpace-like TopStruct;
  cluster non empty open closed mutually-disjoint Element of bool bool the carrier of a1;
end;

:: TOPALG_3:th 13
theorem
for b1 being TopSpace-like TopStruct
for b2 being open mutually-disjoint Element of bool bool the carrier of b1
for b3 being Element of bool the carrier of b1
for b4 being set
      st b3 is connected(b1) & b4 in b2 & b4 meets b3 & b2 is_a_cover_of b3
   holds b3 c= b4;

:: TOPALG_3:th 14
theorem
for b1, b2 being TopSpace-like TopStruct holds
TopStruct(#the carrier of [:b1,b2:],the topology of [:b1,b2:]#) = [:TopStruct(#the carrier of b1,the topology of b1#),TopStruct(#the carrier of b2,the topology of b2#):];

:: TOPALG_3:th 15
theorem
for b1, b2 being TopSpace-like TopStruct
for b3 being Element of bool the carrier of b1
for b4 being Element of bool the carrier of b2 holds
   Cl [:b3,b4:] = [:Cl b3,Cl b4:];

:: TOPALG_3:th 16
theorem
for b1, b2 being TopSpace-like TopStruct
for b3 being closed Element of bool the carrier of b1
for b4 being closed Element of bool the carrier of b2 holds
   [:b3,b4:] is closed([:b1,b2:]);

:: TOPALG_3:funcreg 2
registration
  let a1, a2 be TopSpace-like connected TopStruct;
  cluster [:a1,a2:] -> strict TopSpace-like connected;
end;

:: TOPALG_3:th 17
theorem
for b1, b2 being TopSpace-like TopStruct
for b3 being Element of bool the carrier of b1
for b4 being Element of bool the carrier of b2
      st b3 is connected(b1) & b4 is connected(b2)
   holds [:b3,b4:] is connected([:b1,b2:]);

:: TOPALG_3:th 18
theorem
for b1, b2 being TopSpace-like TopStruct
for b3 being non empty TopSpace-like TopStruct
for b4 being Element of bool the carrier of b1
for b5 being Function-like quasi_total Relation of the carrier of [:b1,b2:],the carrier of b3
for b6 being Function-like quasi_total Relation of the carrier of [:b1 | b4,b2:],the carrier of b3
      st b6 = b5 | [:b4,the carrier of b2:] & b5 is continuous([:b1,b2:], b3)
   holds b6 is continuous([:b1 | b4,b2:], b3);

:: TOPALG_3:th 19
theorem
for b1, b2 being TopSpace-like TopStruct
for b3 being non empty TopSpace-like TopStruct
for b4 being Element of bool the carrier of b2
for b5 being Function-like quasi_total Relation of the carrier of [:b1,b2:],the carrier of b3
for b6 being Function-like quasi_total Relation of the carrier of [:b1,b2 | b4:],the carrier of b3
      st b6 = b5 | [:the carrier of b1,b4:] & b5 is continuous([:b1,b2:], b3)
   holds b6 is continuous([:b1,b2 | b4:], b3);

:: TOPALG_3:th 20
theorem
for b1, b2, b3, b4, b5 being non empty TopSpace-like TopStruct
for b6 being Function-like quasi_total Relation of the carrier of [:b5,b3:],the carrier of b1
for b7 being Function-like quasi_total Relation of the carrier of [:b5,b4:],the carrier of b1
for b8, b9 being closed Element of bool the carrier of b2
      st b3 is SubSpace of b2 &
         b4 is SubSpace of b2 &
         b8 = [#] b3 &
         b9 = [#] b4 &
         ([#] b3) \/ [#] b4 = [#] b2 &
         b6 is continuous([:b5,b3:], b1) &
         b7 is continuous([:b5,b4:], b1) &
         (for b10 being set
               st b10 in ([#] [:b5,b3:]) /\ [#] [:b5,b4:]
            holds b6 . b10 = b7 . b10)
   holds ex b10 being Function-like quasi_total Relation of the carrier of [:b5,b2:],the carrier of b1 st
      b10 = b6 +* b7 & b10 is continuous([:b5,b2:], b1);

:: TOPALG_3:th 21
theorem
for b1, b2, b3, b4, b5 being non empty TopSpace-like TopStruct
for b6 being Function-like quasi_total Relation of the carrier of [:b3,b5:],the carrier of b1
for b7 being Function-like quasi_total Relation of the carrier of [:b4,b5:],the carrier of b1
for b8, b9 being closed Element of bool the carrier of b2
      st b3 is SubSpace of b2 &
         b4 is SubSpace of b2 &
         b8 = [#] b3 &
         b9 = [#] b4 &
         ([#] b3) \/ [#] b4 = [#] b2 &
         b6 is continuous([:b3,b5:], b1) &
         b7 is continuous([:b4,b5:], b1) &
         (for b10 being set
               st b10 in ([#] [:b3,b5:]) /\ [#] [:b4,b5:]
            holds b6 . b10 = b7 . b10)
   holds ex b10 being Function-like quasi_total Relation of the carrier of [:b2,b5:],the carrier of b1 st
      b10 = b6 +* b7 & b10 is continuous([:b2,b5:], b1);

:: TOPALG_3:condreg 3
registration
  let a1 be non empty TopSpace-like TopStruct;
  let a2 be Element of the carrier of a1;
  cluster -> continuous (Path of a2,a2);
end;

:: TOPALG_3:th 22
theorem
for b1 being non empty TopSpace-like TopStruct
for b2 being Element of the carrier of b1
for b3 being Element of the carrier of I[01]
for b4 being constant Path of b2,b2 holds
   b4 . b3 = b2;

:: TOPALG_3:th 23
theorem
for b1 being non empty TopSpace-like TopStruct
for b2 being Element of the carrier of b1
for b3 being Path of b2,b2 holds
   b3 . 0 = b2 & b3 . 1 = b2;

:: TOPALG_3:th 24
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total continuous Relation of the carrier of b1,the carrier of b2
for b4, b5 being Element of the carrier of b1
      st b4,b5 are_connected
   holds b3 . b4,b3 . b5 are_connected;

:: TOPALG_3:th 25
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total continuous Relation of the carrier of b1,the carrier of b2
for b4, b5 being Element of the carrier of b1
for b6 being Path of b4,b5
      st b4,b5 are_connected
   holds b3 * b6 is Path of b3 . b4,b3 . b5;

:: TOPALG_3:th 26
theorem
for b1 being non empty TopSpace-like arcwise_connected TopStruct
for b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total continuous Relation of the carrier of b1,the carrier of b2
for b4, b5 being Element of the carrier of b1
for b6 being Path of b4,b5 holds
   b3 * b6 is Path of b3 . b4,b3 . b5;

:: TOPALG_3:funcnot 1 => TOPALG_3:func 1
definition
  let a1 be non empty TopSpace-like arcwise_connected TopStruct;
  let a2 be non empty TopSpace-like TopStruct;
  let a3, a4 be Element of the carrier of a1;
  let a5 be Path of a3,a4;
  let a6 be Function-like quasi_total continuous Relation of the carrier of a1,the carrier of a2;
  redefine func a6 * a5 -> Path of a6 . a3,a6 . a4;
end;

:: TOPALG_3:th 27
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total continuous Relation of the carrier of b1,the carrier of b2
for b4 being Element of the carrier of b1
for b5 being Path of b4,b4 holds
   b3 * b5 is Path of b3 . b4,b3 . b4;

:: TOPALG_3:funcnot 2 => TOPALG_3:func 2
definition
  let a1, a2 be non empty TopSpace-like TopStruct;
  let a3 be Element of the carrier of a1;
  let a4 be Path of a3,a3;
  let a5 be Function-like quasi_total continuous Relation of the carrier of a1,the carrier of a2;
  redefine func a5 * a4 -> Path of a5 . a3,a5 . a3;
end;

:: TOPALG_3:th 28
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total continuous Relation of the carrier of b1,the carrier of b2
for b4, b5 being Element of the carrier of b1
for b6, b7 being Path of b4,b5
for b8, b9 being Path of b3 . b4,b3 . b5
      st b6,b7 are_homotopic & b8 = b3 * b6 & b9 = b3 * b7
   holds b8,b9 are_homotopic;

:: TOPALG_3:th 29
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total continuous Relation of the carrier of b1,the carrier of b2
for b4, b5 being Element of the carrier of b1
for b6, b7 being Path of b4,b5
for b8, b9 being Path of b3 . b4,b3 . b5
for b10 being Homotopy of b6,b7
      st b6,b7 are_homotopic & b8 = b3 * b6 & b9 = b3 * b7
   holds b3 * b10 is Homotopy of b8,b9;

:: TOPALG_3:th 30
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Function-like quasi_total continuous Relation of the carrier of b1,the carrier of b2
for b4, b5, b6 being Element of the carrier of b1
for b7 being Path of b4,b5
for b8 being Path of b5,b6
for b9 being Path of b3 . b4,b3 . b5
for b10 being Path of b3 . b5,b3 . b6
      st b4,b5 are_connected & b5,b6 are_connected & b9 = b3 * b7 & b10 = b3 * b8
   holds b9 + b10 = b3 * (b7 + b8);

:: TOPALG_3:funcnot 3 => TOPALG_3:func 3
definition
  let a1, a2 be non empty TopSpace-like TopStruct;
  let a3 be Element of the carrier of a1;
  let a4 be Function-like quasi_total Relation of the carrier of a1,the carrier of a2;
  assume a4 is continuous(a1, a2);
  func FundGrIso(A4,A3) -> Function-like quasi_total Relation of the carrier of FundamentalGroup(a1,a3),the carrier of FundamentalGroup(a2,a4 . a3) means
    for b1 being Element of the carrier of FundamentalGroup(a1,a3) holds
       ex b2 being Path of a3,a3 st
          b1 = Class(EqRel(a1,a3),b2) &
           it . b1 = Class(EqRel(a2,a4 . a3),a4 * b2);
end;

:: TOPALG_3:def 1
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Element of the carrier of b1
for b4 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
   st b4 is continuous(b1, b2)
for b5 being Function-like quasi_total Relation of the carrier of FundamentalGroup(b1,b3),the carrier of FundamentalGroup(b2,b4 . b3) holds
      b5 = FundGrIso(b4,b3)
   iff
      for b6 being Element of the carrier of FundamentalGroup(b1,b3) holds
         ex b7 being Path of b3,b3 st
            b6 = Class(EqRel(b1,b3),b7) &
             b5 . b6 = Class(EqRel(b2,b4 . b3),b4 * b7);

:: TOPALG_3:th 32
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Element of the carrier of b1
for b4 being Function-like quasi_total continuous Relation of the carrier of b1,the carrier of b2
for b5 being Path of b3,b3 holds
   (FundGrIso(b4,b3)) . Class(EqRel(b1,b3),b5) = Class(EqRel(b2,b4 . b3),b4 * b5);

:: TOPALG_3:funcnot 4 => TOPALG_3:func 4
definition
  let a1, a2 be non empty TopSpace-like TopStruct;
  let a3 be Element of the carrier of a1;
  let a4 be Function-like quasi_total continuous Relation of the carrier of a1,the carrier of a2;
  redefine func FundGrIso(a4,a3) -> Function-like quasi_total multiplicative Relation of the carrier of FundamentalGroup(a1,a3),the carrier of FundamentalGroup(a2,a4 . a3);
end;

:: TOPALG_3:th 33
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Element of the carrier of b1
for b4 being Function-like quasi_total continuous Relation of the carrier of b1,the carrier of b2
      st b4 is being_homeomorphism(b1, b2)
   holds FundGrIso(b4,b3) is being_isomorphism(FundamentalGroup(b1,b3), FundamentalGroup(b2,b4 . b3));

:: TOPALG_3:th 34
theorem
for b1, b2 being non empty TopSpace-like TopStruct
for b3 being Element of the carrier of b1
for b4 being Element of the carrier of b2
for b5 being Function-like quasi_total continuous Relation of the carrier of b1,the carrier of b2
for b6 being Path of b4,b5 . b3
for b7 being Function-like quasi_total multiplicative Relation of the carrier of FundamentalGroup(b1,b3),the carrier of FundamentalGroup(b2,b4)
      st b5 is being_homeomorphism(b1, b2) & b5 . b3,b4 are_connected & b7 = (pi_1-iso b6) * FundGrIso(b5,b3)
   holds b7 is being_isomorphism(FundamentalGroup(b1,b3), FundamentalGroup(b2,b4));

:: TOPALG_3:th 35
theorem
for b1 being non empty TopSpace-like TopStruct
for b2 being non empty TopSpace-like arcwise_connected TopStruct
for b3 being Element of the carrier of b1
for b4 being Element of the carrier of b2
      st b1,b2 are_homeomorphic
   holds FundamentalGroup(b1,b3),FundamentalGroup(b2,b4) are_isomorphic;