
theorem Th50:
digits(180,10) = <%0,8,1%>
proof
  set d=<%0,8,1%>;
  set e=<%0*10|^0,8*10|^1,1*10|^2%>;
  A1: Sum e = Sum (<%0*10|^0,8*10|^1%>)+Sum(<%1*10|^2%>) by AFINSQ_2:55
  .= ((0*10|^0)+(8*10|^1))+Sum(<%1*10|^2%>) by AFINSQ_2:54
  .= ((0*10|^0)+(8*10|^1))+(1*10|^2) by AFINSQ_2:53
  .= 0 + 8*10 + 10|^2 by NEWTON:5
  .= 80 + 10*10 by POLYEQ_5:1
  .= 180;
  A2: dom d = 3 by AFINSQ_1:39 .= dom e by AFINSQ_1:39;
  now
    let i be Nat;
    assume i in dom d;
    then i in 3 by AFINSQ_1:39;
    then i in {0,1,2} by CARD_1:51;
    then i = 0 or i = 1 or i = 2 by ENUMSET1:def 1;
    hence e.i=(d.i)*10|^i;
  end;
  then A3: value(d,10)=180 by A1,A2,NUMERAL1:def 1;
  len(d) - 1 = 3-1 by AFINSQ_1:39;
  then A4: d.(len(d)-1) <> 0;
  now
    let i be Nat;
    assume i in dom d;
    then i in 3 by AFINSQ_1:39;
    then i in {0,1,2} by CARD_1:51;
    then i = 0 or i = 1 or i = 2 by ENUMSET1:def 1;
    hence 0 <= d.i & d.i < 10;
  end;
  hence thesis by A3,A4,NUMERAL1:def 2;
end;
