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 Th51:
  for n be Nat
  for L be right_zeroed add-associative right_complementable
      well-unital distributive non trivial doubleLoopStr
  for p be Polynomial of n+1,L,
    x be Function of n, L,
    y be Function of (n+1), L st not n in vars p & y|n=x
  holds
    eval(p removed_last,x) = eval(p,y)
proof
  let n be Nat;
  let L be right_zeroed add-associative right_complementable
      well-unital distributive non trivial doubleLoopStr;
  let p be Polynomial of n+1,L,
  x be Function of n, L,y be Function of (n+1), L such that
A1: not n in vars p & y|n=x;
  thus eval(p removed_last,x) = eval((p removed_last) extended_by_0,y)
    by A1,HILB10_2:18
  .= eval(p,y) by A1,Th50;
end;
