Changeset 6178:508217f008d5
- Timestamp:
- 09/05/07 07:26:14 (6 years ago)
- Branch:
- default
- Location:
- sage
- Files:
-
- 6 edited
-
interfaces/magma.py (modified) (2 diffs)
-
rings/polynomial/multi_polynomial_ideal.py (modified) (2 diffs)
-
rings/polynomial/multi_polynomial_ring_generic.pyx (modified) (1 diff)
-
rings/ring.pxd (modified) (1 diff)
-
rings/ring.pyx (modified) (1 diff)
-
structure/sage_object.pyx (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
sage/interfaces/magma.py
r6074 r6178 417 417 return ans 418 418 419 420 421 419 #def new(self, x): 422 420 # if isinstance(x, MagmaElement) and x.parent() == self: … … 511 509 return N 512 510 511 def ideal(self, L): 512 """ 513 """ 514 P = iter(L).next().parent() 515 Pn = P._magma_().name() 516 k = P.base_ring() 517 if k.degree() > 1: 518 i = str(k.gen()) 519 o = self("BaseRing(%s).1"%Pn).name() 520 self.eval("%s := %s"%(i,o)) 521 mlist = self(L) 522 return self("ideal<%s|%s>"%(Pn,mlist.name())) 513 523 514 524 class MagmaFunctionElement(FunctionElement): -
sage/rings/polynomial/multi_polynomial_ideal.py
r5650 r6178 156 156 import sage.interfaces.magma 157 157 magma = sage.interfaces.magma.magma 158 mlist = magma(self.gens()) 159 return magma("ideal<%s|%s>"%(self.ring()._magma_().name(),mlist.name())) 158 return magma.ideal(self.gens()) 160 159 161 160 def _magma_groebner_basis(self): … … 176 175 R = self.ring() 177 176 mgb = self._magma_().GroebnerBasis() 178 B = Sequence([R(str(mgb[i+1])) for i in range(len(mgb))], R, 179 check=False, immutable=True) 177 mgb = [str(mgb[i+1]) for i in range(len(mgb))] 178 if R.base_ring().degree() > 1: 179 a = str(R.base_ring().gen()) 180 mgb = [e.replace("$.1",a) for e in mgb] 181 B = Sequence([R(e) for e in mgb], R, check=False, immutable=True) 180 182 self.__magma_groebner_basis = B 181 183 return B -
sage/rings/polynomial/multi_polynomial_ring_generic.pyx
r5871 r6178 223 223 224 224 def _magma_init_(self): 225 B = self.base_ring()._magma_init_() 225 """ 226 Return a string representation of self MAGMA can understand. 227 """ 228 try: # we need that for GF(q) arithmetic 229 B = self.base_ring()._magma_().name() 230 except (RuntimeError,TypeError): 231 B = self.base_ring()._magma_init_() 226 232 R = 'PolynomialRing(%s, %s, %s)'%(B, self.ngens(),self.term_order().magma_str()) 227 233 return R -
sage/rings/ring.pxd
r4588 r6178 32 32 cdef public object __polynomial_ring 33 33 cdef public object __vector_space 34 cdef public object __interface 34 35 35 36 cdef class Algebra(Ring): -
sage/rings/ring.pyx
r5594 r6178 1027 1027 1028 1028 def _magma_init_(self): 1029 return 'GF(%s)'%self.order() 1029 """ 1030 Return string representation of self that MAGMA can 1031 understand. 1032 """ 1033 if self.degree() == 1: 1034 return 'GF(%s)'%self.order() 1035 B = self.base_ring() 1036 p = self.polynomial() 1037 return "ext< %s | %s >"%(B._magma_init_(),p._magma_init_()) 1030 1038 1031 1039 def __cmp__(self, other): -
sage/structure/sage_object.pyx
r5137 r6178 230 230 X._check_valid() 231 231 return X 232 except AttributeError:232 except (AttributeError, TypeError): 233 233 try: 234 234 self.__interface = {}
Note: See TracChangeset
for help on using the changeset viewer.
