úÎÙCConstructible real numbers Non-portable (GHC extensions) experimental Anders Kaseorg <andersk@mit.edu>None ,The type of exceptions thrown by impossible  operations. _ was given an exponent that is not a dyadic rational, or a transcendental function was called. , was given a negative constructible number.  / was given an irrational constructible number. (The type of constructible real numbers. /Deconstruct a constructible number as either a  , or a triple  (a, b, r)/ of simpler constructible numbers representing  a + b*sqrt r (with b /= 0 and r > 0). Recursively calling  on 8all triples will yield a finite tree that terminates in   Gleaves. Note that two constructible numbers that compare as equal may deconstruct in different ways. This   instance only supports   on numbers that are in fact rational.  ( on an irrational number will throw the  exception.  This partial  instance only supports  and  where Athe exponent is a dyadic rational. Passing a negative number to  will throw the  exception. All other operations will throw the  exception. DEvaluate a floating-point approximation for a constructible number. CTo improve numerical stability, addition of numbers with different .signs is avoided using quadratic conjugation. @ !"#$%&'()*+,-./0123456789:; <=>?@ABCDE5 !"#$%&'()*+,-./0123456789:; <=>?@ABCDEF     !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIconstructible-0.1Data.Real.ConstructibleConstructExceptionUnconstructibleConstructSqrtNegativeConstructIrrational Construct deconstruct fromConstructbase GHC.Float**sqrtGHC.Real toRationalRational$fRealConstructReal$fFloatingConstructFloatingJoinKCSqrtEltSqrtZeroEltFieldSqrtQ FieldShape SqrtShapeQShapesqrtEltsqrtLiftaddKmulKsubKnegateKabsKsignumKdivKrecipKeqKisZeroKcompareKsgnKzeroK fromRationalKsqrtKnegateS+!-!*!/!sqrtSmulSqrtS showsPrecKfromConstructK deconstructKjoinKmktoPair$fEnumConstruct$fRealFracConstruct$fExceptionConstructException$fShowConstructException$fFractionalConstruct$fNumConstruct$fOrdConstruct $fEqConstruct$fReadConstruct$fShowConstruct $fShowField$fComplexRectComplexConstruct