reserve X for TopStruct,
  A for Subset of X;
reserve X for TopSpace,
  A,B for Subset of X;
reserve X for non empty TopSpace,
  A for Subset of X;
reserve X for TopSpace,
  A,B for Subset of X;
reserve X for non empty TopSpace,
  A, B for Subset of X;
reserve D for Subset of X;

theorem
  D is nowhere_dense implies ex C,B being Subset of X st C is closed & C
  is boundary & B is everywhere_dense & C /\ B = D & C \/ B = the carrier of X
proof
  assume D is nowhere_dense;
  then consider C being Subset of X such that
A1: D c= C and
A2: C is closed & C is boundary by Th27;
  take C;
  take B = D \/ C`;
  thus C is closed & C is boundary by A2;
  C` is everywhere_dense by A2,Th40;
  hence B is everywhere_dense by Th38,XBOOLE_1:7;
A3: C misses C` by XBOOLE_1:79;
  thus C /\ B = (C /\ D) \/ (C /\ C`) by XBOOLE_1:23
    .= (C /\ D) \/ {}X by A3
    .= D by A1,XBOOLE_1:28;
  thus C \/ B = D \/ (C \/ C`) by XBOOLE_1:4
    .= D \/ [#]X by PRE_TOPC:2
    .= the carrier of X by XBOOLE_1:12;
end;
