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

Edit detail for #176 Factored Polynomials aren't differentiated correctly revision 1 of 4

1 2 3 4
Editor:
Time: 2007/11/17 22:02:51 GMT-8
Note: applied in patch-41

changed:
-
\begin{axiom}
p := -x*y^2+x*y+x^3-x^2
D(factor(p),x)
D(p,x)
\end{axiom}

Note that the factorization is correct. It's the D(.,x) that misses the sign.

From unknown Mon Jun 20 10:18:00 -0500 2005
From: unknown
Date: Mon, 20 Jun 2005 10:18:00 -0500
Subject: Forgot to categorize...
Message-ID: <20050620101800-0500@page.axiom-developer.org>

Category: Axiom Compiler => Axiom Mathematics 
Severity: normal => serious 


From kratt6 Tue Jun 21 05:43:03 -0500 2005
From: kratt6
Date: Tue, 21 Jun 2005 05:43:03 -0500
Subject: Fix
Message-ID: <20050621054303-0500@page.axiom-developer.org>

Severity: serious => critical 
Status: open => fix proposed 


From kratt6 Tue Jun 21 05:45:04 -0500 2005
From: kratt6
Date: Tue, 21 Jun 2005 05:45:04 -0500
Subject: Fix
Message-ID: <20050621054504-0500@page.axiom-developer.org>

The mistake is in differentiate\$FR which currently reads::

    differentiate(u:%, deriv: R -> R) ==
      ans := deriv(unit u) * ((u exquo (fr := unit(u)::%))::%)
      ans + fr * (_+/[fact.xpnt * deriv(fact.fctr) *
       ((u exquo nilFactor(fact.fctr, 1))::%) for fact in factorList u])

It intends to use the formula 

$$\frac{d}{dx} f(x)) = \sum_{i=1}^n \frac{f(x)}{f_i(x)}\frac{d}{dx}f_i(x)$$

where

$$f(x)=\prod_{i=1}^n f_i(x).$$

Therefore, the fix is to leave away the 'fr'::

    differentiate(u:%, deriv: R -> R) ==
      ans := deriv(unit u) * ((u exquo unit(u)::%)::%)
      ans + (_+/[fact.xpnt * deriv(fact.fctr) *
       ((u exquo nilFactor(fact.fctr, 1))::%) for fact in factorList u])

Martin

From kratt6 Tue Oct 4 05:51:35 -0500 2005
From: kratt6
Date: Tue, 04 Oct 2005 05:51:35 -0500
Subject: applied in patch-41
Message-ID: <20051004055135-0500@wiki.axiom-developer.org>

Status: fix proposed => closed 


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

axiom
p := -x*y^2+x*y+x^3-x^2
LatexWiki Image(1)
Type: Polynomial Integer
axiom
D(factor(p),x)
LatexWiki Image(2)
Type: Factored Polynomial Integer
axiom
D(p,x)
LatexWiki Image(3)
Type: Polynomial Integer

Note that the factorization is correct. It's the D(.,x) that misses the sign.

Forgot to categorize... --unknown, Mon, 20 Jun 2005 10:18:00 -0500 reply
Category: Axiom Compiler => Axiom Mathematics Severity: normal => serious

Severity: serious => critical Status: open => fix proposed

The mistake is in differentiate$FR which currently reads:
    differentiate(u:%, deriv: R -> R) ==
      ans := deriv(unit u) * ((u exquo (fr := unit(u)::%))::%)
      ans + fr * (_+/[fact.xpnt * deriv(fact.fctr) *
       ((u exquo nilFactor(fact.fctr, 1))::%) for fact in factorList u])

It intends to use the formula

LatexWiki Image 

where

LatexWiki Image 

Therefore, the fix is to leave away the 'fr':

    differentiate(u:%, deriv: R -> R) ==
      ans := deriv(unit u) * ((u exquo unit(u)::%)::%)
      ans + (_+/[fact.xpnt * deriv(fact.fctr) *
       ((u exquo nilFactor(fact.fctr, 1))::%) for fact in factorList u])

Martin

applied in patch-41 --kratt6, Tue, 04 Oct 2005 05:51:35 -0500 reply
Status: fix proposed => closed