reserve X1,X2,X3,X4 for set;
reserve n for non zero Nat;
reserve X for non-empty n-element FinSequence;

theorem Thm26:
  for x,y being set holds product <*x*> \ product <*y*> = product <*(x\y)*>
  proof
    let x,y be set;
    per cases;
    suppose
A1:   not x is empty & not y is empty & not x\y is empty;
      then
A2:   product <*x*> = the set of all <*t*> where t is Element of x &
      product <*y*> = the set of all <*t*> where t is Element of y &
      product <*(x\y)*> = the set of all <*t*> where t is Element of x\y
      by Thm23;
      set Px = the set of all <*t*> where t is Element of x;
      set Py = the set of all <*t*> where t is Element of y;
      set Pxy = the set of all <*t*> where t is Element of x\y;
      now
        hereby
          let u be object;
          assume u in Px\Py;
          then
A3:       u in Px & not u in Py by XBOOLE_0:def 5;
          then consider ux be Element of x such that
A4:       u=<*ux*>;
          not ux in y by A3,A4;
          then ux in x\y by A1,XBOOLE_0:def 5;
          hence u in Pxy by A4;
        end;
        let u be object;
        assume u in Pxy;
        then consider uxy be Element of x\y such that
A5:     u = <*uxy*>;
A6:     uxy is Element of x & not uxy is Element of y by A1,XBOOLE_0:def 5;
        now
          assume u in Py;
          then consider a be Element of y such that
A7:       <*uxy*> = <*a*> by A5;
          thus contradiction by A7,A6,FINSEQ_1:76;
        end;
        then u in Px & not u in Py by A5,A6;
        hence u in Px\Py by XBOOLE_0:def 5;
      end;
      then Px\Py c= Pxy & Pxy c= Px\Py;
      hence thesis by A2;
    end;
    suppose
A8:   not x is empty & not y is empty & x\y is empty;
      then
A9:   product <*x*> = the set of all <*t*> where t is Element of x &
      product <*y*> = the set of all <*t*> where t is Element of y by Thm23;
      set Px = the set of all <*t*> where t is Element of x;
      set Py = the set of all <*t*> where t is Element of y;
      Px \ Py c= {}
      proof
        let t be object;
        assume t in Px \ Py; then
A10:    t in Px & not t in Py by XBOOLE_0:def 5;
        then consider t1 be Element of x such that
A11:    t=<*t1*>;
        not t1 in y by A10,A11;
        hence thesis by A8,XBOOLE_0:def 5;
      end;
      hence thesis by A8,A9;
    end;
    suppose
      x is empty or y is empty;
      hence thesis by Thm22;
    end;
  end;
