Note that expintegral_shi(x) is a real function - see A&S or Wolfram Alpha.
http://www.wolframalpha.com/input/?i=integrate+Shi%28x%29+from+0+to+1%2F2
gives about .125872409 as does mpmath.
(%i11) expand(float(integrate(expintegral_shi(x),x,0,1/2)));
(%o11) 1.5707963267948966*%i+.12587240970345281
Extra pi/2?
This come from
(%i30) float(expintegral_shi(1/2));
(%o30) 3.141592653589793*%i+0.506996749819667
So Maxima is, oddly, using a different branch for this function even though they cite
The Exponential Integral Shi(z) (A&S 5.2.3)
and http://people.math.sfu.ca/~cbm/aands/page_231.htm clearly makes this something that should be real.
See http://trac.sagemath.org/sage_trac/ticket/11143 where this was first noticed.
Raymond Toy
2012-05-27
Fixed in git.
Thanks for the report.
Raymond Toy
2012-05-27