create a function
Renata Cereja <[email protected]> Wed, 18 Mar 2009 21:58:23 -0300
| Newsgroups | gmane.comp.mathematics.axiom.user |
|---|---|
| Message-ID | <[email protected]> |
I created the following function:
AddPoints(func:POLY(INT),P1:LIST(INT),P2:LIST(INT)):LIST(FRAC(INT)) ==
z:=1
if (P1.3 = 1) and (P2.3 = 1) then
if (P1.1 < P2.1) then
m:= (P2.2 - P1.2)/(P2.1 - P1.1)
if (P2.1 < P1.1) then
m:= (P1.2 - P2.2)/(P1.1 - P2.1)
if (P1.1 = P2.1) and (P1.2 ~= P2.2) then
z:=0
if (P1.1 = P2.1) and (P1.2 = P2.2) then
dx(x) == D(func,x)
m:= dx(P1.1)/(2*P1.2)
if (z = 1) then
a := m^2
xsoma := (-(P1.1 + P2.1 - a))
ysoma := ((m*(xsoma-P1.1) + P1.2) * (-1))
ponto := [xsoma,ysoma,z]
ponto
else
[0,1,z]
else
if (P1.3 = 0) then
ponto := P2
else
ponto := P1
ponto
When I use this function, the following message appears before the result:
Compiled code for dx has been cleared.
Compiled code for AddPoints has been cleared.
1 old definition(s) deleted for function or rule dx
Your expression cannot be fully compiled because it contains an
integer expression (for x ) whose sign cannot be determined (in
general) and so must be specified by you. Perhaps you can try
substituting something like
(x :: PI)
or
(x :: NNI)
into your expression for x .
AXIOM will attempt to step through and interpret the code.
Cannot compile map: dx
We will attempt to interpret the code.
Compiling function AddPoints with type (Polynomial Integer,List
Integer,List Integer) -> List Fraction Integer
Compiled code for dx has been cleared.
Compiled code for AddPoints has been cleared.
1 old definition(s) deleted for function or rule dx
Compiling function dx with type PositiveInteger -> Integer
What can I do to this not happen? Because I have another function that uses
this one and isn't working as well as I wanted. I think this happen because
of the function AddPoints.
Thanks,
Cereja
_______________________________________________
Axiom-mail mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/axiom-mail