reserve x,y for object,
        D,D1,D2 for non empty set,
        i,j,k,m,n for Nat,
        f,g for FinSequence of D*,
        f1 for FinSequence of D1*,
        f2 for FinSequence of D2*;
reserve f for complex-valued Function,
        g,h for complex-valued FinSequence;

theorem
  for f be FinSequence of COMPLEX* holds
    Sum (COMPLEX-concatenation "**" f) = Sum Sum f
proof
  set CC = COMPLEX-concatenation;
  defpred P[Nat] means
  for f be FinSequence of COMPLEX* st len f=$1 holds
    Sum (CC "**" f) = Sum Sum f;
  A1:CC is having_a_unity & the_unity_wrt CC={} by MONOID_0:67;
  A2:P[0]
  proof
    let f be FinSequence of COMPLEX*;
    assume A3:len f=0;
    then Sum f={};
    hence thesis by A1,A3,FINSOP_1:def 1;
  end;
  A4:P[i] implies P[i+1]
  proof
    assume A5:P[i];
    set i1=i+1;
    let f be FinSequence of COMPLEX*;
    assume A6:len f=i1;
    then consider q be FinSequence of COMPLEX*, d be Element of COMPLEX*
      such that
    A7:f=q^<*d*> by FINSEQ_2:19;
    len q+1 = len f by A7,FINSEQ_2:16;
    then A8:Sum Sum q = Sum (CC"**"q) by A6,A5;
    Sum f = (Sum q)^(Sum <*d*>) by A7,Th46
         .= (Sum q)^(<*Sum d*>) by Th45;
    then A9: Sum Sum f = (Sum Sum q) + Sum d by RVSUM_2:31;
    CC "**"f = (CC"**"q)^(CC"**"<*d*>) by Th3,A7
            .= (CC"**"q)^ d by FINSOP_1:11;
    hence thesis by RVSUM_2:32,A8,A9;
  end;
  P[i] from NAT_1:sch 2(A2,A4);
  hence thesis;
end;
