reserve a,b,d,n,k,i,j,x,s for Nat;

theorem Th3:
  b > 0 & d > 1 & s > 0 implies
    ex m,i being Nat st digits(ArProg (a,b).m,d)/^i = digits(s,d)
proof
  assume that
A1: b > 0 & d > 1 and
A2: s > 0;
  set r = a mod b, t = a div b;
A3: a = b*t+r by A1,NAT_D:2;
A4: r < b by A1,NAT_D:1;
  d>=1+1 by A1,NAT_1:13;
  then consider n be positive Nat such that
A5: 2*b*(t+1) +1 <= d|^n by LIOUVIL2:1;
  b+0 < b+b by A1,XREAL_1:8;
  then
A6: b*(t+1) < (2*b)*(t+1) by XREAL_1:68;
  1+0 <= s by A2,NAT_1:13;
  then
A7: 1*d|^n <= s*d|^n by XREAL_1:64;
A8: 2*b*(t+1) < d|^n by A5,NAT_1:13;
  then b*(t+1) < d|^n by A6,XXREAL_0:2;
  then b*(t+1) < s*d|^n by A7,XXREAL_0:2;
  then (t+1) < (s*d|^n)/ b by A1,XREAL_1:81;
  then
A9: (s*d|^n)/b - t >1 by XREAL_1:20;
  set k = [/ (s*d|^n)/b - t \];
  (s*d|^n)/b - t <= k by INT_1:def 7;
  then reconsider k as Element of NAT by A9,INT_1:3;
  take k,n;
  (s*d|^n)/b <= k + t by INT_1:def 7,XREAL_1:20;
  then
A10: s*(d|^n) <= b *(k+t) by A1,XREAL_1:81;
  k < (s*d|^n)/b - t +1 by INT_1:def 7;
  then
A11: k+1 <= (s*d|^n)/b  -t+1+1 by XREAL_1:6;
  0+1 <= t+1 by XREAL_1:6;
  then (2*b)*1 <= (2*b)*(t+1) by XREAL_1:64;
  then (2*b)*1 < d|^n by A8,XXREAL_0:2;
  then 2 < (d|^n)/b by A1,XREAL_1:81;
  then
A12: (s*d|^n)/b  -t +2 < (s*d|^n)/b  -t+(d|^n)/b by XREAL_1:8;
  (s*d|^n)/b  -t+(d|^n)/b = (s*d|^n)/b +(d|^n)/b -t
  .= ((s*d|^n)+(d|^n))/b - t by XCMPLX_1:62
  .=((s+1)*d|^n)/b - t;
  then k+1 < ((s+1)*d|^n)/b - t by A11,A12,XXREAL_0:2;
  then k+1 + t < ((s+1)*d|^n)/b by XREAL_1:20;
  then
A13: (k+1 + t)*b < ((s+1)*d|^n) by A1,XREAL_1:79;
  b *(k+t)+0 <= b *(k+t)+r by XREAL_1:7;
  then
A14: s*(d|^n) <= b*k + a by A3,A10,XXREAL_0:2;
  b*k + a = b*k + b*t+r by A3;
  then b*k + a < b*k + b*t+b by A4,XREAL_1:8;
  then b*k + a < ((s+1)*d|^n) by A13,XXREAL_0:2;
  then digits(s,d) = digits(b*k + a,d)/^n by Th2,A1,A2,A14;
  hence thesis by NUMBER06:7;
end;
