(* MAS Rational Number Definition Module. *) DEFINITION MODULE MASRN; FROM MASSTOR IMPORT LIST; PROCEDURE RNDRD(): LIST; (*Rational number decimal read. The rational number R is read from the input stream. Any preceding blanks are skipped.*) PROCEDURE RNDWR(R,NL: LIST); (*Rational number decimal write. R is a rational number. n is a non-negative integer. R is approximated by a decimal fraction D with n decimal digits following the decimal point and D is written in the output stream. The inaccuracy of the approximation is at most (1/2)*10**-n. *) PROCEDURE RNDWRS(A,S: LIST); (*Rational number decimal write special. Call RNDWR. *) PROCEDURE RNEXP(A,NL: LIST): LIST; (*Rational number exponentiation. A is a rational number, n is a non-negative beta-integer. B=A**n.*) PROCEDURE RNMAX(AL,BL: LIST): LIST; (*Rational number maximum. a and b are rational numbers. c is the maximum of a and b.*) PROCEDURE RNONE(R: LIST): LIST; (*Rational number one. R is a rational number. s=1 if R=1, s=0 else. *) END MASRN.