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.
