Changeset f16c61c in git
- Timestamp:
- Sep 26, 2011, 8:39:08 PM (12 years ago)
- Branches:
- (u'spielwiese', '0d6b7fcd9813a1ca1ed4220cfa2b104b97a0a003')
- Children:
- 37e36e946ee174d951bb2e0fbae1283480ace5f6
- Parents:
- 69ad7eed9ae02d904a01c114ac5b581e8cd9483e
- git-author:
- Hans Schoenemann <hannes@mathematik.uni-kl.de>2011-09-26 20:39:08+02:00
- git-committer:
- Mohamed Barakat <mohamed.barakat@rwth-aachen.de>2011-11-09 16:13:35+01:00
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/ipshell.cc
r69ad7e rf16c61c 1659 1659 { 1660 1660 const ring RR = R->cf->extRing; 1661 1661 1662 1662 L->m[3].data=(void *) idCopy(RR->minideal, RR); 1663 1663 // I->m[0] = pNSet(R->minpoly); … … 2076 2076 ) 2077 2077 return NULL; 2078 int is_gf_char=0; 2078 2079 // 0: char/ cf - ring 2079 2080 // 1: list (var) … … 2083 2084 // 4: C 2084 2085 // 5: D 2085 2086 ring R = (ring) omAlloc0Bin(sip_sring_bin); // why 2087 2088 2089 assume( R->cf == NULL );2090 2086 2087 ring R = (ring) omAlloc0Bin(sip_sring_bin); // why 2088 2089 2090 //assume( R->cf == NULL ); 2091 2091 2092 // ------------------------------------------------------------------ 2092 2093 // 0: char: … … 2105 2106 Warn("%d is invalid characteristic of ground field. %d is used.", ch, l); 2106 2107 ch = l; 2107 } 2108 R->cf = nInitChar(n_Zp, (void*)ch); 2108 } 2109 R->cf = nInitChar(n_Zp, (void*)ch); 2109 2110 } 2110 2111 } … … 2112 2113 { 2113 2114 lists LL=(lists)L->m[0].Data(); 2114 2115 2115 2116 #ifdef HAVE_RINGS 2116 2117 if (LL->m[0].Typ() == STRING_CMD) // 1st comes a string? … … 2123 2124 rComposeC(LL,R); // R, long_R, long_C 2124 2125 else 2125 { 2126 { 2126 2127 if (LL->m[0].Typ()==INT_CMD) 2127 { 2128 { 2128 2129 int ch = (int)(long)LL->m[0].Data(); 2129 2130 if(( ch != 0 ) && (ch!=IsPrime(ch))) // TODO: GF-Test ch! 2130 while ((ch!=fftable[is_gf_char]) && (fftable[is_gf_char])) is_gf_char++; 2131 if (fftable[is_gf_char]==0) is_gf_char=-1; 2132 2133 if(is_gf_char!= -1) 2131 2134 { 2132 2135 GFInfo param; 2133 2134 param.GFChar = ch; 2136 2137 param.GFChar = ch; 2135 2138 param.GFDegree = 1; 2136 2139 param.GFPar_name = (const char*)(((lists)(LL->m[1].Data()))->m[0].Data()); … … 2144 2147 { 2145 2148 ring extRing = rCompose((lists)L->m[0].Data()); 2146 2149 2147 2150 if (extRing==NULL) 2148 2151 { … … 2154 2157 { 2155 2158 AlgExtInfo extParam; 2156 2159 2157 2160 extParam.i = extRing->qideal; 2158 2161 extParam.r = extRing; … … 2160 2163 extRing->qideal = NULL; // ??? 2161 2164 2162 R->cf = nInitChar(n_algExt, (void*)&extParam); 2163 } else // Transcendental extension 2165 R->cf = nInitChar(n_algExt, (void*)&extParam); 2166 } 2167 else // Transcendental extension 2164 2168 { 2165 2169 TransExtInfo extParam; … … 2168 2172 R->cf = nInitChar(n_transExt, &extParam); 2169 2173 } 2170 2171 } 2174 } 2172 2175 } 2173 2176 } … … 2386 2389 rComplete(R); 2387 2390 2388 #ifdef HAVE_RINGS 2391 #ifdef HAVE_RINGS 2389 2392 // This was a BUG IN SINGULAR: There is no HABE_RINGS!!! 2390 2393 … … 2437 2440 par_perm_size=rPar(orig_ring); 2438 2441 BITSET save_test=test; 2439 2442 2440 2443 // if ((orig_ring->minpoly != NULL) || (orig_ring->minideal != NULL)) 2441 2444 // naSetChar(rInternalChar(orig_ring),orig_ring); 2442 2445 // else ntSetChar(rInternalChar(orig_ring),orig_ring); 2443 2446 2444 2447 nSetChar(currRing->cf); 2445 2448 test=save_test; … … 2822 2825 Werror("Sorry: not yet re-factored: see libpolys/polys/clapsing.cc"); 2823 2826 return FALSE; 2824 #else 2827 #else 2825 2828 res->data=singclap_irrCharSeries((ideal)u->Data(), currRing); 2826 2829 return (res->data==NULL); … … 4947 4950 // get ch of ground field 4948 4951 int numberOfAllocatedBlocks; 4949 4952 4950 4953 // allocated ring 4951 4954 R = (ring) omAlloc0Bin(sip_sring_bin); … … 4955 4958 assume( pn != NULL ); 4956 4959 const int P = pn->listLength(); 4957 4960 4958 4961 if (pn->Typ()==INT_CMD) 4959 4962 { 4960 4963 int ch = (int)(long)pn->Data(); 4961 4964 4962 4965 /* parameter? -------------------------------------------------------*/ 4963 4966 pn = pn->next; 4964 4967 4965 4968 if (pn == NULL) // no params!? 4966 4969 { … … 4983 4986 { 4984 4987 GFInfo param; 4985 4986 param.GFChar = ch; 4987 param.GFDegree = 1; 4988 4989 param.GFChar = ch; 4990 param.GFDegree = 1; 4988 4991 param.GFPar_name = pn->name; 4989 4990 cf = nInitChar(n_GF, ¶m); 4992 4993 cf = nInitChar(n_GF, ¶m); 4991 4994 } 4992 4995 else // (0/p, a, b, ..., z) … … 4999 5002 // goto rInitError; 5000 5003 // } 5001 5004 5002 5005 char ** names = (char**)omAlloc0(pars * sizeof(char_ptr)); 5003 5006 … … 5009 5012 5010 5013 TransExtInfo extParam; 5011 5014 5012 5015 extParam.r = rDefault( ch, pars, names); // Q/Zp [ p_1, ... p_pars ] 5013 5016 5014 5017 cf = nInitChar(n_transExt, &extParam); 5015 5018 } 5016 5019 } 5017 5020 5018 5021 // if (cf==NULL) goto rInitError; 5019 5022 assume( cf != NULL ); … … 5070 5073 else 5071 5074 cf=nInitChar(n_Z,NULL); 5072 5075 5073 5076 if ((mpz_cmp_ui(modBase, 1) == 0) && (mpz_cmp_ui(modBase, 0) < 0)) 5074 5077 { … … 5121 5124 extParam.r = (ring)pn->Data(); 5122 5125 extParam.i = (extParam.r->qideal); 5123 5126 5124 5127 cf = nInitChar(n_algExt, &extParam); // Q[a]/<minideal> 5125 5128 } … … 5135 5138 p = p->next; 5136 5139 } 5137 #endif 5140 #endif 5138 5141 goto rInitError; 5139 5142 } … … 5164 5167 5165 5168 assume( R != NULL ); 5166 5169 5167 5170 R->cf = cf; 5168 5171 5169 5172 #ifdef HAVE_RINGS 5170 5173 // the following should have beed set already into cf, right?!
Note: See TracChangeset
for help on using the changeset viewer.