 From
 Vladimir Bondarenko
Subject  Axiomdeveloper AXIOM BUG: D(1, z)
Date  Mon, 17 Jan 2005 07:35:49 +0200
Hi *,
A terrible bug in differentiation.
axiom D(sin(z)^2+cos(z)^2, z)
Type: Expression(Integer)
axiom D(simplify(sin(z)^2+cos(z)^2), z)
Type: Expression(Integer)
BUT
axiom D(1, z)
There are 5 exposed and 0 unexposed library operations named D
having 2 argument(s) but none was determined to be applicable.
Use HyperDoc Browse, or issue
)display op D
to learn more about the available operations. Perhaps
packagecalling the operation or using coercions on the arguments
will allow you to apply the operation.
Cannot find a definition or applicable library operation named D
with argument type(s)
PositiveInteger
Variable(z)
Perhaps you should use "@" to indicate the required return type,
or "$" to specify which version of the function you need.
D(cosh(z)^2sinh(z)^2, z)
Type: Expression(Integer)
axiom D(simplify(cosh(z)^2sinh(z)^2), z)
Type: Expression(Integer)
 Mon, 17 Jan 2005 22:28:18 0600 reply
D(1,z) is not a valid type signature. Try
axiom D(1::Expression(Integer),z)
Type: Expression(Integer)
In Axiom it is important to know the type of the arguments to a function.
In this case you gave the D function a PositveInteger? and is does not
have a path to coerce PositiveInteger > Expression(Integer).
Whenever you see the message about exposed and unexposed library functions
the meaning is that you didn't match the type of the arguments and the
interpreter couldn't get there from here.
The coercion/conversion tower in the interpreter is not well defined
and sometimes it needs help.
Tim
 Mon, 17 Jan 2005 22:28:35 0600 replyStatus: open => closed
Category: Axiom Mathematics => Axiom Interpreter
