Sindbad~EG File Manager

Current Path : /usr/home/beeson/Otter-Lambda/yyy/
Upload File :
Current File : /usr/home/beeson/Otter-Lambda/yyy/polynoms.h

typedef term POLYnomial;
#define LEADING(t)  ARG(ARITY(t)-1,(t))
#define DEGREE(t)  (unsigned short)(ARITY(t)-1)
MEXPORT_POLYVAL int makepoly(term t,term x, POLYnomial *ans);  /* write t as POLY in x */
MEXPORT_POLYVAL int homogeneous_poly(term t, term x, term y, POLYnomial *ans);
MEXPORT_POLYVAL int changetopoly(term t, term *x, POLYnomial *ans);  /* find x and write t as POLY in x */
MEXPORT_POLYVAL term poly_term(POLYnomial, term);  /* convert POLYnomial to ordinary term */
MEXPORT_POLYVAL int polygcd(term u, term v, term *ans);
MEXPORT_POLYVAL int listpolygcd(term *, unsigned, term *);
MEXPORT_POLYVAL POLYnomial polynomial_gcd(POLYnomial,POLYnomial);  /* works on POLY's only */
MEXPORT_POLYVAL int ispolyin(term u, term x);   /* see if u is a polynomial in x; return 1 if it is */
MEXPORT_POLYVAL int monomial_form(term t, term x, long *deg, term *coef); /* zero return is success */
MEXPORT_POLYVAL POLYnomial polyadd(POLYnomial a, POLYnomial b);
MEXPORT_POLYVAL POLYnomial polysub(POLYnomial a, POLYnomial b);
MEXPORT_POLYVAL POLYnomial polyneg(POLYnomial);
MEXPORT_POLYVAL POLYnomial polyexp(POLYnomial,unsigned long);
MEXPORT_POLYVAL int polymult(POLYnomial a, POLYnomial b, POLYnomial *ans);
MEXPORT_POLYVAL void pseudodiv(POLYnomial u, POLYnomial v, POLYnomial *q, POLYnomial *r, term *cc);
MEXPORT_POLYVAL int polydiv(term x, term u, term v, term *q, term *r);
MEXPORT_POLYVAL int pp(POLYnomial e, term *content, POLYnomial *pp);
MEXPORT_POLYVAL POLYnomial multpolybyconstant(term c, POLYnomial p);
MEXPORT_ALGEBRA term squarefree(POLYnomial p,term *c);  /* returns product of POLYnomials */
MEXPORT_POLYVAL POLYnomial polyderiv(POLYnomial t);
MEXPORT_POLYVAL int rational_function(term,term);
MEXPORT_POLYVAL int polyprod(term,term);
MEXPORT_POLYVAL int polyquo(term,term);
MEXPORT_POLYVAL int polypower(term,term);
MEXPORT_POLYVAL int grat(term,term);
MEXPORT_POLYVAL int gpoly(term,term);
MEXPORT_POLYVAL int intpolynomial(POLYnomial);
MEXPORT_POLYVAL int cancelgcd_aux(term, term, term *, term *);
MEXPORT_POLYVAL void extended_polygcd(POLYnomial u, POLYnomial v, POLYnomial *alpha, POLYnomial *beta, POLYnomial *ans);
MEXPORT_POLYVAL int partialfractions(term t, term x, term *ans);
MEXPORT_POLYVAL int divideoutpowers(term, term, term, unsigned *, term *);
MEXPORT_POLYVAL int polyform(term, term, POLYnomial *);
#define MAXDEGREE 256      /* maximum degree of polynomial, + 1  */
MEXPORT_POLYVAL void set_types(term *t);

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists