reserve X for TopSpace;
reserve C for Subset of X;
reserve A, B for Subset of X;

theorem
  (for A being Subset of X, x being Point of X st A = {x} holds Cl A is
  open) implies X is almost_discrete
proof
  assume
A1: for D being Subset of X, x being Point of X st D = {x} holds Cl D is open;
  for A being Subset of X st A is closed holds A is open
  proof
    let A be Subset of X;
    set F = {B where B is Subset of X : ex C being Subset of X, a being Point
    of X st a in A & C = {a} & B = Cl C};
A2: union bool A = A by ZFMISC_1:81;
    assume
A3: A is closed;
A4: for C being Subset of X, a being Point of X st a in A & C = {a} holds
    Cl C c= A
    proof
      let C be Subset of X, a be Point of X;
      assume that
A5:   a in A and
A6:   C = {a};
      C c= A by A5,A6,ZFMISC_1:31;
      then Cl C c= Cl A by PRE_TOPC:19;
      hence thesis by A3,PRE_TOPC:22;
    end;
A7: F c= bool A
    proof
      let x be object;
      assume x in F;
      then consider P being Subset of X such that
A8:   x = P and
A9:   ex C being Subset of X, a being Point of X st a in A & C = {a}
      & P = Cl C;
      P c= A by A4,A9;
      hence thesis by A8;
    end;
    bool A c= bool the carrier of X by ZFMISC_1:67;
    then reconsider F as Subset-Family of X by A7,XBOOLE_1:1;
    now
      let x be set;
      assume
A10:  x in bool A;
      then reconsider P = x as Subset of X by XBOOLE_1:1;
      now
        let y be object;
        assume
A11:    y in P;
        then reconsider a = y as Point of X;
        now
          reconsider P0 = {a} as Subset of X by A11,ZFMISC_1:31;
          take B = Cl P0;
A12:      P0 c= B by PRE_TOPC:18;
          a in P0 by TARSKI:def 1;
          hence y in B & B in F by A10,A11,A12;
        end;
        hence y in union F by TARSKI:def 4;
      end;
      hence x c= union F;
    end;
    then
A13: union bool A c= union F;
    now
      let D be Subset of X;
      assume D in F;
      then ex S being Subset of X st S = D & ex C being Subset of X, a being
      Point of X st a in A & C = {a} & S = Cl C;
      hence D is open by A1;
    end;
    then
A14: F is open by TOPS_2:def 1;
    union F c= union bool A by A7,ZFMISC_1:77;
    then union F = A by A13,A2;
    hence thesis by A14,TOPS_2:19;
  end;
  hence thesis by Th22;
end;
