reserve i,j,k,n,l for Element of NAT,
  K for Field,
  a,b,c for Element of K,
  p ,q for FinSequence of K,
  M1,M2,M3 for Matrix of n,K;
reserve D for non empty set,
  t for FinSequence of D,
  A for Matrix of n,D;

theorem Th34:
  len p=len q & p is first-line-of-circulant & q is
  first-line-of-circulant implies LCirc(p+q) = LCirc(p)+LCirc(q)
proof
  set n = len p;
  assume that
A1: len p=len q and
A2: p is first-line-of-circulant and
A3: q is first-line-of-circulant;
A4: LCirc(q) is_line_circulant_about q & Indices LCirc(p) =Indices LCirc(q)
  by A1,A3,Def7,MATRIX_0:26;
  p+q is first-line-of-circulant by A1,A2,A3,Th33;
  then
A5: LCirc(p+q) is_line_circulant_about (p+q) by Def7;
A6: dom p=Seg n by FINSEQ_1:def 3;
A7: LCirc(p) is_line_circulant_about p by A2,Def7;
A8: dom (p+q)=Seg len (p+q) by FINSEQ_1:def 3;
A9: Indices LCirc(p) =[:Seg n, Seg n:] by MATRIX_0:24;
  dom q=Seg n by A1,FINSEQ_1:def 3;
  then dom (p+q)=dom p by A6,POLYNOM1:1;
  then
A10: len (p+q)=n by A6,FINSEQ_1:def 3;
  then
A11: Indices LCirc(p) =Indices LCirc(p+q) by MATRIX_0:26;
A12: for i,j be Nat holds [i,j] in Indices LCirc(p) implies LCirc(p+q)*(i,j)
  =LCirc(p)*(i,j)+LCirc(q)*(i,j)
  proof
    let i,j be Nat;
    assume
A13: [i,j] in Indices LCirc(p);
    then
A14: (j-i mod n)+1 in Seg n by A9,Lm3;
    LCirc(p+q)*(i,j) =(p+q).((j-i mod len (p+q))+1) by A5,A11,A13
      .=(the addF of K).(p.((j-i mod len (p+q))+1),q.((j-i mod len (p+q))+1)
    ) by A8,A10,A14,FUNCOP_1:22
      .=(the addF of K).(LCirc(p)*(i,j),q.((j-i mod len q)+1)) by A1,A10,A7,A13

      .=LCirc(p)*(i,j) + LCirc(q)*(i,j) by A4,A13;
    hence thesis;
  end;
A15: len LCirc(p)= len p & width LCirc(p) = len p by MATRIX_0:24;
  len LCirc(p+q)= len p & width LCirc(p+q)=len p by A10,MATRIX_0:24;
  hence thesis by A15,A12,MATRIX_3:def 3;
end;
