Changeset 06879b7 in git
- Timestamp:
- May 15, 2008, 7:24:37 PM (15 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'a800fe4b3e9d37a38c5a10cc0ae9dfa0c15a4ee6')
- Children:
- f0aec5f202b35e6e5b438f20d75f4b4259253ecd
- Parents:
- 5eef8d3b7ed576b438d4c0ff4dee494bee712c3f
- Location:
- kernel
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/gring.cc
r5eef8d r06879b7 7 7 * Author: levandov (Viktor Levandovsky) 8 8 * Created: 8/00 - 11/00 9 * Version: $Id: gring.cc,v 1.5 2 2008-04-18 12:11:40motsak Exp $9 * Version: $Id: gring.cc,v 1.53 2008-05-15 17:24:36 motsak Exp $ 10 10 *******************************************************************/ 11 11 #include "mod2.h" … … 31 31 // dirty tricks: 32 32 #include "p_MemAdd.h" 33 34 bool bUseExtensions = true; 33 35 34 36 /* global nc_macros : */ … … 2835 2837 gnc_p_ProcsSet(rGR, p_Procs); 2836 2838 2837 if(rIsSCA(rGR) )2839 if(rIsSCA(rGR) && bUseExtensions) 2838 2840 { 2839 2841 sca_p_ProcsSet(rGR, p_Procs); … … 3275 3277 { 3276 3278 // currently only super-commutative extension deals with factors. 3277 return sca_SetupQuotient(rGR, rG); 3279 if( bUseExtensions ) 3280 return sca_SetupQuotient(rGR, rG); 3281 3282 return false; 3278 3283 } 3279 3284 -
kernel/sca.cc
r5eef8d r06879b7 7 7 * Author: motsak (Oleksandr Motsak) 8 8 * Created: 2006/12/18 9 * Version: $Id: sca.cc,v 1.1 4 2008-05-09 09:27:24 SingularExp $9 * Version: $Id: sca.cc,v 1.15 2008-05-15 17:24:36 motsak Exp $ 10 10 *******************************************************************/ 11 11 … … 1253 1253 return false; 1254 1254 1255 if(ncRingType(rG) != nc_skew) 1256 return false; 1255 #if MYTEST 1256 PrintS("sca_SetupQuotient(rGR, rG)"); 1257 #endif 1258 1259 1260 // if( (ncRingType(rG) != nc_skew) || (ncRingType(rG) != nc_comm) ) 1261 // return false; 1257 1262 1258 1263 if(rGR->qideal == NULL) // there will be a factor! … … 1287 1292 if( !n_IsOne(c, rBase) ) 1288 1293 { 1289 #if def PDEBUG1290 //Print("Wrong Coeff at: [%d, %d]\n", i, j);1294 #if MYTEST 1295 Print("Wrong Coeff at: [%d, %d]\n", i, j); 1291 1296 #endif 1292 1297 return false; … … 1310 1315 if( !n_IsMOne(c, rBase) ) 1311 1316 { 1312 #if def PDEBUG1313 //Print("Wrong Coeff at: [%d, %d]\n", i, j);1317 #if MYTEST 1318 Print("Wrong Coeff at: [%d, %d]\n", i, j); 1314 1319 #endif 1315 1320 return false; … … 1319 1324 if( !n_IsOne(c, rBase) ) 1320 1325 { 1321 #if def PDEBUG1322 //Print("Wrong Coeff at: [%d, %d]\n", i, j);1326 #if MYTEST 1327 Print("Wrong Coeff at: [%d, %d]\n", i, j); 1323 1328 #endif 1324 1329 return false; … … 1381 1386 1382 1387 1383 #if def PDEBUG1384 //Print("AltVars: [%d, %d]\n", iAltVarStart, iAltVarEnd);1388 #if MYTEST 1389 Print("AltVars: [%d, %d]\n", iAltVarStart, iAltVarEnd); 1385 1390 #endif 1386 1391 … … 1404 1409 1405 1410 1406 1407 1411 sca_p_ProcsSet(rGR, rGR->p_Procs); 1408 1412 1409 1413 1410 1414 return true; 1415 } 1416 1417 1418 bool sca_ForceCommutative(ring rGR, int b, int e) 1419 { 1420 assume(rGR != NULL); 1421 assume(rIsPluralRing(rGR)); 1422 assume(!rIsSCA(rGR)); 1423 1424 const int N = rGR->N; 1425 1426 ring rSaveRing = currRing; 1427 1428 if(rSaveRing != rGR) 1429 rChangeCurrRing(rGR); 1430 1431 const ideal idQuotient = rGR->qideal; 1432 1433 1434 ideal tempQ = idQuotient; 1435 1436 if( b <= N && e >= 1 ) 1437 tempQ = id_KillSquares(idQuotient, b, e, rGR); 1438 1439 idSkipZeroes( tempQ ); 1440 1441 if( idIs0(tempQ) ) 1442 rGR->nc->SCAQuotient() = NULL; 1443 else 1444 rGR->nc->SCAQuotient() = tempQ; 1445 1446 ncRingType( rGR, nc_exterior ); 1447 1448 scaFirstAltVar( rGR, b ); 1449 scaLastAltVar( rGR, e ); 1450 1451 1452 sca_p_ProcsSet(rGR, rGR->p_Procs); 1453 1454 if(rSaveRing != rGR) 1455 rChangeCurrRing(rSaveRing); 1456 1457 return true; 1458 1411 1459 } 1412 1460 … … 2378 2426 #ifdef PDEBUG 2379 2427 p_Test(m, r); 2428 assume( (iFirstAltVar >= 1) && (iLastAltVar <= r->N) && (iFirstAltVar <= iLastAltVar) ); 2380 2429 2381 2430 #if 0 … … 2402 2451 #ifdef PDEBUG 2403 2452 p_Test(p, r); 2453 2454 assume( (iFirstAltVar >= 1) && (iLastAltVar <= r->N) && (iFirstAltVar <= iLastAltVar) ); 2404 2455 2405 2456 #if 0 … … 2455 2506 if (id == NULL) return id; // zero ideal 2456 2507 2508 assume( (iFirstAltVar >= 1) && (iLastAltVar <= r->N) && (iFirstAltVar <= iLastAltVar) ); 2509 2457 2510 const int iSize = id->idelems(); 2458 2511 -
kernel/sca.h
r5eef8d r06879b7 5 5 * Computer Algebra System SINGULAR * 6 6 ****************************************/ 7 /* $Id: sca.h,v 1.1 0 2007-07-24 11:15:26 SingularExp $ */7 /* $Id: sca.h,v 1.11 2008-05-15 17:24:37 motsak Exp $ */ 8 8 9 9 #include <ring.h> … … 175 175 const unsigned int iFirstAltVar, const unsigned int iLastAltVar, 176 176 const ring r); 177 178 // for benchmarking 179 bool sca_ForceCommutative(ring rGR, int b, int e); 177 180 178 181
Note: See TracChangeset
for help on using the changeset viewer.