reserve i,j,k,n,m for Nat,
        X for set,
        b,s for bag of X,
        x for object;
reserve O for Ordinal,
        R for right_zeroed add-associative right_complementable
          right_unital distributive non trivial doubleLoopStr,
        p for Polynomial of O, R;
reserve O for Ordinal,
        R for right_zeroed add-associative right_complementable
             right_unital distributive non trivial doubleLoopStr,
        p for Polynomial of O, R;

theorem Th45:
  for X be Ordinal, S be right_zeroed add-associative right_complementable
      right_unital distributive well-unital non trivial doubleLoopStr
  for p be Polynomial of X, S, k be Nat holds
     vars (p `^ k) c= vars p
proof
  let X be Ordinal, S be right_zeroed add-associative right_complementable
  right_unital distributive  well-unital non trivial doubleLoopStr;
  let p be Polynomial of X, S;
  defpred P[Nat] means vars (p `^ $1) c= vars p;
  p `^ 0 = 1_(X,S) by Th28;
  then vars (p `^ 0) = {} by Th38;
  then
A1: P[0] by XBOOLE_1:2;
A2:P[k] implies P[k+1]
  proof
    assume P[k];
    then
A3: vars (p `^ k) \/ vars p c= vars p \/ vars p by XBOOLE_1:9;
    p `^ (k+1) = (p `^ k) *' p by Th29;
    then vars (p `^ (k+1)) c= vars (p `^ k) \/ vars p by Th43;
    hence thesis by A3,XBOOLE_1:1;
  end;
  P[k] from NAT_1:sch 2(A1,A2);
  hence thesis;
end;
