#### Description:

This attribute should be set to a non-zero value if applying a MathMap`’` 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.

Type:

  Integer (boolean).

#### Applicability

##### MathMap

All MathMaps have this attribute.

#### Notes:

- 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.

Copyright (C) 2021 East Asian Observatory