indexing
	description: "Basic mathematical operations, double-precision. This class may be used as ancestor by classes needing its facilities."

class interface
	DOUBLE_MATH

feature -- Access

	arc_cosine (v: DOUBLE): DOUBLE
			-- Trigonometric arccosine of radian v
			-- in the range [0, pi]

	arc_sine (v: DOUBLE): DOUBLE
			-- Trigonometric arcsine of radian v
			-- in the range [-pi/2, +pi/2]

	arc_tangent (v: DOUBLE): DOUBLE
			-- Trigonometric arctangent of radian v
			-- in the range [-pi/2, +pi/2]

	ceiling (v: DOUBLE): DOUBLE
			-- Least integral greater than or equal to v

	cosine (v: DOUBLE): DOUBLE
			-- Trigonometric cosine of radian v approximated
			-- in the range [-pi/4, +pi/4]

	floor (v: DOUBLE): DOUBLE
			-- Greatest integral less than or equal to v

	log (v: DOUBLE): DOUBLE
			-- Natural logarithm of v

	log10 (v: DOUBLE): DOUBLE
			-- Base 10 logarithm of v

	log_2 (v: DOUBLE): DOUBLE
			-- Base 2 logarithm of v

	sine (v: DOUBLE): DOUBLE
			-- Trigonometric sine of radian v approximated
			-- in range [-pi/4, +pi/4]

	sqrt (v: DOUBLE): DOUBLE
			-- Square root of v

	tangent (v: DOUBLE): DOUBLE
			-- Trigonometric tangent of radian v approximated
			-- in range [-pi/4, +pi/4]
	
end -- class DOUBLE_MATH