theorem Th30:
  len p1 = len p2 & len p1 = len B1 & len p1 > 0 & j in dom b1 & (
for i st i in dom p2 holds p2.i = (B1/.i|--b1).j) implies p1 "*" p2 = (Sum lmlt
  (p1,B1) |-- b1).j
proof
  assume that
A1: len p1 = len p2 and
A2: len p1 = len B1 and
A3: len p1>0 and
A4: j in dom b1 and
A5: for i st i in dom p2 holds p2.i = (B1/.i|--b1).j;
  deffunc m(Nat,Nat) = (B1/.$1|--b1)/.$2;
  consider M be Matrix of len p1,len b1,K such that
A6: for i,j st [i,j] in Indices M holds M*(i,j) = m(i,j) from MATRIX_0:
  sch 1;
A7: len M=len p1 by A3,MATRIX_0:23;
  then
A8: dom p1=dom M by FINSEQ_3:29;
A9: width M=len b1 by A3,MATRIX_0:23;
A10: dom b1 =Seg len b1 by FINSEQ_1:def 3;
A11: dom p1=Seg len p1 by FINSEQ_1:def 3;
A12: dom p1=dom p2 by A1,FINSEQ_3:29;
A13: now
    let i;
    assume 1<=i & i<=len p2;
    then
A14: i in dom p1 by A1,A11;
    then
A15: [i,j] in Indices M by A4,A9,A8,A10,ZFMISC_1:87;
    len ((B1/.i) |--b1)=len b1 by MATRLIN:def 7;
    then
A16: dom ((B1/.i) |--b1)=dom b1 by FINSEQ_3:29;
    thus Col(M,j).i = M*(i,j) by A8,A14,MATRIX_0:def 8
      .= ((B1/.i) |--b1)/.j by A6,A15
      .= ((B1/.i) |--b1).j by A4,A16,PARTFUN1:def 6
      .= p2.i by A5,A12,A14;
  end;
  deffunc mC(Nat) = Sum mlt(p1,Col(M,$1));
  consider MC being FinSequence of K such that
A17: len MC = len b1 & for j be Nat st j in dom MC holds MC.j = mC(j)
  from FINSEQ_2:sch 1;
A18: for j st j in dom MC holds MC/.j = mC(j)
  proof
    let j;
    assume
A19: j in dom MC;
    then MC.j = mC(j) by A17;
    hence thesis by A19,PARTFUN1:def 6;
  end;
A20: dom b1=dom MC by A17,FINSEQ_3:29;
A21: dom p1=dom B1 by A2,FINSEQ_3:29;
A22: now
    let i such that
A23: i in dom B1;
A24: len Line(M,i) = width M by MATRIX_0:def 7;
    len ((B1/.i) |--b1)=len b1 by MATRLIN:def 7;
    then
A25: dom Line(M,i)=dom ((B1/.i) |--b1) by A9,A24,FINSEQ_3:29;
A26: dom Line(M,i)=Seg width M by A24,FINSEQ_1:def 3;
A27: now
      let k such that
A28:  k in dom ((B1/.i) |--b1);
A29:  [i,k] in Indices M by A21,A8,A23,A25,A26,A28,ZFMISC_1:87;
      thus Line(M,i).k = M*(i,k) by A25,A26,A28,MATRIX_0:def 7
        .= ((B1/.i) |--b1)/.k by A6,A29
        .= ((B1/.i) |--b1).k by A28,PARTFUN1:def 6;
    end;
    thus B1/.i = Sum lmlt((B1/.i) |--b1,b1) by MATRLIN:35
      .= Sum lmlt(Line(M,i),b1) by A25,A27,FINSEQ_1:13;
  end;
A30: b1 <> {} by A4;
A31: len Col(M,j) = len M by CARD_1:def 7;
  len (Sum(lmlt(p1,B1)) |--b1)=len b1 by MATRLIN:def 7;
  then dom (Sum(lmlt(p1,B1)) |--b1)=dom b1 by FINSEQ_3:29;
  hence (Sum(lmlt(p1,B1)) |--b1).j = (Sum(lmlt(p1,B1)) |--b1)/.j by A4,
PARTFUN1:def 6
    .= (Sum(lmlt(MC,b1)) |--b1)/.j by A2,A3,A17,A18,A30,A22,MATRLIN:33
    .= MC/.j by A17,MATRLIN:36
    .= MC.j by A4,A20,PARTFUN1:def 6
    .= Sum(mlt(p1,Col(M,j))) by A4,A17,A20
    .= p1"*"p2 by A1,A7,A31,A13,FINSEQ_1:14;
end;
