reserve Y for TopStruct;
reserve X for non empty TopSpace;
reserve X for almost_discrete non empty TopSpace;

theorem Th54:
  for A being Subset of X holds A is discrete iff for x being
  Point of X st x in Cl A ex a being Point of X st a in A & A /\ Cl {x} = {a}
proof
  let A be Subset of X;
  thus A is discrete implies for x being Point of X st x in Cl A ex a being
  Point of X st a in A & A /\ Cl {x} = {a}
  proof
    assume
A1: A is discrete;
    let x be Point of X;
A2: Cl A = union {Cl {a} where a is Point of X : a in A} by Th48;
    assume x in Cl A;
    then consider C being set such that
A3: x in C and
A4: C in {Cl {a} where a is Point of X : a in A} by A2,TARSKI:def 4;
    consider a being Point of X such that
A5: C = Cl {a} and
A6: a in A by A4;
    now
      take a;
      thus a in A by A6;
      Cl {x} = Cl {a} by A3,A5,Th49;
      hence A /\ Cl {x} = {a} by A1,A6,Th36;
    end;
    hence thesis;
  end;
  assume
A7: for x being Point of X st x in Cl A ex a being Point of X st a in A
  & A /\ Cl {x} = {a};
  for x being Point of X st x in A holds A /\ Cl {x} = {x}
  proof
    let x be Point of X;
    assume
A8: x in A;
    A c= Cl A by PRE_TOPC:18;
    then
A9: ex a being Point of X st a in A & A /\ Cl {x} = {a} by A7,A8;
A10: {x} c= Cl {x} by PRE_TOPC:18;
    {x} c= A by A8,ZFMISC_1:31;
    hence thesis by A9,A10,XBOOLE_1:19,ZFMISC_1:18;
  end;
  hence thesis by Th52;
end;
