[om] A Proposal for extending OpenMath with structure sharing

Richard Fateman fateman at cs.berkeley.edu
Thu Apr 4 18:05:17 CEST 2002


If OM has an intention of providing notation and
semantics for an assign operation, then it is
  seems to me it has become a programming language with
all that baggage as well.
   If you want to define "semantic sharing" it can
be done, in most reasonable cases, with lambda-binding.
(I think this will do all DAGs, but you might find
a use for cyclic structures...)
   Thus OM is free to  compress its transmissions by
any kind of syntax, it seems to me.

If I were transmitting data between two systems I
would want it compressed.  I would also probably
just send an encoding of the underlying lisp structure
that could be read by any lisp system on the receiving
end, or perhaps spew out some kind of infix string
version of the expression, if the remote end was
going to do nothing but print it for a user.

Actually, I AM transmitting data between systems,
and have been for 5 years or so. Tilu gets more that
150 hits a day, some from the associated web-page
input, and some from the program  now distributed
on all Macintosh computers (Graphing calculator)
which has a button that sends tilu a query.

I have had to address issues which may (or may not... I
cannot tell) have been addressed somewhere in OM.

Like:
   the  answer to your question is your choice of
the following possibilities...
   the answer to your question depends on some information
that you have not supplied, but might be one of the
following possibilities...

and some other items as well.

RJF


Andrew Solomon wrote:

> Thanks to Steve and James - everything is now clear (assuming James meant X-Y = [-2,2]).
> 
> I also agree that syntactic sharing is probably a triviality and maybe it doesn't need to be
> considered in the OM standard at all, but only at the encoding layer?  It would surely be no problem
> to do it automatically e.g with gzip as Steve said.
> 
> Now to my next stage of catching up.  On the subject of semantic sharing, Steve wrote:
> 
>>Note that Random might also be specified otherwise. Since we don't have a 
>>notion of evaluation at OpenMath level, each Symbol, for which it is relevant 
>>would need to define how shared instances  behaved in various contexts. 
>>
> 
> The idea of semantic sharing seems no longer to have anything to do with
> DAGs instead of trees (which is a data compression issue) but more to do with
> identity in terms of bound variables.
> 
> Back to Steve's example, to do semantic sharing, wouldn't you just want
> to define something like a binding symbol "assign"? (Not sure if OM
> can accommodate this yet, but...)
> 
> Assign[x, Random(Integer)].(x - x)
> 
> Is there so much latitude in how identity is defined in various places that this could be 
> ambiguous? Why would this need to be defined in each situation?
> 
> Andrew
> 
> 
> 
> 
> --
> om at openmath.org  -  general discussion on OpenMath
> Post public announcements to om-announce at openmath.org
> Automatic list maintenance software at majordomo at openmath.org
> Mail om-owner at openmath.org for assistance with any problems
> 


--
om at openmath.org  -  general discussion on OpenMath
Post public announcements to om-announce at openmath.org
Automatic list maintenance software at majordomo at openmath.org
Mail om-owner at openmath.org for assistance with any problems



More information about the Om mailing list