Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > Core Language > Defining Variables and Functions > Attributes >

OneIdentity

OneIdentity
is an attribute that can be assigned to a symbol f to indicate that f[x], f[f[x]], etc. are all equivalent to x for the purpose of pattern matching.
  • The fact that Times has attribute OneIdentity allows a pattern like n_.x_ to match x.
The pattern matches, because Times has attribute OneIdentity:
Any function with attribute OneIdentity will match:
OneIdentity allows defaults to apply to expressions that do not involve Times at all:
For Flat functions, any sequence of arguments will match:
When f is both Flat and OneIdentity, a and f[a] are identical for pattern matching:
New in 1 | Last modified in 5
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team