# tangent at x=a;

tangent(y_):= d(y,x=0)*x+replace(y,x,0);
tangent(y_,x_):= d(y,x=0)*x+replace(y,x,0);
tangent(y_,x_=a_):= d(y,x=a)*x-d(y,x=a)*a+replace(y,x,a);