default(echo,1);
allocatemem(20 * 10^6);
check(a,b) = my(t = abs((a-b)/b)); if (t, ceil(log(t)/log(10)), "-oo");
oo = [1];
\p96
check(intcirc(s=1, 0.5, zeta(s)), 1)
check(intlaplaceinv(x=2, 1, 1/x), 1)
m = intnumstep();
check(intlaplaceinv(x=2, 1, 1/x, m+1), 1)
check(intlaplaceinv(x=5, 1, 1/x), 1)
check(intlaplaceinv(x=100, 1, 1/x), 1)
A = intmellininv(s=2,4, gamma(s)^3);
tab = intfuncinit(t=[-oo, 4.5],[oo, 4.5], gamma(2+I*t)^3, 1);
check(intmellininvshort(2,4,tab), A)
f(x) = 1/(exp(x)-1) - exp(-x)/x;
F = truncate( f(t + O(t^7)) );
g(x) = if (x > 1e-18, f(x), subst(F,t,x));
check(intnum(x = 0, [oo,1],  f(x)), Euler)
check(intnum(x = 0, [oo,1],  g(x)), Euler)
check(intnum(x = 0, 1,  1/sqrt(x)), 2)
check(intnum(x = [0,-1/2], 1,  1/sqrt(x)), 2)
check(intnum(x = 0, [oo,1], sin(x)/x), Pi/2)
check(intnum(x = 0, [oo,-I], sin(x)/x), Pi/2)
check(intnum(x = 0, [oo,-2*I], sin(2*x)/x), Pi/2)
A=intnum(x=0,1,(1-cos(x))/x^2)+intnum(x=1,oo,1/x^2)-intnum(x=1,[oo,I],cos(x)/x^2);
check(A, Pi/2)
check(intnum(x = 0, [oo, 1], sin(x)^3*exp(-x)), 3/10)
check(intnum(x = 0, [oo,-I], sin(x)^3*exp(-x)), 3/10)
tab = intnuminit(0,[oo,-I], m+1);
check(intnum(x = 0, oo, sin(x)^3*exp(-x), tab), 3/10)
check(intnum(x = 0, [oo, -I], x^2*sin(x)), -2)
tab = intnuminit(-1,1);
check(intnum(x=-1,1, intnum(y=-sqrt(1-x^2),sqrt(1-x^2),x^2+y^2,tab),tab), Pi/2)
\\
\p 308
a = sumpos(n=1, 1/(n^3+n+1));
tab = sumnuminit(2);
b = sumnum(n=1,2, 1/(n^3+n+1), tab);
check(a, b)
check(sumnum(n=1,2, 1/(n^3+n+1), tab, 1), a)
c = sumnum(n=1,2,1/(n^2+1),tab,1);
d = sumpos(n=1,1/(n^2+1));
check(c, d)
check(sumnum(n=1,2,n^(-4/3),,1), zeta(4/3))
tab = sumnuminit([2,-3/2]);
check(sumnum(n=1,[2,-3/2],1/(n*sqrt(n)),tab,1), zeta(3/2))
\\
check(suminf(n=1, 2^(-n)), 1)
check(sumpos(n=1, 2^(-n)), 1)
check(sumnum(n=1,[2,log(2)],2^(-n), intnumstep()+1, 1), 1)
\\
tab = sumnuminit(2,,-1);
a = sumnumalt(n=1,2,1/(n^3+n+1),tab,1);
b = sumalt(n=1,(-1)^n/(n^3+n+1));
check(a, b)

\p96
T=intnuminitgen(t,0,[1],exp(2*sinh(t)));
check(intnum(x=0,[1],1/(1+x^2),T), Pi/2)
T=intnuminitgen(t,0,[[1],1],exp(t-exp(-t)));
check(intnum(x=0,[[1],1],exp(-x),T), 1)
intfourierexp(t=0,[[1],1], 1/2, exp(-t^2))
intfouriercos(t=0,[[1],1], 1/2, exp(-t^2))
intfouriersin(t=0,[[1],1], 1/2, exp(-t^2))

\p38
intnumromb(x=0,1,sin(x))
intnumromb(x=0,1,sin(x), 1)
intnumromb(x=1,100,exp(-x^2), 2)
intnumromb(x=0,1,sin(x)/x, 3)

f(x) = -log(cos(x));
F = truncate( f(t + O(t^16)) );
g(x) = if (x > 1e-2, f(x), subst(F,t,x));
sumpos(n=1,g(1/n))
