Thank you for the reply. I am now trying the computation with a somewhat 
more involved example and I am getting the error. The example I am trying 
to solve is below:

R = QQ[sqrt(-1)]
RI = R.gens()[0]
S.<x1,x2,x3,x4,x5,x6,x7,x8> = PolynomialRing(R,order='lex')
SI = 
S.ideal(4*RI*x4+2*x1-2.52*x3-8*RI,3*x4+2*x1-3.5*x2-6,-4*RI*x8+2*x5-2.52*x7+8*RI,3*x8+2*x5-3.5*x6-6,x1*x5-1,x2*x6-1,x3*x7-1,x4*x8-1)

The last line ends up with an error:

TypeError: unsupported operand parent(s) for '*': 'Real Field with 53
bits of precision' and 'Multivariate Polynomial Ring in x1, x2, x3, x4,
x5, x6, x7, x8 over Number Field in I with defining polynomial x^2 + 1'

I tried the other two methods discussed in this thread and I am obtaining 
similar type errors. I am not sure why this example is causing this error. Is 
there any solution to this error? Any help is well appreciated.

Best Regards,


On Monday, February 17, 2014 3:47:24 PM UTC-5, john_perry_usm wrote:
>
> The actual computation I had in mind requires a somewhat more convoluted:
>
> sage: R = QQ[sqrt(-1)]
> sage: RI = R.gens()[0] # necessary, since Sage's I is symbolic, and causes 
> issues
> sage: S.<x,y> = PolynomialRing(R,order='lex')
> sage: SI = S.ideal((1+RI)*x+y,x+(1-RI)*y-(1-RI))
> sage: SI.groebner_basis()
> [x + (-I + 1), y - 2]
>
> Sorry for my earlier imprecision: when I did it the first time, I didn't 
> realize that "I" was defined as something other than sqrt(-1) in my current 
> session.
>
> is the variable x in the first line a dummy one, i.e. has nothing to do 
>> with the 
>> x in the second line?
>>
>
> I wouldn't say it's a dummy; it's used to define the number field. But, it 
> is unrelated to the second x.
>
> I don't use CC much myself, but it certainly has its uses (e.g., 
> approximation).
>
> john perry
>
> On Monday, February 17, 2014 12:39:46 PM UTC-6, sahi...@gmail.com wrote:
>>
>> Thank you, I get the solution by using
>>
>> N.<i> = NumberField(x^2+1)
>> S.<x,y> = PolynomialRing(QQ,order='lex')
>>
>> is the variable x in the first line a dummy one, i.e. has nothing to do 
>> with the 
>> x in the second line? Sorry, I am new to Sage and sometimes I get 
>> confused.
>>
>> If CC is not appropriate for this kind of problems we are discussing, for 
>> what 
>> computational reason can CC be used in sage or any other computer algebra 
>> system?
>>
>> Best Regards,
>>
>> On Monday, February 17, 2014 1:08:30 PM UTC-5, luisfe wrote:
>>>
>>>
>>>
>>> On Monday, February 17, 2014 6:39:38 PM UTC+1, sahi...@gmail.com wrote:
>>>>
>>>> OK, I tried the following:
>>>>
>>>> S.<i,x,y> = PolynomialRing(QQ,order='lex')
>>>> I = ideal(i^2+1,(1+i)*x+y,x+(1-i)*y-(1-i))
>>>> G = I.groebner_basis()
>>>> G
>>>>
>>>> would give me
>>>>
>>>> [i - x - 1, x^2 + 2*x + 2, y - 2]
>>>>
>>>> which are the results. But I am confused; why I can't get the result when 
>>>> I try 
>>>> to get a polynomial ring in the field of complex numbers implemented by 
>>>> sage? Also,
>>>> does adding i**2+1=0 really extend the rational numbers to complex number 
>>>> field?
>>>>
>>>>
>>> The problem with CC is that it is an *inexact field. *If you do 
>>> computations with coefficients in CC, you will end up with roundup errors. 
>>> For instance, buchberger algorithm to compute Grobner basis would yield the 
>>> ideal (1) with high probability.
>>>
>>> In the case, you are not computing on the complex numbers, only on the 
>>> gaussian rationals. Essentially, you are working on QQ[i] without naming 
>>> it. In this case your solutions live on QQ[i] so it is not a problem.
>>>
>>> Consider the following example:  
>>>
>>> system x^2+i+y^3,   y^4-x
>>>
>>> sage: S.<i,x,y>=PolynomialRing(QQ,order='lex')
>>> sage: I=Ideal(x^2+i+y^3, y^4-x)
>>> sage: I.groebner_basis()
>>> [i + y^8 + y^3, x - y^4]
>>>
>>> Then, y is any of the 8 roots of the polynomial *'i + y^8 + y^3*', and 
>>> for each one of these roots, *x=y^4*. So you get 8 pairs (x,y) of 
>>> solutions.
>>>
>>> By the way, the suggestion given by John Perry is to do:
>>>
>>> sage: N.<i> = NumberField(x^2+1)
>>> sage: S.<x,y>=PolynomialRing(QQ,order='lex')
>>>
>>> if you do this, then 
>>>
>>> sage: i^2
>>> -1
>>>
>>> you are really working on QQ[i]
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-support+unsubscr...@googlegroups.com.
To post to this group, send email to sage-support@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to