login  home  contents  what's new  discussion  bug reports     help  links  subscribe  changes  refresh  edit

Edit detail for #253 factor returns wrong result revision 3 of 3

1 2 3
Editor: test1
Time: 2015/06/19 15:52:44 GMT+0
Note:

added:

From test1 Fri Jun 19 15:52:44 +0000 2015
From: test1
Date: Fri, 19 Jun 2015 15:52:44 +0000
Subject: 
Message-ID: <20150619155244+0000@axiom-wiki.newsynthesis.org>

Status: open => duplicate 


Submitted by : (unknown) at: 2007-11-17T22:15:40-08:00 (16 years ago)
Name :
Axiom Version :
Category : Severity : Status :
Optional subject :  
Optional comment :

I just ran across the following astonishing bug:

fricas
s :=-x^3+1/6*(-2*sqrt(6)+2*sqrt(3)+3*sqrt(2))*x^2+1/6*((sqrt(3)+sqrt(2))*sqrt(6)-2*sqrt(2)*sqrt(3))*x-sqrt(2)*sqrt(3)*sqrt(6)/6

\label{eq1}\begin{array}{@{}l}
\displaystyle
-{{x}^{3}}+{{{-{2 \ {\sqrt{6}}}+{2 \ {\sqrt{3}}}+{3 \ {\sqrt{2}}}}\over 6}\ {{x}^{2}}}+ 
\
\
\displaystyle
{{{{{\left({\sqrt{3}}+{\sqrt{2}}\right)}\ {\sqrt{6}}}-{2 \ {\sqrt{2}}\ {\sqrt{3}}}}\over 6}\  x}-{{{\sqrt{2}}\ {\sqrt{3}}\ {\sqrt{6}}}\over 6}
(1)
Type: Polynomial(AlgebraicNumber?)
fricas
factor s

\label{eq2}- 1(2)
Type: Factored(Polynomial(AlgebraicNumber?))

This is the same problem as 191ExquoAndThereforeGcdCannotHandleUPXEXPRINT. Namely, the roots sqrt(2), sqrt(3) and sqrt(6) are dependent, which cause problems because sqrt(6)^2 = 6 = 23 = sqrt(2)^2sqrt(3)^2 but we do not know if sqrt(6) = sqrt(2)sqrt(3) or sqrt(6) = -sqrt(2)sqrt(3). This effectively creates ring with zero divisors, while factoring/GCD routines assume a field.

There are several things to notice, in fact:

  • The factorisation is nonsense
  • I think that AlgebraicNumber? should be able to simplify \sqrt{2}\sqrt{3}\sqrt{6} to \sqrt{36}
  • shouldn't sqrt{36} be simplified to 6? Usually, sqrt denotes the positive square root.

Martin

In fact, the problem shows already with

fricas
s :=x^2-sqrt(2)*sqrt(3)*sqrt(6)

\label{eq3}{{x}^{2}}-{{\sqrt{2}}\ {\sqrt{3}}\ {\sqrt{6}}}(3)
Type: Polynomial(AlgebraicNumber?)

and it seems to occur in 'InnerAlgFactor?':

  \begin{axiom}
  )tr InnerAlgFactor  )ma
  factor(s)
  \end{axiom}

Status: open => duplicate