f:= x^2*arctan(1/(1+x));

diff(f,x); //derivee premiere

plotfunc(f); // Trace le graphe de f

// Limites en -1
limit(f,x=-1);
limit(f,x=-1,-1);
limit(f,x=-1,1);

// Limites en + l'infini et asymptote
limit(f,x=+infinity);
limit(f/x,x=+infinity);
limit(f-x,x=+infinity); // Asymptote y=x-1

// Limites en - l'infini et asymptote
limit(f,x=-infinity);
limit(f/x,x=-infinity);
limit(f-x,x=-infinity); // Asymptote y=x-1