value - evaluate inert functions
|
Calling Sequence
|
|
value(f)
|
|
Parameters
|
|
f
|
-
|
any mathematical expression
|
|
|
|
|
Description
|
|
•
|
When Maple has two functions of the same name where one begins with a capital letter and one with lower case, the capitalized function is frequently an inert representation of the lower case function. More generally, any function whose name starts with the % character, as in %F, is an inert representation for the function F. This feature provides inert representations for any Maple or user-defined function.
|
•
|
During computations, inert functions remain unevaluated (the operations they represent remain unperformed). The value command maps these inert functions, such as Int or %exp, into the corresponding active functions int and exp. Note that, irrespective of the value command, while computing with inert functions, the differentiation, expansion, and printing properties of the active functions they represent (when defined using extension mechanisms, such as routines like `diff/F`) are automatically taken into account by the system.
|
•
|
The value function can also be extended to evaluate any function call, say F, even if there is no active version of it, by defining a procedure named `value/F` which takes the same arguments as F (for example, F(x)) and returns the desired evaluation.
|
|
|
Examples
|
|
This is the active form of int
>
|
|
| (1) |
This is an inert representation for the same integral, that can be evaluated when desired using value
>
|
|
| (2) |
>
|
|
| (3) |
Some frequently used inert representations:
>
|
|
| (4) |
>
|
|
| (5) |
>
|
|
| (6) |
In this example an evaluation rule is defined for even when there exists no corresponding active function
>
|
|
| (7) |
>
|
|
| (8) |
The value command understands any function whose name starts with the character as being an inert function
>
|
|
| (9) |
>
|
|
| (10) |
>
|
|
| (11) |
The same inert representation mechanism works with any Maple function or procedure
>
|
|
| (12) |
>
|
|
| (13) |
>
|
|
| (14) |
>
|
|
| (15) |
Any differentiation, expansion or printing rule defined using the extension mechanism (e.g routines `diff/F`) are automatically taken into account by the system
>
|
|
| (16) |
>
|
|
| (17) |
>
|
|
| (18) |
>
|
|
| (19) |
>
|
|
| (20) |
With package commands, the mapping from inert to active is performed taking into account the last package loaded at the time of performing the operation. For instance, a Transpose command exists in different packages with different meanings; in this example LinearAlgebra is the last package loaded, so that LinearAlgebra:-Transpose is the active form of the inert %Transpose
>
|
|
>
|
|
| (21) |
>
|
|
| (22) |
>
|
|
| (23) |
The inert representation also works with indexed functions, for instance as those used in the Physics package
>
|
|
| (24) |
>
|
|
| (25) |
>
|
|
| (26) |
|
|
See Also
|
|
DESol, Diff, eval, Eval, exp, GAMMA, hypergeom, Hypergeom, int, Int, Intat, limit or Limit, LinearAlgebra, normal, Normal, Physics, product or Product, RESol, sum, Sum
|
|