[Om] Named functions in OpenMath

Wenzel, Ken Ken.Wenzel at iwu.fraunhofer.de
Fri May 8 10:43:10 CEST 2015

Thank you for your suggestions.

I have one last question regarding symbols (OMS) vs. references (OMR):
I've developed an RDF representation for OpenMath objects that allows to encode arbitrary OM objects in RDF.

For example, the expression "x^2" may be encoded as (using the Turtle notation):

@prefix : <http://numerateweb.org/vocab/math#> .
_:expr a :Application ; :operator <http://www.openmath.org/cd/arith1#power> ; :arguments (_:x 2) .
_:x a :Variable ; :name "x" .

As can be seen, the operator <http://www.openmath.org/cd/arith1#power> has no type information.
It may be possible that it is defined (somewhere else) as a symbol by

<http://www.openmath.org/cd/arith1#power> a :Symbol .

or that it is just a reference to some kind of lambda expression.

If i convert the RDF representation to OpenMath XML and I don't know any facts about
<http://www.openmath.org/cd/arith1#power> should I suppose that it is a symbol or a reference?

Best regards,

Von: Paul Libbrecht [paul at hoplahup.net]
Gesendet: Mittwoch, 6. Mai 2015 11:22
An: David Carlisle; Wenzel, Ken; om at openmath.org
Betreff: Re: [Om] Named functions in OpenMath


I think all the hints presented here are perfect.
More or less, the question of "what is a context" is something left to you.

If you do it using CDs, then the context can be pretty broad, as broad
as the public wen where anyone can find a CD and leverage it to do
things about the named functions (e.g. use an FMP and calculations,
compute types, decorate rendering, perform indexing...).
Since the world is the scope, having ambiguity is probably troublesome;
so you'd better have a namespacing mechanism.

If you do it using prog1, I think ylou're more free to define the scope
of the context.
E.g. it could be a document which you load and contain the OMOBJs, it
could be an interactive session, or a website...

Using structure sharing, I think you restrict that to only well formed
xml documents.


On 5/05/15 13:12, David Carlisle wrote:
> On 05/05/2015 11:39, Wenzel, Ken wrote:
>> OK, I understand. Would you suggest that the FMPs content should be
>> simply
>> fns1.lambda[$a, $b -> $a * $b]
>> or should I use some kind of equation like
>> mycd.area = fns1.lambda[$a, $b -> $a * $b]
> the second, or mycd.area(a,b)=a*b
>> The problem with OpenMath is that I don't have the possibility to
>> declare
>> http://example.org/mycd#area
>> as a symbol AND as the lambda expression at the same time.
> The original model split that between CDs and the object syntax it is
> true.
> There is of course nothing to stop you having a CD that allows the
> definition of symbols within the language.
> For example the programming cd
> http://www.openmath.org/cd/prog1.xhtml
> has constructs for "let" and "function definition" which give
> local interpretation to OMV  which may then be used
> to reference those functions by name.
> David
> ________________________________
> The Numerical Algorithms Group Ltd is a company registered in England
> and Wales with company number 1249803. The registered office is:
> Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
> This e-mail has been scanned for all viruses by Microsoft Office 365.
> ________________________________
> _______________________________________________
> Om mailing list
> Om at openmath.org
> http://openmath.org/mailman/listinfo/om

More information about the Om mailing list