Changeset b44622 in git for Singular/ipshell.cc
- Timestamp:
- May 3, 2007, 3:52:26 PM (16 years ago)
- Branches:
- (u'spielwiese', '8e0ad00ce244dfd0756200662572aef8402f13d5')
- Children:
- a6fa234b0f9f5f9e77a17cde6e450e3a0f8505dc
- Parents:
- bf64c41bd9346d70ecaaab3ee59f58f5d9d766e8
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/ipshell.cc
rbf64c41 rb44622 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: ipshell.cc,v 1.15 5 2007-04-04 14:13:31 SingularExp $ */4 /* $Id: ipshell.cc,v 1.156 2007-05-03 13:52:25 wienand Exp $ */ 5 5 /* 6 6 * ABSTRACT: … … 4366 4366 { 4367 4367 int ch; 4368 #if def HAVE_RING2TOM4368 #if defined(HAVE_RING2TOM)|| defined(HAVE_RINGMODN) 4369 4369 int cring = 0; 4370 4370 #endif … … 4406 4406 } 4407 4407 } 4408 #ifdef HAVE_RINGMODN 4409 else if ((pn->name != NULL) 4410 && (strcmp(pn->name,"modnat")==0)) 4411 { 4412 long module = 0; 4413 if ((pn->next!=NULL) && (pn->next->Typ()==INT_CMD)) 4414 { 4415 module =(unsigned long) pn->next->Data(); 4416 pn=pn->next; 4417 } 4418 if ((module < 2)) 4419 { 4420 Werror("Wrong ground ring specification"); 4421 goto rInitError; 4422 } 4423 ch = module; 4424 cring = 2; 4425 } 4426 #endif 4427 #ifdef HAVE_RING2TOM 4428 else if ((pn->name != NULL) 4429 && (strcmp(pn->name,"modpow")==0)) 4430 { 4431 long base = 0; 4432 long exp = 0; 4433 if ((pn->next!=NULL) && (pn->next->Typ()==INT_CMD)) 4434 { 4435 base =(unsigned long) pn->next->Data(); 4436 pn=pn->next; 4437 if ((pn->next!=NULL) && (pn->next->Typ()==INT_CMD)) 4438 { 4439 exp = (unsigned long) pn->next->Data(); 4440 pn=pn->next; 4441 } 4442 } 4443 if ((base < 2) || (exp < 1)) 4444 { 4445 Werror("Wrong ground ring specification"); 4446 goto rInitError; 4447 } 4448 ch = exp; 4449 if (base == 2) 4450 { 4451 cring = 1; // Use Z/2^ch 4452 Print("Beta: using Z/2^%d", ch); 4453 PrintLn(); 4454 } 4455 else 4456 { 4457 cring = base; 4458 Werror("p^n not yet implemented"); 4459 goto rInitError; 4460 } 4461 } 4462 #endif 4408 4463 else 4409 4464 { … … 4427 4482 * q q : GF(q=p^n) *names TRUE 4428 4483 */ 4429 if (ch!=-1) 4484 if ((ch!=-1) 4485 #if defined(HAVE_RING2TOM)|| defined(HAVE_RINGMODN) 4486 && (cring == 0) 4487 #endif 4488 ) 4430 4489 { 4431 4490 int l = 0; … … 4455 4514 else 4456 4515 { 4457 #ifdef HAVE_RING2TOM 4458 int blupp = Is2toM(ch); 4459 if (blupp != 0) 4460 { 4461 cring = 1; // Use Z/2^ch 4462 ch = blupp; 4463 Print("Beta: using Z/2^%d", ch); 4464 PrintLn(); 4465 } 4466 else 4467 #endif 4468 ch = IsPrime(ch); 4516 ch = IsPrime(ch); 4469 4517 } 4470 4518 }
Note: See TracChangeset
for help on using the changeset viewer.