úÎŽëConstructible 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. 1Deconstruct a rational constructible number as a  , or an ,irrational constructible number as a triple  (a, b, r) of simpler #constructible numbers representing  a + b*sqrt r (with b /= 0 and r > 0). Recursively calling  on all triples will yield !a finite tree that terminates in   leaves. >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. hfromConstruct $ sum (map sqrt [7, 14, 39, 70, 72, 76, 85]) - sum (map sqrt [13, 16, 46, 55, 67, 73, 79])1.8837969820815017e-19A !"#$%&'()*+,-./0123456789:;< =>?@ABCDEF6 !"#$%&'()*+,-./0123456789:;< =>?@ABCDEFG     !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJconstructible-0.1.0.1Data.Real.ConstructibleConstructExceptionUnconstructibleConstructSqrtNegativeConstructIrrational Construct deconstruct fromConstructbase GHC.Float**sqrtGHC.Real toRationalRational$fRealConstructReal$fFloatingConstructFloatingJoinKCSqrtEltSqrtZeroEltFieldSqrtQ FieldShape SqrtShapeQShapesqrtEltsqrtLiftaddKmulKsubKnegateKabsKsignumKdivKrecipKeqKisZeroKcompareKsgnKzeroK fromRationalKsqrtKnegateS+!-!*!/!sqrtSmulSqrtS showsPrecK fromRatioKfromConstructK deconstructKjoinKmktoPair$fEnumConstruct$fRealFracConstruct$fExceptionConstructException$fShowConstructException$fFractionalConstruct$fNumConstruct$fOrdConstruct $fEqConstruct$fReadConstruct$fShowConstruct $fShowField$fComplexRectComplexConstruct