Options and Auxiliary Functions
Notation ,
Symbolize and
InfixNotation have several options that modify their behavior. These notation functions all take the options
WorkingForm and
Action. In addition the
Notation package has a local option
AutoLoadNotationPalette which affects the loading of the palette. Finally, the
Notation package has a function which clears all notations, symbolizations, and infix notations defined so far.
The option Action
The Action option and its possible values.
The
Notation,
Symbolize and
InfixNotation option
Action determines what a notation statement does with the rules it generates. The default value of the
Action option is
CreateNotationRules, which causes the generated notation rules to be entered into the system.
This creates a notation for pure functions more in keeping with that of traditional mathematics. |
Pure functions now use this new notation.
| Out[44]= |  |
|
If the
Action option is set to
RemoveNotationRules, then the notation rules are removed from the system. Using the option value
RemoveNotationRules in a notation statement is equivalent to using the appropriate
RemoveNotation,
RemoveSymbolize or
RemoveInfixNotation statement.
This removes the above notation from the system. |
Now the special notation for functions is no longer defined.
| Out[46]= |  |
|
By setting the option
Action to
PrintNotationRules, you can view the rules generated by a notation statement. Examining the
MakeExpression and
MakeBoxes rules is often useful to give you an idea of the underlying box structures that are used in your notation statement.
The option WorkingForm
The WorkingForm option and some of its possible values.
The option
WorkingForm specifies the
form or
environment the
Notation,
Symbolize or
InfixNotation statement is generated in. The typical values of
WorkingForm are
StandardForm or
TraditionalForm; any notations created would only apply in
StandardForm or
TraditionalForm (respectively). However,
WorkingForm can be set to any form you define, for instance
LogicForm,
PhysicsForm etc.
When the option
WorkingForm is set to
Automatic the
Notation,
Symbolize or
InfixNotation statement will be created in the ambient default input and output forms. These default forms can be set through the option inspector and they govern what the default input form and the default output form will be. You can see the current settings of these options in your notebook by evaluating
Options[$FrontEnd, CommonDefaultFormatTypes].
This creates TraditionalForm notations for the vector calculus functions Div, Curl and the wrapper Vector. |
These notations behave as expected.
Out[51]//TraditionalForm= |
| |  |
Out[52]//FullForm= |
| |  |
| Out[53]= |  |
|
The option AutoLoadNotationPalette
| | |
| AutoLoadNotationPalette | True, undefined | the notation palette will be loaded when the Notation package loads |
| False | the notation palette will not be loaded when the Notation package loads |
The option AutoLoadNotationPalette and its behavior.
If you are designing a package you may want to hide the
notation palette when the user loads the
Notation package so as not to confuse them. You can set the boolean variable
AutoLoadNotationPalette inside your package to achieve this. If
AutoLoadNotationPalette has been set to
False then the notation palette will not be loaded when the
Notation package is loaded. If the value is undefined or
True, the notation palette will be loaded when the
Notation package loads. In input form the statement would look like the following.
Statement forcing the notation palette not to load when the Notation package loads. |
The function ClearNotations
Syntax of ClearNotations.
If you would like to re-enter a set of notations or would like to make a "clean start" you can use the
ClearNotations[] command to erase all notations, symbolizations and infix notations present in the system. Using
ClearNotations[] should not affect other packages or definitions you have made to
MakeExpression or
MakeBoxes.
Wipe all notations, symbolizations and infix notations. |