From:	SCOVCB::GALVIN_FX    31-JAN-1989 09:01
To:	ARISIA::EVERHART
Subj:	

        ----
package MATH is
        ----

   -- This is a math library package with basic functions
   -- needed but omitted from the implementation of Ada.

   function LN (Z : in float) return float;
   function LN (Z : in integer) return float;
      -- Natural logarithm functions computed via series expansion.

   function EXP (Z : in float) return float;
   function EXP (Z : in integer) return float;
      -- Natural exponential functions {e ** Z, for
      -- e = 2.71828...} computed via series expansion.

   function "**" (x,y : in float) return float;
      -- exponential, x raised to the yth power
      -- if |y| < 1 then this function provides the (1/y)th root
      -- if |y| > 1 then this function provides the yth power

   function MIN (X, Y : in float) return float;
   function MAX (X, Y : in float) return float;
      -- Minimum & maximum functions for floating pt. arguments.

   function MIN (X, Y : in integer) return integer;
   function MAX (X, Y : in integer) return integer;
      -- Minimum & maximum functions for integer arguments.

   function SQRT (Z : in float) return float;
   function SQRT (Z : in integer) return float;
      -- Square root computed by Z ** 0.5

   function FACTORIAL (Z : in integer) return integer;
      -- Factorial computed by Z * (Z-1) * (Z-2) * ... * (Z-n)

   DIVISION_BY_ZERO, FLOATING_ROOT_OF_NEGATIVE_BASE : exception;

end MATH;
