hasfun
test for a specified function
Calling Sequence
Parameters
Description
Examples
hasfun(e, f)
hasfun(e, f, x)
e
-
expression
f
function name(s)
x
(optional) expression
The hasfun command searches an expression e for the function f, or, if f is a list or set of names (of functions), then hasfun searches e for any one of these functions. It returns true if it finds one, false otherwise.
If the third optional argument x is specified, the hasfun function tests if the expression e has function(s) f of x, in the sense that x occurs in one or more arguments of the call to f. A typical application is in integration where you might want to test if the integrand has a special function of a variable x.
For a positive match, x has to occur as an exact subexpression as defined by Maple's op function. See has for examples of what this means.
If the subexpression x that needs to occur in the arguments to f is a list or set, it needs to be enclosed in a list or set itself, otherwise hasfun will search for the members of x only.
e≔sin⁡x+exp⁡3⁢y+1
e≔sin⁡x+ⅇ3⁢y+1
hasfun⁡e,exp
true
hasfun⁡e,cos
false
hasfun⁡e,exp,y
hasfun⁡e,exp,x
hasfun⁡e,exp,x,y
hasfun⁡e,cos,sin,x
The function name f can be any expression.
e≔D⁡x⁡t−x⁡t
hasfun⁡e,D⁡x,t
The required subexpression x can also be any expression, but it needs to occur as a subexpression as defined by Maple's op function. Below, x+y is not a subexpression of x+y+z.
e≔g⁡2⁢f⁡x+y+z−2
hasfun⁡e,f,x+y
If the subexpression you are looking for is a list or set, you need to enclose it in a list or set itself. The first calling sequence looks for the variables k or m occurring; the second for the list k,m; and the third for the list m,n:
e≔1+Hypergeom⁡m,n,,z
hasfun⁡e,Hypergeom,k,m
hasfun⁡e,Hypergeom,m,n
See Also
has
hastype
op
selectfun
type/function
Download Help Document