
theorem Th2:
  for C being FormalContext for D being non empty Subset-Family of
  the carrier of C holds (ObjectDerivation(C)).(union D) = meet({(
  ObjectDerivation(C)).O where O is Subset of the carrier of C : O in D})
proof
  let C be FormalContext;
  let D be non empty Subset-Family of(the carrier of C);
  reconsider D9=D as non empty Subset-Family of the carrier of C;
  set OU = (ObjectDerivation(C)).(union D);
  set M = meet({(ObjectDerivation(C)).O where O is Subset of the carrier of C
  : O in D});
  per cases;
  suppose
A1: {(ObjectDerivation(C)).O where O is Subset of the carrier of C : O
    in D} <> {};
    thus OU c= M
    proof
      let x be object;
      assume x in OU;
      then x in {a9 where a9 is Attribute of C : for o being Object of C st o
      in union D9 holds o is-connected-with a9} by CONLAT_1:def 3;
      then
A2:   ex x9 being Attribute of C st x9 = x & for o being Object of C st o
      in union D holds o is-connected-with x9;
      then reconsider x as Attribute of C;
A3:   for O being Subset of the carrier of C st O in D for o being Object
      of C st o in O holds o is-connected-with x
      proof
        let O be Subset of the carrier of C;
        assume
A4:     O in D;
        let o be Object of C;
        assume o in O;
        then o in union D by A4,TARSKI:def 4;
        hence thesis by A2;
      end;
A5:   for O being Subset of the carrier of C st O in D holds x in (
      ObjectDerivation(C)).O
      proof
        let O be Subset of the carrier of C;
        assume O in D;
        then for o being Object of C st o in O holds o is-connected-with x by
A3;
        then x in {a where a is Attribute of C : for o being Object of C st o
        in O holds o is-connected-with a };
        hence thesis by CONLAT_1:def 3;
      end;
      for Y being set holds Y in {(ObjectDerivation(C)).O where O is
      Subset of the carrier of C : O in D} implies x in Y
      proof
        let Y be set;
        assume Y in {(ObjectDerivation(C)).O where O is Subset of the
        carrier of C : O in D};
        then
        ex O being Subset of the carrier of C st Y = ( ObjectDerivation(C)
        ).O & O in D;
        hence thesis by A5;
      end;
      hence thesis by A1,SETFAM_1:def 1;
    end;
    thus M c= OU
    proof

set d = the Element of {(ObjectDerivation(C)).O where O is Subset of the
carrier of C : O in D};
      let x be object;
      assume
A6:   x in M;
      then
A7:   x in d by A1,SETFAM_1:def 1;
      d in {(ObjectDerivation(C)).O where O is Subset of the carrier of C
      : O in D} by A1;
      then
      ex X being Subset of the carrier of C st d = ( ObjectDerivation(C)).
      X & X in D;
      then reconsider x as Attribute of C by A7;
A8:   for O being Subset of the carrier of C st O in D holds x in (
      ObjectDerivation(C)).O
      proof
        let O be Subset of the carrier of C;
        assume O in D;
        then (ObjectDerivation(C)).O in {(ObjectDerivation(C)).O9 where O9 is
        Subset of the carrier of C : O9 in D};
        hence thesis by A6,SETFAM_1:def 1;
      end;
A9:   for O being Subset of the carrier of C st O in D for o being Object
      of C st o in O holds o is-connected-with x
      proof
        let O be Subset of the carrier of C;
        assume O in D;
        then x in (ObjectDerivation(C)).O by A8;
        then x in {a where a is Attribute of C : for o being Object of C st o
        in O holds o is-connected-with a} by CONLAT_1:def 3;
        then
A10:    ex x9 being Attribute of C st x9 = x & for o being Object of C st
        o in O holds o is-connected-with x9;
        let o be Object of C;
        assume o in O;
        hence thesis by A10;
      end;
      for o being Object of C st o in union D holds o is-connected-with x
      proof
        let o be Object of C;
        assume o in union D;
        then ex Y being set st o in Y & Y in D by TARSKI:def 4;
        hence thesis by A9;
      end;
      then x in {a9 where a9 is Attribute of C : for o being Object of C st o
      in union D9 holds o is-connected-with a9};
      hence thesis by CONLAT_1:def 3;
    end;
  end;
  suppose
A11: {(ObjectDerivation(C)).O where O is Subset of the carrier of C :
    O in D} = {};
    D = {}
    proof
      set x = the Element of D;
      assume D <> {};
      (ObjectDerivation(C)).x in {(ObjectDerivation(C)).O where O is
      Subset of the carrier of C : O in D};
      hence thesis by A11;
    end;
    hence thesis;
  end;
end;
