sop-satisfier-0.3.4.5: Check satisfiability of expressions on natural numbers
Safe HaskellSafe-Inferred
LanguageHaskell2010

SoPSat.Internal.NewtonsMethod

Synopsis

Documentation

evalSoP Source #

Arguments

:: (Ord f, Ord c, Floating n) 
=> SoP f c

Expression to evaluate

-> Map (Atom f c) n

Bindings from atoms to values

-> n

Evaluation result

Evaluates SoP given atom bindings

evalProduct Source #

Arguments

:: (Ord f, Ord c, Floating n) 
=> Product f c

Product to evalute

-> Map (Atom f c) n

Atom bindings

-> n

Evaluation results

Evaluates product given atom bindings

Used by evalSoP

evalSymbol Source #

Arguments

:: (Ord f, Ord c, Floating n) 
=> Symbol f c

Symbol to evaluate

-> Map (Atom f c) n

Atom bindings

-> n

Evaluation result

Evaluates symbol given atom bindings

Used by evalProduct

derivative Source #

Arguments

:: (Ord f, Ord c, Floating n) 
=> SoP f c

Expression to take a derivative of

-> Atom f c

Atom to take a derivetive with respect to

-> Map (Atom f c) n

Function from bindings, representing point, to value of the derivative at that point

-> n 

Analitically computes derivative of an expression with respect to an atom

Returns function similar to evalSoP

derivativeProduct Source #

Arguments

:: (Ord f, Ord c, Floating n) 
=> Product f c

Product to take a derivative of

-> Atom f c

Atom to take a derivative with respect to

-> Map (Atom f c) n

Function from bindings to a value

-> n 

Analitically computes derivative of a product with respect to an atom

Used by derivative

derivativeSymbol Source #

Arguments

:: (Ord f, Ord c, Floating n) 
=> Symbol f c

Symbol to take a derivate of

-> Atom f c

Atom to take a derivate with respect to

-> Map (Atom f c) n

Function from bindings to a value

-> n 

Analitically computes derivative of a symbol with respect to an atom

Used by derivativeProduct

newtonMethod Source #

Arguments

:: (Ord f, Ord c, Ord n, Floating n) 
=> SoP f c

Expression to check

-> Either (Map (Atom f c) n) (Map (Atom f c) n)

Right binds - Atom bindings when expression is equal to zero Left binds - Last checked bindings

Finds if an expression can be equal to zero