reserve a,a1,a2,v,v1,v2,x for object;
reserve V,A for set;
reserve m,n for Nat;
reserve S,S1,S2 for FinSequence;
reserve D,D1,D2 for NonatomicND of V,A;

theorem Th54:
  {v,v1,v2} c= V & {a,a1} c= A implies
  ND_ex_4(v,v1,v2,a,a1) in NDSS(V,A\/NDSS(V,A))
  proof
    assume that
A1: {v,v1,v2} c= V and
A2: {a,a1} c= A;
    v in {v,v1,v2} by ENUMSET1:def 1;
    then
A3: v in V by A1;
    v1 in {v,v1,v2} by ENUMSET1:def 1;
    then
A4: v1 in V by A1;
A5: v2 in {v,v1,v2} by ENUMSET1:def 1;
A6: a in A by A2,ZFMISC_1:32;
A7: a1 in A by A2,ZFMISC_1:32;
    set f = v2.-->a1;
    set g = ND_ex_4(v,v1,v2,a,a1);
    dom g = {v,v1} by FUNCT_4:62;
    then
A8: dom g c= V by A3,A4,TARSKI:def 2;
A9: rng g c= {a,f} by FUNCT_4:62;
    rng g c= A\/NDSS(V,A)
    proof
      let x;
      assume x in rng g;
      then per cases by A9,TARSKI:def 2;
      suppose x = a;
        hence thesis by A6,XBOOLE_0:def 3;
      end;
      suppose
A10:    x = f;
A11:    dom f c= V by A1,A5,ZFMISC_1:31;
        rng f = {a1} by FUNCOP_1:8;
        then rng f c= A by A7,ZFMISC_1:31;
        then f is PartFunc of V,A by A11,RELSET_1:4;
        then f in NDSS(V,A);
        hence thesis by A10,XBOOLE_0:def 3;
      end;
    end;
    then g is PartFunc of V,A\/NDSS(V,A) by A8,RELSET_1:4;
    hence g in NDSS(V,A\/NDSS(V,A));
  end;
