reserve x for set;
reserve a, b, c for Real;
reserve m, n, m1, m2 for Nat;
reserve k, l for Integer;
reserve p, q for Rational;
reserve s1, s2 for Real_Sequence;

theorem Th44:
  a<>0 implies a #Z (k+l) = a #Z k * a #Z l
proof
  assume
A1: a<>0;
  per cases;
  suppose
A2: k>=0 & l>=0;
    then
A3: k*l>=0;
    thus a #Z (k+l) = a |^ |.k+l.| by A2,Def3
      .= a |^ (|.k.|+|.l.|) by A3,ABSVALUE:11
      .= a |^ |.k.| * a |^ |.l.| by NEWTON:8
      .= a #Z k * a |^ |.l.| by A2,Def3
      .= a #Z k * a #Z l by A2,Def3;
  end;
  suppose
A4: k>=0 & l<0;
    then reconsider m = k as Element of NAT by INT_1:3;
    reconsider n = -l as Element of NAT by A4,INT_1:3;
    k+l = m - n;
    hence a #Z (k+l) = a |^ m / a |^ n by A1,Th43
      .= a |^ m * (a |^ n)"
      .= a |^ |.k.| * (a |^ n)" by ABSVALUE:def 1
      .= a |^ |.k.| * (a |^ |.-l.|)" by ABSVALUE:def 1
      .= a |^ |.k.| * (a |^ |.l.|)" by COMPLEX1:52
      .= a #Z k * (a |^ |.l.|)" by A4,Def3
      .= a #Z k * a #Z l by A4,Def3;
  end;
  suppose
A5: k<0 & l>=0;
    then reconsider m = l as Element of NAT by INT_1:3;
    reconsider n = -k as Element of NAT by A5,INT_1:3;
    k+l = m - n;
    hence a #Z (k+l) = a |^ m / a |^ n by A1,Th43
      .= a |^ m * (a |^ n)"
      .= a |^ |.l.| * (a |^ n)" by ABSVALUE:def 1
      .= a |^ |.l.| * (a |^ |.-k.|)" by ABSVALUE:def 1
      .= a |^ |.l.| * (a |^ |.k.|)" by COMPLEX1:52
      .= a #Z l * (a |^ |.k.|)" by A5,Def3
      .= a #Z k * a #Z l by A5,Def3;
  end;
  suppose
A6: k<0 & l<0;
    then
A7: k*l>=0;
    thus a #Z (k+l) = (a |^ |.k+l.|)" by A6,Def3
      .= (a |^ (|.k.|+|.l.|))" by A7,ABSVALUE:11
      .= (a |^ |.k.| * a |^ |.l.|)" by NEWTON:8
      .= (a |^ |.k.|)" * (a |^ |.l.|)" by XCMPLX_1:204
      .= a #Z k * (a |^ |.l.|)" by A6,Def3
      .= a #Z k * a #Z l by A6,Def3;
  end;
end;
