[BACK]Return to dp-supp.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / builtin

Diff for /OpenXM_contrib2/asir2000/builtin/dp-supp.c between version 1.45 and 1.46

version 1.45, 2007/09/16 09:08:25 version 1.46, 2007/09/19 05:42:59
Line 45 
Line 45 
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  *   *
  * $OpenXM: OpenXM_contrib2/asir2000/builtin/dp-supp.c,v 1.44 2007/09/15 10:17:08 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/builtin/dp-supp.c,v 1.45 2007/09/16 09:08:25 noro Exp $
 */  */
 #include "ca.h"  #include "ca.h"
 #include "base.h"  #include "base.h"
Line 71  void print_composite_order_spec(struct order_spec *spe
Line 71  void print_composite_order_spec(struct order_spec *spe
  *   *
  */   */
   
   static NODE RatDenomList;
   
   void init_denomlist()
   {
           RatDenomList = 0;
   }
   
   void add_denomlist(P f)
   {
           NODE n;
   
           if ( OID(f)==O_P ) {
                   MKNODE(n,f,RatDenomList); RatDenomList = n;
           }
   }
   
   LIST get_denomlist()
   {
           LIST l;
   
           MKLIST(l,RatDenomList); RatDenomList = 0;
           return l;
   }
   
 void dp_ptozp(DP p,DP *rp)  void dp_ptozp(DP p,DP *rp)
 {  {
         MP m,mr,mr0;          MP m,mr,mr0;
Line 448  void dp_prim(DP p,DP *rp)
Line 472  void dp_prim(DP p,DP *rp)
         P *w;          P *w;
         Q *c;          Q *c;
         Q dvr;          Q dvr;
           NODE tn;
   
         if ( !p )          if ( !p )
                 *rp = 0;                  *rp = 0;
Line 502  void dp_prim(DP p,DP *rp)
Line 527  void dp_prim(DP p,DP *rp)
                                 NEXTMP(mr0,mr); divsp(CO,m->c,g,&mr->c); mr->dl = m->dl;                                  NEXTMP(mr0,mr); divsp(CO,m->c,g,&mr->c); mr->dl = m->dl;
                         }                          }
                         NEXT(mr) = 0; MKDP(p->nv,mr0,*rp); (*rp)->sugar = p->sugar;                          NEXT(mr) = 0; MKDP(p->nv,mr0,*rp); (*rp)->sugar = p->sugar;
                           add_denomlist(g);
                 }                  }
         }          }
 }  }
Line 805  void dp_red(DP p0,DP p1,DP p2,DP *head,DP *rest,P *dnp
Line 831  void dp_red(DP p0,DP p1,DP p2,DP *head,DP *rest,P *dnp
         } else {          } else {
                 ezgcdpz(CO,(P)c1,(P)c2,&g);                  ezgcdpz(CO,(P)c1,(P)c2,&g);
                 divsp(CO,(P)c1,g,&a); c1 = (Q)a; divsp(CO,(P)c2,g,&a); c2 = (Q)a;                  divsp(CO,(P)c1,g,&a); c1 = (Q)a; divsp(CO,(P)c2,g,&a); c2 = (Q)a;
                   add_denomlist(g);
         }          }
         NEWMP(m); m->dl = d; chsgnp((P)c1,&m->c); NEXT(m) = 0; MKDP(n,m,s); s->sugar = d->td;          NEWMP(m); m->dl = d; chsgnp((P)c1,&m->c); NEXT(m) = 0; MKDP(n,m,s); s->sugar = d->td;
         *multp = s;          *multp = s;

Legend:
Removed from v.1.45  
changed lines
  Added in v.1.46

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>