module Data.Number.ER.RnToRm.UnitDom.ChebyshevBase.Polynom.Tests.Elementary
where
import Data.Number.ER.RnToRm.UnitDom.ChebyshevBase.Polynom.Elementary
import Data.Number.ER.RnToRm.UnitDom.ChebyshevBase.Polynom.Enclosure
import Data.Number.ER.RnToRm.UnitDom.ChebyshevBase.Polynom.Tests.Generate
import qualified Data.Number.ER.Real.Approx as RA
import Data.Number.ER.Real.Approx.Interval
import Data.Number.ER.Real.Arithmetic.Elementary
import Data.Number.ER.BasicTypes
import Test.QuickCheck
prop_enclExp_ThickEncl_consistent =
encl_op_ThickEncl_consistent enclExp erExp_IR_Inner noDomainRestriction
prop_enclExp_ParalEncl_consistent =
encl_op_ParalEncl_consistent enclExp erExp_IR_Inner noDomainRestriction
prop_enclExp_ThinEncl_consistent =
encl_op_ThinEncl_consistent enclExp erExp_IR_Inner noDomainRestriction
prop_enclSine_ThickEncl_consistent =
encl_op_ThickEncl_consistent enclSine erSine_IR_Inner sincosDomain
prop_enclSine_ParalEncl_consistent =
encl_op_ParalEncl_consistent enclSine erSine_IR_Inner sincosDomain
prop_enclSine_ThinEncl_consistent =
encl_op_ThinEncl_consistent enclSine erSine_IR_Inner sincosDomain
prop_enclCosine_ThickEncl_consistent =
encl_op_ThickEncl_consistent enclCosine erCosine_IR_Inner sincosDomain
prop_enclCosine_ParalEncl_consistent =
encl_op_ParalEncl_consistent enclCosine erCosine_IR_Inner sincosDomain
prop_enclCosine_ThinEncl_consistent =
encl_op_ThinEncl_consistent enclCosine erCosine_IR_Inner sincosDomain
prop_enclAtan_ThickEncl_consistent =
encl_op_ThickEncl_consistent enclAtan erATan_IR_Inner noDomainRestriction
prop_enclAtan_ParalEncl_consistent =
encl_op_ParalEncl_consistent enclAtan erATan_IR_Inner noDomainRestriction
prop_enclAtan_ThinEncl_consistent =
encl_op_ThinEncl_consistent enclAtan erATan_IR_Inner noDomainRestriction
sincosDomain = (Just (1.57), Just 1.57)
noDomainRestriction = (Nothing, Nothing)
encl_op_ThickEncl_consistent
opEncl opInner rangeRestriction
reportFileName
(Deg20Size20 maxDegree maxSize,
(Int20 ixInt),
(PSize30 (n1,p1), PSize30 (n2, p2))) =
enclAtKeyPointsPointwiseUnaryDownUpConsistent
reportFileName
((maxDegree, maxSize), ixInt, (n1, n2))
(opInner ix)
pEncl resEncl
where
(succeeded, pEncl) =
enclRestrictRange ix rangeRestriction $ makeThickEncl maxDegree maxSize p1 p2
resEncl = opEncl maxDegree maxSize ix pEncl
ix = int2effIx ixInt
encl_op_ParalEncl_consistent
opEncl opInner rangeRestriction
reportFileName
(Deg20Size20 maxDegree maxSize,
(Int20 ixInt),
(SmallRatio wNum wDenom, PSize30 (n, p))) =
enclAtKeyPointsPointwiseUnaryDownUpConsistent
reportFileName
((maxDegree, maxSize), ixInt, ((wNum, wDenom), n))
(opInner ix)
pEncl resEncl
where
(succeeded, pEncl) =
enclRestrictRange ix rangeRestriction $ makeParalEncl p wNum wDenom
resEncl = opEncl maxDegree maxSize ix pEncl
ix = int2effIx ixInt
encl_op_ThinEncl_consistent
opEncl opInner rangeRestriction
reportFileName
(Deg20Size20 maxDegree maxSize,
(Int20 ixInt),
(PSize30 (n, p))) =
enclAtKeyPointsPointwiseUnaryDownUpConsistent
reportFileName
((maxDegree, maxSize), ixInt, n)
(opInner ix)
pEncl resEncl
where
(succeeded, pEncl) =
enclRestrictRange ix rangeRestriction $ enclThin p
resEncl = opEncl maxDegree maxSize ix pEncl
ix = int2effIx ixInt