input_case nil$ % Working with power series % ------------------------- load_package tps; % Truncated Power Series psexplim 8$ % expansion limit sinx:=ps(sin(x),x,0); % series of sin(x) at 0 cosx:=ps(cos(x),x,0); tanx:=ps(tan(x),x,0); tanx*cosx; % should be equal to sinx sinx/cosx; % should be equal to tanx df(sinx,x); % should be equal to cosx cotx:=ps(1/tanx,x,0); % pole at the expansion point cotx*tanx; % exactly 1 sinx^2+cosx^2; % should be equal to 1 clear cosx,cotx; psexplim 6$ a:=ps(tan(sinx),x,0); % tan(sin(x)) b:=pscompose(sinx,tanx); % sin(tan(x)) - composition of series a:=a-b; % this is 0 with the required accuracy psexplim 9$ a; % increasing accuracy clear a,b,sinx; psexplim 8$ logx:=ps(log(x),x,1); psfunction(logx); % function being expanded psdepvar(logx); % expansion variable psexpansionpt(logx); % expansion point psterm(logx,5); % 5-th term clear logx; a:=ps(1/(x^2+1),x,infinity); % expansion at infinity x*a; ps(x*a,x,infinity); clear a; atanx:=ps(atan(x),x,0); psreverse(tanx); % series inversion clear tanx,atanx; ps(int(e^(x^2),x),x,0); % integrator is not called load_package fps; % Formal Power Series fps(e^x,x); fps(sin(x),x); fps(sin(x)^2,x); fps(cos(x)^2,x); fps((1+x)^alpha,x); end;