
theorem Th27:
  for n being Ordinal, L being add-associative
right_complementable right_zeroed left-distributive non empty doubleLoopStr,
  p being Series of n,L, a being Element of L holds a * p = a |(n,L) *' p
proof
  let n be Ordinal, L be add-associative right_complementable
left-distributive right_zeroed non empty doubleLoopStr, p be Series of n,L, a
  be Element of L;
  for x being object st x in Bags n holds (a * p).x = (a |(n,L) *' p).x
  proof
    set O = a |(n,L), cL = the carrier of L;
    let x be object;
    assume x in Bags n;
    then reconsider b = x as bag of n;
A1: for b being Element of Bags n holds (a |(n,L) *' p).b = a * p.b
    proof
      let b be Element of Bags n;
      consider s being FinSequence of cL such that
A2:   (O*'p).b = Sum s and
A3:   len s = len decomp b and
A4:   for k being Element of NAT st k in dom s ex b1,b2 being bag of n
      st (decomp b)/.k = <*b1, b2*> & s/.k = (O.b1)*(p.b2) by POLYNOM1:def 10;
      s is non empty by A3;
      then consider
      s1 being Element of cL, t being FinSequence of cL such that
A5:   s1 = s.1 and
A6:   s = <*s1*>^t by FINSEQ_3:102;
A7:   Sum s = (Sum <*s1*>) + (Sum t) by A6,RLVECT_1:41;
A8:   now
        per cases;
        suppose
          t = <*>(cL);
          hence (Sum t) = 0.L by RLVECT_1:43;
        end;
        suppose
A9:      t <> <*>(cL);
          now
            let k be Nat;
A10:        len s = len t + len <*s1*> by A6,FINSEQ_1:22
              .= len t +1 by FINSEQ_1:39;
            assume
A11:        k in dom t;
            then
A12:        t/.k = t.k by PARTFUN1:def 6
              .= s.(k+1) by A6,A11,FINSEQ_3:103;
            1 <= k by A11,FINSEQ_3:25;
            then
A13:        1 < k+1 by NAT_1:13;
            k <= len t by A11,FINSEQ_3:25;
            then
A14:        k+1 <= len s by A10,XREAL_1:6;
            then
A15:        k+1 in dom decomp b by A3,A13,FINSEQ_3:25;
A16:        dom s = dom decomp b by A3,FINSEQ_3:29;
            then
A17:        s/.(k+1) = s.(k+1) by A15,PARTFUN1:def 6;
            per cases by A14,XXREAL_0:1;
            suppose
A18:          k+1 < len s;
              reconsider k1=k as Element of NAT by ORDINAL1:def 12;
              consider b1, b2 being bag of n such that
A19:          (decomp b)/.(k1+1) = <*b1, b2*> and
A20:          s/.(k1+1) = O.b1*p.b2 by A4,A16,A15;
              b1 <> EmptyBag n by A3,A13,A18,A19,PRE_POLY:72;
              hence t/.k = 0.L*p.b2 by A12,A17,A20,Th18
                .= 0.L;
            end;
            suppose
A21:          k+1 = len s;
A22:          now
               assume b = EmptyBag n;
               then decomp b = <* <*EmptyBag n, EmptyBag n*> *> by PRE_POLY:73;
               then len t +1 = 0+1 by A3,A10,FINSEQ_1:39;
               hence contradiction by A9;
              end;
              consider b1, b2 being bag of n such that
A23:          (decomp b)/.(k+1) = <*b1, b2*> and
A24:          s/.(k+1) = O.b1*p.b2 by A4,A16,A15;
              (decomp b)/.(len s) = <*b,EmptyBag n*> by A3,PRE_POLY:71;
              then b2 = EmptyBag n & b1 = b by A21,A23,FINSEQ_1:77;
              then s.(k+1) = 0.L*(p.EmptyBag n) by A17,A24,A22,Th18
                .= 0.L;
              hence t/.k = 0.L by A12;
            end;
          end;
          hence Sum t = 0.L by MATRLIN:11;
        end;
      end;
A25:  s is non empty by A3;
      then consider b1, b2 being bag of n such that
A26:  (decomp b)/.1 = <*b1, b2*> and
A27:  s/.1 = O.b1*p.b2 by A4,FINSEQ_5:6;
      1 in dom s by A25,FINSEQ_5:6;
      then
A28:  s/.1 = s.1 by PARTFUN1:def 6;
      (decomp b)/.1 = <*EmptyBag n, b*> by PRE_POLY:71;
      then
A29:  b2 = b & b1 = EmptyBag n by A26,FINSEQ_1:77;
      Sum <*s1*> = s1 by RLVECT_1:44
        .= a * p.b by A5,A27,A29,A28,Th18;
      hence thesis by A2,A7,A8,RLVECT_1:4;
    end;
    b is Element of Bags n by PRE_POLY:def 12;
    then (O*'p).b = a * p.b by A1
      .= (a * p).b by Def9;
    hence thesis;
  end;
  hence thesis;
end;
