Changeset c7ae4d in git for libpolys/polys/ext_fields/algext.cc
- Timestamp:
- Aug 31, 2016, 12:30:31 AM (8 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- e180f5613c396d33aa3316cd450d3a1e80d69129
- Parents:
- 7e2307f3485ab92e550254c1212dafc2940b41ea
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libpolys/polys/ext_fields/algext.cc
r7e2307 rc7ae4d 1361 1361 } 1362 1362 1363 char* naCoeffName(const coeffs r) // currently also for tranext. 1364 { 1365 const char* const* p=n_ParameterNames(r); 1366 int l=0; 1367 int i; 1368 for(i=0; i<n_NumberOfParameters(r);i++) 1369 { 1370 l+=(strlen(p[i])+1); 1371 } 1372 static char s[200]; 1373 s[0]='\0'; 1374 snprintf(s,10+1,"%d",r->ch); /* Fp(a) or Q(a) */ 1375 char tt[2]; 1376 tt[0]=','; 1377 tt[1]='\0'; 1378 for(i=0; i<n_NumberOfParameters(r);i++) 1379 { 1380 strcat(s,tt); 1381 strcat(s,p[i]); 1382 } 1383 return s; 1384 } 1385 1363 1386 number naChineseRemainder(number *x, number *q,int rl, BOOLEAN /*sym*/,CFArray &inv_cache,const coeffs cf) 1364 1387 { … … 1414 1437 #endif 1415 1438 1416 cf->cfCoeffString = naCoeffString; 1439 cf->cfCoeffString = naCoeffString; 1440 cf->cfCoeffName = naCoeffName; 1417 1441 1418 1442 cf->cfGreaterZero = naGreaterZero; … … 1586 1610 } 1587 1611 1588 char* n2pCoeffString(const coeffs r) // currently also for tranext.1589 { 1590 const char* const* p=n_ParameterNames( r);1612 char* n2pCoeffString(const coeffs cf) 1613 { 1614 const char* const* p=n_ParameterNames(cf); 1591 1615 int l=0; 1592 1616 int i; 1593 for(i=0; i< n_NumberOfParameters(r);i++)1617 for(i=0; i<rVar(n2pRing);i++) 1594 1618 { 1595 1619 l+=(strlen(p[i])+1); 1596 1620 } 1597 char *s=(char *)omAlloc(l+10+1); 1621 char *cf_s=nCoeffString(n2pRing->cf); 1622 char *s=(char *)omAlloc(l+5+strlen(cf_s)); 1598 1623 s[0]='\0'; 1599 snprintf(s,10+1,"%d",r->ch); /* Fp(a) or Q(a) */ 1624 snprintf(s,strlen(cf_s)+2,"%s",cf_s); 1625 omFree(cf_s); 1600 1626 char tt[2]; 1627 tt[0]='['; 1628 tt[1]='\0'; 1629 strcat(s,tt); 1601 1630 tt[0]=','; 1631 for(i=0; i<rVar(n2pRing);i++) 1632 { 1633 strcat(s,p[i]); 1634 if (i+1!=rVar(n2pRing)) strcat(s,tt); 1635 else { tt[0]=']'; strcat(s,tt); } 1636 } 1637 return s; 1638 } 1639 1640 char* n2pCoeffName(const coeffs cf) 1641 { 1642 const char* const* p=n_ParameterNames(cf); 1643 int l=0; 1644 int i; 1645 for(i=0; i<rVar(n2pRing);i++) 1646 { 1647 l+=(strlen(p[i])+1); 1648 } 1649 char *cf_s=nCoeffString(n2pRing->cf); 1650 char s[200]; 1651 s[0]='\0'; 1652 snprintf(s,strlen(cf_s)+2,"%s",cf_s); 1653 omFree(cf_s); 1654 char tt[2]; 1655 tt[0]='['; 1602 1656 tt[1]='\0'; 1603 for(i=0; i<n_NumberOfParameters(r);i++) 1604 { 1605 strcat(s,tt); 1657 strcat(s,tt); 1658 tt[0]=','; 1659 for(i=0; i<rVar(n2pRing);i++) 1660 { 1606 1661 strcat(s,p[i]); 1662 if (i+1!=rVar(n2pRing)) strcat(s,tt); 1663 else { tt[0]=']'; strcat(s,tt); } 1607 1664 } 1608 1665 return s; … … 1659 1716 cf->is_domain=TRUE; 1660 1717 1661 cf->cfCoeffString = n2pCoeffString; 1718 cf->cfCoeffString = n2pCoeffString; 1719 cf->cfCoeffName = n2pCoeffName; 1662 1720 1663 1721 cf->cfGreaterZero = naGreaterZero;
Note: See TracChangeset
for help on using the changeset viewer.