American Citizen on Mon, 30 Jun 2025 17:44:33 +0200


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

question on gp2c-run results


Hello:

I get the following results using the test-polred.gp file (included in this post)

? \r test-polred.gp
X = 1.4142135623730950488016887242096980786
Y = 1.7320508075688772935274463415058723670
poly_x = x^2 - 2
poly_y = x^2 - 3
[[x, x^2 - 2], [x, x^2 - 3]]
? \q
Goodbye!

but running gp2c-run test-polred.gp has an unusual result for me.

owner@localhost:~/math/Herons> gp2c-run test-polred.gp
test-polred.gp.c: In function ‘test’:
test-polred.gp.c:40:11: error: too many arguments to function ‘polred0’
   40 |   red_x = polred0(poly_x, 0, NULL);
      |           ^~~~~~~
In file included from /usr/local/include/pari/pari.h:47,
                 from test-polred.gp.c:2:
/usr/local/include/pari/paridecl.h:2399:9: note: declared here
 2399 | GEN     polred0(GEN x, long flag);
      |         ^~~~~~~
test-polred.gp.c:41:11: error: too many arguments to function ‘polred0’
   41 |   red_y = polred0(poly_y, 0, NULL);
      |           ^~~~~~~
/usr/local/include/pari/paridecl.h:2399:9: note: declared here
 2399 | GEN     polred0(GEN x, long flag);
      |         ^~~~~~~
owner@localhost:~/math/H
---------------------------- test-polred.gp ---------------------------------

test(Pt)=
{
  my([X,Y]=Pt);
  print("X = ",X);
  print("Y = ",Y);
  my(poly_x,poly_y,red_x,red_y);
  poly_x = algdep(X,2);
  poly_y = algdep(Y,4);
  print("poly_x = ",poly_x);
  print("poly_y = ",poly_y);
  red_x = polred(poly_x);
  red_y = polred(poly_y);
  return([red_x,red_y]);
};
k=test([sqrt(2),sqrt(3)]);
print(k);
---------------------------

is this normal and to be expected for gp2c-run ?

Randall