\documentstyle[fullpage,11pt]{article}
\begin{document}
\begin{center}
\bf{SOFTWARE ABSTRACTIONS FOR PROBABILITY MEASURES.}

R.W. Oldford\\
	Department of Statistics and Actuarial Science\\
        University of Waterloo
\end{center} 
\par\noindent
{\em Key Words: 
statistical software, programming environments,
object-oriented programming, program abstraction and specification,
probability calculation, pseudo-random variables, quantiles}

In this talk we explore the definition of software abstractions
that match the mathematical abstractions of probability (as commonly
used by statisticians).
Object-oriented programming is used to define classes which inherit
program structure and behaviour from one another.
Each class represents a statistical abstraction of a distribution
--- from {\em probability-measure} to {\em continuous-distribution} all the
way down to standard distributions like the {\em gaussian-dist}.
An instance of any class should be capable of giving probabilities,
quantiles, pseudo-random values, evaluating expectations etc.
The overall structure of the inheritance network defining the
relations between classes is designed to match that relating the
corresponding statistical abstractions.
This allows the network to be extended easily to other distributions.
The implementation in Quail illustrates the methodology.

\end{document}
