reserve a,b,m,x,n,l,xi,xj for Nat,
  t,z for Integer;

theorem Th10:
  for R1,R2 be complex-valued FinSequence st
  R1,R2 are_fiberwise_equipotent holds Product R1 = Product R2
proof
  let R1,R2 be complex-valued FinSequence;
  rng R1 c= COMPLEX & rng R2 c= COMPLEX by VALUED_0:def 1;
  then
A0: R1 is FinSequence of COMPLEX & R2 is FinSequence of COMPLEX
    by FINSEQ_1:def 4;
  defpred P[Nat] means for f,g be FinSequence of COMPLEX st f,g
  are_fiberwise_equipotent & len f = $1 holds Product f = Product g;
A1: for n be Nat st P[n] holds P[n+1]
  proof
    let n be Nat;
    assume
A2: P[n];
    let f,g be FinSequence of COMPLEX;
    assume that
A3: f,g are_fiberwise_equipotent and
A4: len f = n+1;
    set a = f.(n+1);
A5: rng f = rng g by A3,CLASSES1:75;
    set fn = f|n;
A6: f = fn ^ <*a*> by A4,RFINSEQ:7;
    0+1<=n+1 by NAT_1:13;
    then n+1 in dom f by A4,FINSEQ_3:25;
    then a in rng g by A5,FUNCT_1:def 3;
    then consider m being Nat such that
A7: m in dom g and
A8: g.m = a by FINSEQ_2:10;
    reconsider m as Element of NAT by ORDINAL1:def 12;
    set gg = g/^m, gm = g|m;
    m<=len g by A7,FINSEQ_3:25;
    then
A9: len gm = m by FINSEQ_1:59;
A10: 1<=m by A7,FINSEQ_3:25;
    then max(0,m-1) = m-1 by FINSEQ_2:4;
    then reconsider m1 = m-1 as Element of NAT by FINSEQ_2:5;
A11: m = m1+1;
    then m1<=m by NAT_1:11;
    then
A12: Seg m1 c= Seg m by FINSEQ_1:5;
    m in Seg m by A10,FINSEQ_1:1;
    then gm.m = a by A7,A8,RFINSEQ:6;
    then
A13: gm = (gm|m1)^<*a*> by A9,A11,RFINSEQ:7;
A14: g = (g|m)^(g/^m) by RFINSEQ:8;
A15: gm|m1 = gm|(Seg m1) by FINSEQ_1:def 16
      .= (g|(Seg m))|(Seg m1) by FINSEQ_1:def 16
      .= g|((Seg m)/\(Seg m1)) by RELAT_1:71
      .= g|(Seg m1) by A12,XBOOLE_1:28
      .= g|m1 by FINSEQ_1:def 16;
    now
      let x be object;
      card Coim(f,x) = card Coim(g,x) by A3,CLASSES1:def 10;
      then card(fn"{x})+card(<*a*>"{x}) = card(((g|m1)^<*a*>^(g/^m))"{x}) by
A14,A13,A15,A6,FINSEQ_3:57
        .= card(((g|m1)^<*a*>)"{x})+card((g/^m)"{x}) by FINSEQ_3:57
        .= card((g|m1)"{x})+card(<*a*>"{x})+card((g/^m)"{x}) by FINSEQ_3:57
        .= card((g|m1)"{x})+card((g/^m)"{x})+card(<*a*>"{x})
        .= card(((g|m1)^(g/^m))"{x})+card(<*a*>"{x}) by FINSEQ_3:57;
      hence card Coim(fn,x) = card Coim((g|m1)^(g/^m),x);
    end;
    then
A16: fn, (g|m1)^(g/^m) are_fiberwise_equipotent by CLASSES1:def 10;
    len fn = n by A4,FINSEQ_1:59,NAT_1:11;
    then Product fn = Product((g|m1)^gg) by A2,A16;
    hence Product f = Product(g|m1^gg)*Product <*a*> by A6,RVSUM_1:97
      .= Product (g|m1)*(Product gg)*(Product <*a*>) by RVSUM_1:97
      .= Product(g|m1)*Product <*a*>*Product gg
      .= Product gm*Product gg by A13,A15,RVSUM_1:97
      .= Product g by A14,RVSUM_1:97;
  end;
  assume
A17: R1,R2 are_fiberwise_equipotent;
A18: len R1 = len R1;
A19: P[0]
  proof
    let f,g be FinSequence of COMPLEX;
    assume f,g are_fiberwise_equipotent & len f = 0;
    then
A20: len g = 0 & f = <*>NAT by RFINSEQ:3;
    then g = <*>NAT;
    hence thesis by A20;
  end;
  for n holds P[n] from NAT_1:sch 2(A19,A1);
  hence thesis by A0,A17,A18;
end;
