
theorem
  for X1,X2 be set, S1 be non empty Subset-Family of X1,
      S2 be non empty Subset-Family of X2,
  S be non empty Subset-Family of [:X1,X2:], H be FinSequence of S
    st S = the set of all [:A,B:] where A is Element of S1, B is Element of S2
  ex F be FinSequence of S1, G be FinSequence of S2 st
   len H = len F & len H = len G &
   for k be Nat st k in dom H & H.k <> {} holds H.k = [:F.k,G.k:]
proof
   let X1,X2 be set, S1 be non empty Subset-Family of X1,
      S2 be non empty Subset-Family of X2,
      S be non empty Subset-Family of [:X1,X2:], H be FinSequence of S;
   assume AS: S = the set of all [:A,B:]
                    where A is Element of S1, B is Element of S2;
A1:for k be Nat st k in dom H
    ex A be Element of S1, B be Element of S2 st H.k = [:A,B:]
   proof
    let k be Nat;
    assume A2: k in dom H;
    H/.k in S; then
    H.k in S by A2,PARTFUN1:def 6;
    hence thesis by AS;
   end;
   defpred P1[Nat,set] means
    ex B be Element of S2 st H.$1 = [:$2,B:];
   Seg len H = dom H by FINSEQ_1:def 3; then
A3:for k be Nat st k in Seg len H ex A be Element of S1 st P1[k,A] by A1;
   consider F be FinSequence of S1 such that
A4: dom F = Seg len H
  & for k be Nat st k in Seg len H holds P1[k,F.k] from FINSEQ_1:sch 5(A3);
   defpred P2[Nat,set] means
    ex A be Element of S1 st H.$1 = [:A,$2:];
A5:for k be Nat st k in Seg len H ex B be Element of S2 st P2[k,B]
   proof
    let k be Nat;
    assume k in Seg len H; then
    k in dom H by FINSEQ_1:def 3; then
    ex A be Element of S1, B be Element of S2 st H.k = [:A,B:] by A1;
    hence thesis;
   end;
   consider G be FinSequence of S2 such that
A6: dom G = Seg len H
  & for k be Nat st k in Seg len H holds P2[k,G.k] from FINSEQ_1:sch 5(A5);
   take F,G;
   thus len H = len F & len H = len G by A4,A6,FINSEQ_1:def 3;
   hereby let k be Nat;
    assume A8: k in dom H & H.k <> {}; then
A9: k in Seg len H by FINSEQ_1:def 3; then
    consider B be Element of S2 such that
A10:  H.k = [:F.k,B:] by A4;
    consider A be Element of S1 such that
A11: H.k = [:A,G.k:] by A9,A6;
    F.k <> {} & B <> {} by A8,A10;
    hence H.k = [:F.k,G.k:] by A10,A11,ZFMISC_1:110;
   end;
end;
