
As far as I can see, precision needs to be the same type as the return type since it represents uncertainty in the latter. That is, the range of possible return values would be [result - n*error, result + n*error]. Do you have a case in mind where this isn't true?
This is always true when you can define such an interval, which is not the case for an integral of a complex valued function ( no "<" on complex) .
I'm certainly not an expert in the numerical analysis involved in convergence of complex functions, but I imagine that this is essentially a subset of the more general case of vector-valued functions. For the latter case, the first-order assumption is that error variances are uncorrelated, leading to a diagonal covariance matrix between components. In this way, if a complex error was returned, it would indicate a gaussian distributed set of errors in the real and complex components forming an ellipse oriented with the real and imaginary axes. Naturally, covariances are important in many cases, but also are more heavyweight. I suppose that a N-dimensional result class could return an N- dimensional value and an NxN covariance matrix that reduced to diagonal in the case where covariances are negligible... Matthias ---------------------------------------------------------------- Matthias Schabel, Ph.D. Assistant Professor, Department of Radiology Utah Center for Advanced Imaging Research 729 Arapeen Drive Salt Lake City, UT 84108 801-587-9413 (work) 801-585-3592 (fax) 801-706-5760 (cell) 801-484-0811 (home) matthias at stanfordalumni dot org ----------------------------------------------------------------