Not an error, rather what I believe may be misleading, if I understand
correctly.
In “Example: Verified Fast Exponentiation”
http://ats-lang.sourceforge.net/DOCUMENT/INT2PROGINATS/HTML/HTMLTOC/x3252.html
An absprop MUL is defined, then follows the declaration of a dynamic
function mul_elt_elt, returning a proof of MUL(x, y, xy).
This function has no body, and indeed, there is no way for a dynamic
function to instantiate a MUL, as it’s an abstract proposition, thus, not
defining any dynamic constructor which would be usable from the body of a
dynamic function. This function declared with fun, behaves like a
praxi, and I though this may be better to use praxi.
I just wondered what about systematically use praxi is these cases, as it
underlines it’s axiomatic (and one should always be careful with axioms).
Or is there a reason for it to be declared with fun instead of praxi?
Especially in the documentation, praxi would be better, isn’t it?
There are two others in “Linear Channels for Asynchronous IPC”
http://ats-lang.sourceforge.net/DOCUMENT/INT2PROGINATS/HTML/HTMLTOC/x4355.html
queue_isnil declared with fun, returning a proof of ISNIL(id, b) and
ISNIL is an absprop
queue_isful declared with fun, returning a proof of ISFUL(id, b) and
ISFUL is an absprop too.
Unless I’m wrong…Le mercredi 28 janvier 2015 18:49:32 UTC+1, Yannick Duchêne a écrit :
I don’t remember of any already existing one, so I’m opening this thread
where to report any errors in the docs, instead of opening a new thread for
each possible eventual errors (saying that, I don’t want to mean there are
many).