(VAR X XS ) (RULES zeros -> cons(0, zeros) tail(cons(X, XS)) -> XS )