reserve D for non empty set,
  i,j,k,l for Nat,
  n for Nat,
  x for set,
  a,b,c,r,r1,r2 for Real,
  p,q for FinSequence of REAL,
  MR,MR1 for Matrix of REAL;

theorem Th64:
  for p being ProbFinS FinSequence of REAL for M being non
  empty-yielding Conditional_Probability Matrix of REAL st len p = len M holds
  for M1 being Matrix of REAL st M1=(Vec2DiagMx p) * M holds SumAll
Infor_FinSeq_of M1 = Sum Infor_FinSeq_of p + Sum mlt(p,LineSum(Infor_FinSeq_of
  M))
proof
  let p be ProbFinS FinSequence of REAL;
  let M be non empty-yielding Conditional_Probability Matrix of REAL;
  assume
A1: len p = len M;
  let M1 be Matrix of REAL such that
A2: M1=(Vec2DiagMx p)*M;
  reconsider M1 as Joint_Probability Matrix of REAL by A1,A2,Th28;
A3: len M1 = len p by A1,A2,Th26;
  then
A4: dom M1 = dom p by FINSEQ_3:29;
  set M2= Infor_FinSeq_of M1;
  set L = LineSum M2;
A5: len L = len M2 by MATRPROB:def 1;
  then
A6: dom L = dom M2 by FINSEQ_3:29;
A7: len M2 = len M1 by Def8;
  then
A8: dom M2 = dom M1 by FINSEQ_3:29;
A9: dom p = dom M by A1,FINSEQ_3:29;
A10: for k st k in dom L holds L.k = p.k*log(2,p.k)+p.k*Sum Infor_FinSeq_of
  Line(M,k)
  proof
    let k such that
A11: k in dom L;
    reconsider pp=Line(M1,k) as nonnegative FinSequence of REAL by A6,A8,A11
,Th19;
A12: p.k>=0 by A6,A8,A4,A11,Def1;
    reconsider q=Line(M,k) as non empty ProbFinS FinSequence of REAL by A6,A8
,A4,A9,A11,MATRPROB:60;
A13: pp = p.k * q by A1,A2,A6,A8,A11,Th27;
    dom (p.k*log(2,p.k)*q) = dom q by VALUED_1:def 5;
    then
A14: len (p.k*log(2,p.k)*q) = len q by FINSEQ_3:29;
    len FinSeq_log(2,q) = len q by Def6;
    then
A15: len mlt(q,FinSeq_log(2,q)) = len q by MATRPROB:30;
    dom (p.k*mlt(q,FinSeq_log(2,q))) = dom mlt(q,FinSeq_log(2,q)) by
VALUED_1:def 5;
    then
A16: len (p.k*mlt(q,FinSeq_log(2,q))) = len mlt(q,FinSeq_log(2,q)) by
FINSEQ_3:29;
    L.k = Sum(M2.k) by A11,MATRPROB:def 1
      .= Sum(Line(M2,k)) by A6,A11,MATRIX_0:60
      .= Sum(Infor_FinSeq_of pp) by A6,A8,A11,Th53
      .= Sum((p.k*log(2,p.k)*q)+ (p.k*mlt(q,FinSeq_log(2,q)))) by A13,A12,Th51
      .= Sum(p.k*log(2,p.k)*q)+Sum(p.k*mlt(q,FinSeq_log(2,q))) by A15,A14,A16,
INTEGRA5:2
      .= p.k*log(2,p.k)*Sum q+Sum(p.k*mlt(q,FinSeq_log(2,q))) by RVSUM_1:87
      .= p.k*log(2,p.k)*1+Sum(p.k*mlt(q,FinSeq_log(2,q))) by MATRPROB:def 5
      .= p.k*log(2,p.k)+p.k*Sum Infor_FinSeq_of q by RVSUM_1:87;
    hence thesis;
  end;
  set M3 = Infor_FinSeq_of M;
  set L2 = LineSum M3;
  set p2 = mlt(p,L2);
  set p1 = Infor_FinSeq_of p;
A17: len p1 = len p by Th47;
  then
A18: dom p1 = dom M by A1,FINSEQ_3:29;
A19: len M3 = len M by Def8;
  then
A20: len L2 = len p by A1,MATRPROB:def 1;
  then
A21: len p2 = len p by MATRPROB:30;
A22: dom p1 = dom M3 by A1,A19,A17,FINSEQ_3:29;
A23: dom L2 = dom p1 by A20,A17,FINSEQ_3:29;
A24: dom p1 = dom L by A3,A7,A5,A17,FINSEQ_3:29;
  now
    let k such that
A25: k in dom p1;
A26: p2.k = p.k*L2.k by RVSUM_1:59
      .= p.k*Sum (M3.k) by A23,A25,MATRPROB:def 1
      .= p.k*Sum (Line(M3,k)) by A22,A25,MATRIX_0:60
      .= p.k*Sum (Infor_FinSeq_of Line(M,k)) by A18,A25,Th53;
    thus L.k = p.k*log(2,p.k)+p.k*Sum Infor_FinSeq_of Line(M,k) by A10,A24,A25
      .= p1.k + p2.k by A25,A26,Th47;
  end;
  then Sum L = Sum Infor_FinSeq_of p+Sum mlt(p,LineSum(Infor_FinSeq_of M)) by
A3,A7,A5,A17,A21,Th7;
  hence thesis by MATRPROB:def 3;
end;
