Group Abstract Group Abstract

Message Boards Message Boards

0
|
31 Views
|
0 Replies
|
0 Total Likes
View groups...
Share
Share this post:

How do you register functional properties in Mathematica?

Posted 2 days ago

The program I'm working on requires me to make my function compatible with Wolfram's functional properties suite. This includes functions such as FunctionDomain, FunctionRange, and FunctionConvexity.

As far as I am aware, there is no way to accomplish this with public-facing functions. I was able to find a function which may be able to help; however, I can find no information on its syntax. The function is SpecialFunctions`RegisterFunctionProperties.

Other functions from this context give promising evidence that this may be what I'm looking for. Namely, SpecialFunctions`RealUnivariateProperties, SpecialFunctions`AssumptionProperties, and SpecialFunctions`SingularityProperties retrieve lists of built-in functions' properties:

In[1]: SpecialFunctions`RealUnivariateProperties[Exp[x], x] //Short
Out[1]: <|DomainEndpoints->{{{-Infinity,0,Indeterminate},{Infinity,Infinity,Indeterminate}}},
Discontinuities->{},
GlobalMonotonicity->1,<<8>>,
InflectionSingularities->False,
Range->Function[System`FunctionPropertyDataDump`y,System`FunctionPropertyDataDump`y>0],
Injective->True|>

However, setting these to return properties of a custom function does not appear to affect how they are interpreted by functions like FunctionDomain. I believe that the register function may be necessary to fully integrate user-defined properties. If anyone can figure out the syntax for it or can find an alternative method to integrate functional properties, I would be immensely grateful.

POSTED BY: Liam Nielson
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard