reserve FT for non empty RelStr;
reserve A for Subset of FT;
reserve T for non empty TopStruct;
reserve FMT for non empty FMT_Space_Str;
reserve x, y for Element of FMT;
reserve A, B, W, V for Subset of FMT;

theorem
  for FMT being non empty FMT_Space_Str holds (for x being Element of
FMT, V1,V2 being Subset of FMT st ((V1 in U_FMT x) & (V2 in U_FMT x)) holds ex
  W being Subset of FMT st ((W in U_FMT x) & (W c= (V1 /\ V2)))) iff for A,B
  being Subset of FMT holds (A \/ B)^Fob = ((A^Fob) \/ (B^Fob))
proof
  let FMT be non empty FMT_Space_Str;
A1: (for x being Element of FMT, V1,V2 being Subset of FMT st ((V1 in U_FMT
x) & (V2 in U_FMT x)) holds ex W being Subset of FMT st ((W in U_FMT x) & (W c=
(V1 /\ V2)))) implies for A,B being Subset of FMT holds (A \/ B)^Fob = ((A^Fob)
  \/ (B^Fob))
  proof
    assume
A2: for x being Element of FMT, V1,V2 being Subset of FMT st V1 in
U_FMT x & V2 in U_FMT x holds ex W being Subset of FMT st W in U_FMT x & W c= (
    V1 /\ V2);
    let A,B be Subset of FMT;
    for x be Element of FMT holds x in ((A \/ B)^Fob) iff x in ((A^Fob) \/
    (B^Fob))
    proof
      let x be Element of FMT;
A3:   x in ((A \/ B)^Fob) implies x in ((A^Fob) \/ (B^Fob))
      proof
        assume
A4:     x in ((A \/ B)^Fob);
A5:     for W1 being Subset of FMT st W1 in U_FMT x holds W1 meets A or W1
        meets B
        proof
          let W1 being Subset of FMT;
          assume W1 in U_FMT x;
          then W1 meets (A \/ B) by A4,Th20;
          then W1 /\ (A \/ B) <> {};
          then (W1 /\ A \/ W1 /\ B) <> {} by XBOOLE_1:23;
          then W1 /\ A <> {} or W1 /\ B <> {};
          hence thesis;
        end;
        for V1,V2 being Subset of FMT st V1 in U_FMT x & V2 in U_FMT x
        holds (V1 meets A or V2 meets B)
        proof
          let V1,V2 be Subset of FMT;
          assume V1 in U_FMT x & V2 in U_FMT x;
          then consider W being Subset of FMT such that
A6:       W in U_FMT x and
A7:       W c= (V1 /\ V2) by A2;
          (V1 /\ V2) c= V1 by XBOOLE_1:17;
          then W c= V1 by A7;
          then
A8:       W /\ A c= V1 /\ A by XBOOLE_1:26;
          (V1 /\ V2)c= V2 by XBOOLE_1:17;
          then W c= V2 by A7;
          then
A9:       W /\ B c= V2 /\ B by XBOOLE_1:26;
          W meets A or W meets B by A5,A6;
          then W /\ A<> {} or W /\ B<> {};
          then
          ex z1,z2 being Element of FMT st ( z1 in W /\ A or z2 in W /\ B)
          by SUBSET_1:4;
          hence thesis by A8,A9;
        end;
        then
        (for V1 being Subset of FMT st V1 in U_FMT x holds V1 meets A) or
        for V2 being Subset of FMT st V2 in U_FMT x holds V2 meets B;
        then x in (A^Fob) or x in (B^Fob);
        hence thesis by XBOOLE_0:def 3;
      end;
      x in ((A^Fob) \/ (B^Fob)) implies x in ((A \/ B)^Fob)
      proof
        assume
A10:    x in ((A^Fob) \/ (B^Fob));
        ((A^Fob) \/ (B^Fob)) c= (A \/ B)^Fob by Th26;
        hence thesis by A10;
      end;
      hence thesis by A3;
    end;
    hence thesis by SUBSET_1:3;
  end;
  (ex x being Element of FMT, V1,V2 being Subset of FMT st (V1 in U_FMT x
  ) & (V2 in U_FMT x) & (for W being Subset of FMT st W in U_FMT x holds (not(W
  c= V1 /\ V2)) ) ) implies ex A,B being Subset of FMT st ((A \/ B)^Fob) <> ((A
  ^Fob) \/ (B^Fob))
  proof
    given x0 being Element of FMT, V1,V2 being Subset of FMT such that
A11: V1 in U_FMT x0 and
A12: V2 in U_FMT x0 and
A13: for W being Subset of FMT st W in U_FMT x0 holds not W c= V1 /\ V2;
A14: not x0 in ((V2)`)^Fob
    proof
A15:  V2 misses (V2)` by XBOOLE_1:79;
      assume x0 in ((V2)`)^Fob;
      hence contradiction by A12,A15,Th20;
    end;
    take V1`,V2`;
    for W being Subset of FMT st W in U_FMT x0 holds W meets ((V1)` \/ ( V2)`)
    proof
      let W being Subset of FMT;
      assume W in U_FMT x0;
      then
A16:  not W c= V1 /\ V2 by A13;
      W /\ (V1 /\ V2)` <> {}
      proof
        assume W /\ (V1 /\ V2)` = {};
        then W \ (V1 /\ V2) = {} by SUBSET_1:13;
        hence contradiction by A16,XBOOLE_1:37;
      end;
      hence W /\ ((V1)` \/ (V2)`) <> {} by XBOOLE_1:54;
    end;
    then
A17: x0 in ((V1)` \/ (V2)`)^Fob;
    not x0 in ((V1)`)^Fob
    proof
A18:  V1 misses (V1)` by XBOOLE_1:79;
      assume x0 in ((V1)`)^Fob;
      hence contradiction by A11,A18,Th20;
    end;
    hence thesis by A17,A14,XBOOLE_0:def 3;
  end;
  hence thesis by A1;
end;
