Send me mail for reprints or if you are interested in using our prototype implementation.
Publications (reverse chronological order):
Abstract: Functions can often be defined by recursive equations such as these:
f(x) = b(x), if p(x)The second equation says that if the input to f “varies” by h, then its output “varies” by g_{x}. We call this a functional difference equation; it is analogous to a numerical difference equation, such as:
f[h(x)] = g_{x}[f(x)], otherwise.
f(h + x) = g_{x} + f(x),which says that the output of f varies by g_{x} when its input is varied by h. Since in our theory we vary the input by an arbitrary function, rather than a numerical displacement, we can take differences of functions defined on nonnumeric domains, such as lists, trees and sets.
The ultimate goal of this research is to improve our ability to reason about functional programs. Specifically, the theory of functional differences provides a means of going from local descriptions of behavior (difference equations) to global descriptions (the solution to the difference equation), and vice versa.
In this paper we define several different kinds of functional differences and present fundamental results concerning them (existence, uniqueness, etc.). We also present a complementary operation of “functional integration” that can be used to solve functional difference equations.
Abstract: In this report we develop the basic properties of a set of functions analogous to the circular and hyperbolic functions, but based on L_{p} circles, thus a kind of generalized trigonometry. The resulting identities may simplify analysis in L_{p} spaces in much the way that the circular functions do in Euclidean space. In any case, they are a pleasing example of mathematical generalization.