Changeset 5efbf9 in git for libpolys


Ignore:
Timestamp:
May 21, 2016, 1:18:14 AM (8 years ago)
Author:
Adi Popescu <adi_popescum@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
bdebb84b7e5e44a3f0d26a19f9d7ad9a6470e0d6
Parents:
d3963ac9165e16e5233bba73e3dfc49b9c87640e
git-author:
Adi Popescu <adi_popescum@yahoo.de>2016-05-21 01:18:14+02:00
git-committer:
Hans Schoenemann <hannes@mathematik.uni-kl.de>2016-05-23 16:43:26+02:00
Message:
add: posInL and T orderings for Ring case
added tests
Q: Is there a possibility to activate PreIntegerCheck from interpretor?
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libpolys/polys/monomials/p_polys.h

    rd3963a r5efbf9  
    15241524}
    15251525
     1526// This is the equivalent of pLmCmp(p,q) != -currRing->OrdSgn for rings
     1527// It is used in posInLRing and posInTRing
     1528static inline int p_LtCmpOrdSgnDiffM(poly p, poly q, const ring r)
     1529{
     1530  if(r->OrdSgn == 1)
     1531  {
     1532    return(p_LtCmp(p,q,r) != -1);
     1533  }
     1534  else
     1535  {
     1536    return((p_LmCmp(p,q,r) == -1) || ((p_LmCmp(p,q,r) == 0) && (p_LmCmp(p,q,r) == 1)));
     1537  }
     1538}
     1539
     1540// This is the equivalent of pLmCmp(p,q) != currRing->OrdSgn for rings
     1541// It is used in posInLRing and posInTRing
     1542static inline int p_LtCmpOrdSgnDiffP(poly p, poly q, const ring r)
     1543{
     1544  if(r->OrdSgn == 1)
     1545  {
     1546    return((p_LmCmp(p,q,r) == -1) || ((p_LmCmp(p,q,r) == 0) && (p_LmCmp(p,q,r) == 1)));
     1547  }
     1548  else
     1549  {
     1550    return(p_LtCmp(p,q,r) != -1);
     1551  }
     1552}
     1553
     1554// This is the equivalent of pLmCmp(p,q) == -currRing->OrdSgn for rings
     1555// It is used in posInLRing and posInTRing
     1556static inline int p_LtCmpOrdSgnEqM(poly p, poly q, const ring r)
     1557{
     1558  return(p_LtCmp(p,q,r) == -r->OrdSgn);
     1559}
     1560
     1561// This is the equivalent of pLmCmp(p,q) == currRing->OrdSgn for rings
     1562// It is used in posInLRing and posInTRing
     1563static inline int p_LtCmpOrdSgnEqP(poly p, poly q, const ring r)
     1564{
     1565  return(p_LtCmp(p,q,r) == r->OrdSgn);
     1566}
     1567
    15261568/// returns TRUE if p1 is a skalar multiple of p2
    15271569/// assume p1 != NULL and p2 != NULL
Note: See TracChangeset for help on using the changeset viewer.