Computational modeling has become ubiquitous in our society, throughout science, technology, business and industry. As a result greatly many beliefs are formed, and decisions are made, on the basis of the results of computation. Such beliefs and decisions rely on the validity or correctness of computational results and methods. Reliable decision-making, then, often requires reliable computation.
A difficulty with ensuring reliability is that computational methods typically are the result of a design process that balances needs of efficiency, accuracy and generality. Generally speaking, only two of these desiderata can be maintained simultaneously. For example, methods are often designed to be efficient and accurate, but in order to ensure this assumptions are made that restrict generality, with linearity being a very common assumption of this kind.
These appear to be fundamental constraints on computing methods. What we can aim for, however, are methods that ensure validity and accuracy in the context for which they were developed and that provide information on where they are likely to fail.
My research interest in scientific computing concerns the development of methods that are designed to produce reliable results in the presence of the kinds of error encountered in mathematical modeling. Where possible, I seek efficient ways of providing assurances of the validity of computations and information on the limitations or range of their validity.
Reliable Computing in the Presence of Error
Mathematical modeling requires computation and computation introduces error. Ensuring that computational results are reliable, then, requires that the error entering into a computation can be quantified or its effect on the result minor.
Computation comes in two main varieties: numerical, i.e., using actual numbers; and symbolic, i.e. using mathematical symbols. Ensuring that results are reliable requires different techniques in these two cases.
- Numerical computation is powerful because it can yield very accurate representations of phenomena very quickly on modern computing machinery. A major limitation of this approach is that to compute using numbers we must limit ourselves to only a few (typically around a million billion) out of their infinite quantity. This means error. To get reliable results, then, requires that the computational methods are stable and continuous under this kind of error. The technical property here is numerical stability.
- Symbolic computation is powerful because it can yield exact solutions to mathematical models, again very quickly on modern computing machinery. In the modeling context, these methods can be used on their own or to boost the accuracy and efficiency of numerical methods. A major limitation of this approach is that exact methods are typically abstract, leaving a gulf between the framework of the computation and potential applications. In particular, the computational framework does not typically ensure continuous answers where they should be. To get reliable results, then, requires that results of computation vary continuously.
Continuous Symbolic Integration
My research is currently focused on the problem of continuous expressions for symbolic integrals on domains of maximum extent.
Although my current focus is symbolics, I am also working on numerical methods for differential equations that produce a quantitative measure of the error in the computation as a by-product of the solution method. Results on this research will appear here as they become available.