On 8 December 2016 at 10:35, Anastasia Theodouli
<[email protected]> wrote:
> UPDATE: The problem was that I was working modulo 101 when I was defining a1
> and b1.

I think that trying to combine symbolic variables (x1 and x2) with
modular arithmetic is known to create difficulties.  If you want to do
the computation mod 101 then something like

F=GF(101)
R.<x1,x2> = F[]

# The above 2 lines tell Sage that x1, x2 are independent variables
over F (R is a polynomial ring in these 1 variables)

a1=vector([76,83])
b1=62
x=vector([x1,x2])
f1=b1-a1.dot_product(x)
f1

gives

25*x1 + 18*x2 - 39

(I am not sure why 62 displays as -39 here)

John

>
> On Thursday, December 8, 2016 at 11:49:04 AM UTC+2, Anastasia Theodouli
> wrote:
>>
>> Hi all!
>>
>> In my code, I have a multivariate polynomial with a sign symbol which
>> doesn't return the correct result. I.e.
>>
>> The code snippet is as follows:
>>
>>
>>     sage: f1=b1-a1.dot_product(x)
>>
>> a1 is a vector with values (76, 83), b1 is scalar with value 62, x is a
>> vector with values (x1,x2). Thus, f1 should return **62-76 * x1-83 * x2**;
>> however it returns **25*x1 + 18*x2 + 62** which is not correct.
>>
>> Please note that if I use **addition** in f1 as follows:
>>
>>
>>     sage: f1=b1+a1.dot_product(x)
>> The result is correct,i.e. 76*x1 + 83*x2 + 62
>>
>>  type(f1) is sage.symbolic.expression.Expression
>>
>> What could the problem be? I tried to convert the symbolic expression to
>> multivariate polynomial, but this didn't work either? I also though there
>> might be a problem with the minus symbol in my PC but couldn't solve it
>> this way either.
>>
>> Thank you for your responses!
>> Regards,
>> Natassa
>
> --
> 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 [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/sage-support.
> For more options, visit https://groups.google.com/d/optout.

-- 
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 [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Reply via email to