Advise-me-0.1: Assessment services for the Advise-Me project

Maintainerbastiaan.heeren@ou.nl
Stabilityprovisional
Portabilityportable (depends on ghc)
Safe HaskellNone
LanguageHaskell98

Domain.Math.Power.Rules

Contents

Description

 
Synopsis

Power rules

calcPower :: Rule Expr Source #

Calculate power, e.g., 2^2 => 4

calcPowerPlus :: Rule Expr Source #

root n x, ...
BHR: not used. Better to turn this into OrList (Relation Expr)

mulExponents :: Rule Expr Source #

(a^x)^y = a^(x*y)

subExponents :: Rule Expr Source #

a*x^y b*x^q = ab * x^(y-q)

distributePower :: Rule Expr Source #

(a0 * a1 ... * an)^x = a0^x * a1^x ... * an^x

distributePowerDiv :: Rule Expr Source #

(ab)^y = (a^y b^y)

reciprocal :: Rule Expr Source #

Use with care, will match any fraction!

reciprocalInv :: Rule Expr Source #

a^x = 1/a^(-x)

reciprocalFrac :: Rule Expr Source #

c d*a^(-x)*b^(-y)...p^r... = c*a^x*b^y...d*p^r...

calcPowerRatio :: Rule Expr Source #

a^(xy) => (a^x)^(1y)

simplifyPower :: Rule Expr Source #

all of the above simplification rules

divBase :: Rule Expr Source #

a^x b^x = (ab)^x

reciprocalVar :: Rule Expr Source #

e/a = e*a^(-1) where a is an variable

reciprocalPower :: Rule Expr Source #

c/a^x = c*a^x^(-1)

factorAsPower :: Rule Expr Source #

n => a^e (with e /= 1)

simpleAddExponents :: Rule Expr Source #

a*x^y * b*x^q = a*b * x^(y+q)

Root rules

power2root :: Rule Expr Source #

Root rules ----------------------------------------------------------------

a^(p/q) = root (a^p) q

root2power :: Rule Expr Source #

root a q = a^(1/q)

Log rules

logarithm :: Rule (Equation Expr) Source #

Logarithmic relation rules -----------------------------------------------

Common rules

myFractionTimes :: Rule Expr Source #

Common rules --------------------------------------------------------------

ab * cd = a*c / b*d (b or d may be one)

pushNegOut :: Rule Expr Source #

(-a)^x = -(a^x)