The body of the equation system, i.e., a map Assignment[U,V] => Assignment[U,V]
.
The body of the equation system, i.e., a map Assignment[U,V] => Assignment[U,V]
.
Returns a new body, in which the init
assignment is combined with the result of body evaluation
trough the use of the comb
combiner.
Returns a new body, in which the init
assignment is combined with the result of body evaluation
trough the use of the comb
combiner.
Returns a new body with boxes added to the evaluation.
Returns a new body with boxes added to the evaluation. If tracer
is defined, the boxEvaluation
callback is invoked during evaluation.
Implement the bodyWithDependencies
method by instrumenting the source assignment in order to
record access to unknowns.
Implement the bodyWithDependencies
method by instrumenting the source assignment in order to
record access to unknowns.
Returns a new body which calls the current tracer before and after evaluation.
Returns a new body which calls the current tracer before and after evaluation.
the tracer to be called by the new body
The static relation between an unknown x and the unknowns y it influences.
The static relation between an unknown x and the unknowns y it influences. If infl(x)
does not contain y
, it
means that eqs(rho)(y) == eqs(rho')(y)
, when rho' = rho[x / eqs(rho)(x)]
.
An initial value for starting the analyzer
An initial value for starting the analyzer
The unknowns which may be considered the input to this equation system.
The unknowns which may be considered the input to this equation system.
An optional tracer which should be called during body evaluation.
An optional tracer which should be called during body evaluation.
The collection of all unknowns.
The collection of all unknowns.
Combine a base assignment with the equation system.
Combine a base assignment with the equation system. The type V
should be endowed with a magma.
the assignment to add to the equation system
Add boxes to the equation system
Add boxes to the equation system
a box assignment
Add a tracer to the equation system.
Add a tracer to the equation system. The tracer contains call-backs to be invoked during body evaluation.
the tracer
A simple standard implementation of FiniteEquationSystem. All fields must be provided explicitly by the user with the exception of
bodyWithDependencies
which is computed bybody
.