Îõ³h$¹^Ã      !"#$%&'()*+,-./0123456789:;<=>?@ABNone '(>ÀÁÂÄ regression-simpleClass witnessing that dp has a pair of Cs.regression-simpleLike D* but with element in the class definition.regression-simple 3×3 matrix.regression-simple3d vector. Strict triple of Cs.-Also used to represent quadratic polynomial: V3 a b c = a x^2 + b x + c. regression-simple 2×2 matrix. regression-simple2d vector. Strict pair of Cs.*Also used to represent linear polynomial: V2 a b  = a x + b. regression-simpleInverseregression-simple Determinantregression-simple#Multiplication of different things.regression-simpleIdentityregression-simpleAdditionregression-simpleSolve linear equation.zerosLin (V2 1 2)-2.0regression-simpleSolve quadratic equation.zerosQuad (V3 2 0 (-1)).Right (-0.7071067811865476,0.7071067811865476)zerosQuad (V3 2 0 1)ÃLeft ((-0.0) :+ (-0.7071067811865476),(-0.0) :+ 0.7071067811865476)&Double root is not treated separately:zerosQuad (V3 1 0 0)Right (-0.0,0.0)zerosQuad (V3 1 (-2) 1)Right (1.0,1.0)regression-simpleFind an optima point.optimaQuad (V3 1 (-2) 0)1.0 compare tozerosQuad (V3 1 (-2) 0)Right (0.0,2.0)regression-simpleLinear regression. The type is  :: [(C, C)] ->   .but overloaded to work with boxed and unboxed Vectors.%let input1 = [(0, 1), (1, 3), (2, 5)]PP $ linear input1V2 2.0000 1.00000Élet input2 = [(0.1, 1.2), (1.3, 3.1), (1.9, 4.9), (3.0, 7.1), (4.1, 9.0)]PP $ linear input2V2 2.0063 0.88685regression-simpleLike - but also return parameters' standard errors.?To get confidence intervals you should multiply the errors by quantile (studentT (n - 2)) ci' from  statistics package or similar. For big nØ using value 1 gives 68% interval and using value 2 gives 95% confidence interval. See  Ñhttps://en.wikipedia.org/wiki/Student%27s_t-distribution#Table_of_selected_values (quantile> calculates one-sided values, you need two-sided, thus adjust ci value).The first input is perfect fit:PP $ linearWithErrors input1'(V2 2.0000 1.00000, V2 0.00000 0.00000)The second input is quite good:PP $ linearWithErrors input2'(V2 2.0063 0.88685, V2 0.09550 0.23826)ÎBut the third input isn't so much, standard error of a slope argument is 20%..let input3 = [(0, 2), (1, 3), (2, 6), (3, 11)]PP $ linearWithErrors input3&(V2 3.0000 1.00000, V2 0.63246 1.1832)regression-simpleQuadratic regression. The type is  :: [(C, C)] ->  .but overloaded to work with boxed and unboxed Vectors.%let input1 = [(0, 1), (1, 3), (2, 5)]quadratic input1V3 0.0 2.0 1.0Élet input2 = [(0.1, 1.2), (1.3, 3.1), (1.9, 4.9), (3.0, 7.1), (4.1, 9.0)]PP $ quadratic input2V3 (-0.00589) 2.0313 0.87155.let input3 = [(0, 2), (1, 3), (2, 6), (3, 11)]PP $ quadratic input3V3 1.00000 0.00000 2.0000regression-simpleLike - but also return parameters' standard errors.PP $ quadraticWithErrors input2:(V3 (-0.00589) 2.0313 0.87155, V3 0.09281 0.41070 0.37841)PP $ quadraticWithErrors input37(V3 1.00000 0.00000 2.0000, V3 0.00000 0.00000 0.00000)regression-simple9Do both linear and quadratic regression in one data scan.PP $ quadraticAndLinear input21(V3 (-0.00589) 2.0313 0.87155, V2 2.0063 0.88685) regression-simpleLike , but also return parameters' standard errors(PP $ quadraticAndLinearWithErrors input2å((V3 (-0.00589) 2.0313 0.87155, V2 2.0063 0.88685), (V3 0.09281 0.41070 0.37841, V2 0.09550 0.23826))'regression-simpleM22 1 2 3 4 `mult` eye @M22M22 1.0 2.0 3.0 4.0!  !   76Å        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFÇ-regression-simple-0.1.1-96iwxSglAmG8z2UiFnjHiMath.Regression.Simple IsDoublePairwithDPmakeDP Foldable'foldl'M33V3M22V2InvinvDetdetMultmultEyeeyeAddzeroaddzerosLin zerosQuad optimaQuadlinearlinearWithErrors quadraticquadraticWithErrorsquadraticAndLinearquadraticAndLinearWithErrors $fAddDouble $fEyeDouble $fDetDouble $fInvDouble$fMultDoubleV2V2$fAddV2$fMultM22M22M22 $fMultM22V2V2$fMultDoubleM22M22$fInvM22$fDetM22$fEyeM22$fAddM22$fMultDoubleV3V3$fAddV3 $fMultM33V3V3$fMultDoubleM33M33$fInvM33$fDetM33$fEyeM33$fAddM33$fFoldable'Vectora$fFoldable'Vectora0$fFoldable'[]a$fIsDoublePair(,)$fIsDoublePairV2$fEqM33 $fShowM33$fEqV3$fShowV3$fEqM22 $fShowM22$fEqV2$fShowV2ghc-prim GHC.TypesDoublebase Data.FoldableFoldable