An abstract data type for real numbers