taylor(y_,xx_,x0_):=If(type(xx)==Variable,taylor(y,xx,x0,7));
taylor(y_,x_=a_,n_):=If(isnumber(a),taylor(y,x,a,n));

taylor(y_,xx_):=If(type(xx)==Variable,taylor(y,xx,0,7), if(isconstant(xx),taylor(y,x,xx,7) ));
taylor(y_,x_=a_):=If(isnumber(a),taylor(y,x,a,7));
taylor(a_*x_^n_,x_):=expand(taylor(a,x,0,7)*x^n);

taylor(y_):=taylor(y,x);