Changeset 0ea97e in git for Singular/ipshell.cc
- Timestamp:
- Jul 3, 2007, 3:21:21 PM (17 years ago)
- Branches:
- (u'spielwiese', '17f1d200f27c5bd38f5dfc6e8a0879242279d1d8')
- Children:
- b7e8384e7eeb626a3997e284bf0432220287d24c
- Parents:
- f232a78ad1717a2c781b6ae4d83d9ac5600e5323
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/ipshell.cc
rf232a7 r0ea97e 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: ipshell.cc,v 1.16 0 2007-06-20 09:41:43 wienandExp $ */4 /* $Id: ipshell.cc,v 1.161 2007-07-03 13:21:21 Singular Exp $ */ 5 5 /* 6 6 * ABSTRACT: … … 716 716 } 717 717 tmpW.data=IDDATA(w); 718 #ifdef FAST_MAP 719 if ((tmpW.rtyp==IDEAL_CMD) && (nMap==nCopy) 720 #ifdef HAVE_PLURAL 721 && (!rIsPluralRing(currRing)) 722 #endif 723 ) 724 { 725 v->rtyp=IDEAL_CMD; 726 v->data=fast_map(IDIDEAL(w), IDRING(r), (ideal)theMap, currRing); 718 if (((tmpW.rtyp==IDEAL_CMD)||(tmpW.rtyp==MODUL_CMD)) && idIs0(IDIDEAL(w))) 719 { 720 v->rtyp=tmpW.rtyp; 721 v->data=idInit(IDELEMS(IDIDEAL(w)),IDIDEAL(w)->rank); 727 722 } 728 723 else 729 #endif 730 if (maApplyFetch(MAP_CMD,theMap,v,&tmpW,IDRING(r),NULL,NULL,0,nMap)) 731 { 732 Werror("cannot map %s(%d)",Tok2Cmdname(w->typ),w->typ); 733 omFreeBin((ADDRESS)v, sleftv_bin); 734 if (save_r!=NULL) IDMAP(w)->preimage=save_r; 735 return NULL; 724 { 725 #ifdef FAST_MAP 726 if ((tmpW.rtyp==IDEAL_CMD) && (nMap==nCopy) 727 #ifdef HAVE_PLURAL 728 && (!rIsPluralRing(currRing)) 729 #endif 730 ) 731 { 732 v->rtyp=IDEAL_CMD; 733 v->data=fast_map(IDIDEAL(w), IDRING(r), (ideal)theMap, currRing); 734 } 735 else 736 #endif 737 if (maApplyFetch(MAP_CMD,theMap,v,&tmpW,IDRING(r),NULL,NULL,0,nMap)) 738 { 739 Werror("cannot map %s(%d)",Tok2Cmdname(w->typ),w->typ); 740 omFreeBin((ADDRESS)v, sleftv_bin); 741 if (save_r!=NULL) IDMAP(w)->preimage=save_r; 742 return NULL; 743 } 736 744 } 737 745 if (save_r!=NULL) … … 2011 2019 { 2012 2020 R->minpoly=naInit(1); 2013 2014 2021 lnumber n=(lnumber)R->minpoly; 2022 n->z=R->algring->qideal->m[0]; 2015 2023 R->algring->qideal->m[0]=NULL; 2016 2024 idDelete(&(R->algring->qideal)); … … 2082 2090 par_perm=(int *)omAlloc0(par_perm_size*sizeof(int)); 2083 2091 int i; 2084 2085 2092 #if 0 2093 // use imap: 2086 2094 maFindPerm(orig_ring->names,orig_ring->N,orig_ring->parameter,orig_ring->P, 2087 2095 currRing->names,currRing->N,currRing->parameter, currRing->P, 2088 2096 perm,par_perm, currRing->ch); 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2097 #else 2098 // use fetch 2099 if ((rPar(orig_ring)>0) && (rPar(currRing)==0)) 2100 { 2101 for(i=si_min(rPar(orig_ring),rVar(currRing))-1;i>=0;i--) par_perm[i]=i+1; 2102 } 2103 else if (par_perm_size!=0) 2104 for(i=si_min(rPar(orig_ring),rPar(currRing))-1;i>=0;i--) par_perm[i]=-(i+1); 2105 for(i=si_min(orig_ring->N,pVariables);i>0;i--) perm[i]=i; 2106 #endif 2099 2107 ideal dest_id=idInit(IDELEMS(q),1); 2100 2108 for(i=IDELEMS(q)-1; i>=0; i--) … … 2102 2110 dest_id->m[i]=pPermPoly(q->m[i],perm,orig_ring,nMap, 2103 2111 par_perm,par_perm_size); 2104 2112 // PrintS("map:");pWrite(dest_id->m[i]);PrintLn(); 2105 2113 pTest(dest_id->m[i]); 2106 2114 } … … 4785 4793 sleftv u; memset(&u,0,sizeof(u)); u.rtyp=IDHDL; u.data=(char *) h; 4786 4794 u.name=IDID(h); 4787 4788 sleftv res; memset(&res,0,sizeof(res)); 4795 4796 sleftv res; memset(&res,0,sizeof(res)); 4789 4797 if(jjPROC(&res,&u,&v)) 4790 4798 {
Note: See TracChangeset
for help on using the changeset viewer.