Inverse-forward MathMap pairs simplify? SimpIF
’
s inverse transformation,
followed immediately by the matching forward transformation will always restore the
original set of coordinates. It indicates that AST may replace such a sequence of
operations by an identity Mapping (a UnitMap) if it is encountered while simplifying a
compound Mapping (e.g. using astSimplify).
By default, the SimpIF attribute is zero, so that AST will not perform this simplification unless you have set SimpIF to indicate that it is safe to do so.
For simplification to occur, the two MathMaps must be in series and be identical (with textually identical transformation functions). Functional equivalence is not sufficient.
The consent of both MathMaps is required before simplification can take place. If either has a SimpIF value of zero, then simplification will not occur.
The SimpIF attribute controls simplification only in the case where a MathMap’
s
inverse transformation is followed by the matching forward transformation. It does not
apply if a forward transformation is followed by an inverse transformation. This latter
case is controlled by the SimpFI attribute.
The "
forward"
and "
inverse"
transformations referred to are those defined when the
MathMap is created (corresponding to the "
fwd"
and "
inv"
parameters of its
constructor function). If the MathMap is inverted (i.e. its Invert attribute is
non-zero), then the role of the SimpFI and SimpIF attributes will be interchanged.