## #2533 functions conjugate or diff has bug

None
open
nobody
None
5
2013-01-15
2013-01-15
Valery Lovchikov
No

(%i1) declare(z,complex)\$ depends(z,q)\$
(%i3) diff(realpart(z),q)-realpart(diff(z,q))
(%o3) 0
(%i4) diff(imagpart(z),q)-imagpart(diff(z,q));
(%o4) 0

but
(%i5) diff(conjugate(z),q)-conjugate(diff(z,q));
is not 0

build_info("5.28.0-2","2012-08-27 23:16:48","i686-pc-mingw32","GNU Common Lisp (GCL)","GCL 2.6.8")

## Discussion

• Well the result, which is

```(%i4) diff(conjugate(z),q)-conjugate(diff(z,q));
d                             dz
(%o4)                  -- (conjugate(z)) - conjugate(--)
dq                            dq
```

is correct. Although the answer is indeed equal to zero mathematically, Maxima doesn't spot that.

To the developers: Maybe we should simplify `diff(conjugate(f(q)), q)` to `conjugate(diff(f(q), q))`? Arguments for: If f is differentiable, so is its conjugate; This creates a canonical form. Arguments against: How does one stop this happening? Yet another flag?

• On Tue, 15 Jan 2013 09:59:25 +0000
"Rupert Swarbrick" rswarbrick@users.sf.net wrote:

Well the result, which is

(%i4) diff(conjugate(z),q)-conjugate(diff(z,q));
d dz
(%o4) -- (conjugate(z)) - conjugate(--)
dq dq

is correct. Although the answer is indeed equal to zero
mathematically, Maxima doesn't spot that.

To the developers: Maybe we should simplify ```diff(conjugate(f(q)), q)``` to `conjugate(diff(f(q), q))`? Arguments for: If f is
differentiable, so is its conjugate; This creates a canonical form.
Arguments against: How does one stop this happening? Yet another
flag?

Sorry, missed my text.

We need to act the same way as in the case of realpart and imagpart.
as

realpart(diff(z,q))
is
'diff(realpart(z),q,1)

and
imagpart(diff(z,q))
is
'diff(imagpart(z),q,1)

must also be conjugate(diff(z,q))
'diff(conjugate(z),q,1)

But now the result
conjugate('diff(z,q,1))

This is the problem.

Best regards
Valery Lovchikov

[bugs:#2533] functions conjugate or diff has bug

Status: open
Created: Tue Jan 15, 2013 09:48 AM UTC by Valery Lovchikov
Last Updated: Tue Jan 15, 2013 09:48 AM UTC
Owner: nobody

(%i1) declare(z,complex)\$ depends(z,q)\$
(%i3) diff(realpart(z),q)-realpart(diff(z,q))
(%o3) 0
(%i4) diff(imagpart(z),q)-imagpart(diff(z,q));
(%o4) 0

but
(%i5) diff(conjugate(z),q)-conjugate(diff(z,q));
is not 0

build_info("5.28.0-2","2012-08-27 23:16:48","i686-pc-mingw32","GNU
Common Lisp (GCL)","GCL 2.6.8")

Sent from sourceforge.net because you indicated interest in
https://sourceforge.net/p/maxima/bugs/2533/

To unsubscribe from further messages, please visit
https://sourceforge.net/auth/prefs/

#### Related

• On Tue, 15 Jan 2013 09:59:25 +0000
"Rupert Swarbrick" rswarbrick@users.sf.net wrote:

Well the result, which is

(%i4) diff(conjugate(z),q)-conjugate(diff(z,q));
d dz
(%o4) -- (conjugate(z)) - conjugate(--)
dq dq

is correct. Although the answer is indeed equal to zero
mathematically, Maxima doesn't spot that.

To the developers: Maybe we should simplify ```diff(conjugate(f(q)), q)``` to `conjugate(diff(f(q), q))`? Arguments for: If f is
differentiable, so is its conjugate; This creates a canonical form.
Arguments against: How does one stop this happening? Yet another
flag?

We need to act the same way as in the case of realpart and imagpart.
In their case, because there is no problem?

Valery Lovchikov

[bugs:#2533] functions conjugate or diff has bug

Status: open
Created: Tue Jan 15, 2013 09:48 AM UTC by Valery Lovchikov
Last Updated: Tue Jan 15, 2013 09:48 AM UTC
Owner: nobody

(%i1) declare(z,complex)\$ depends(z,q)\$
(%i3) diff(realpart(z),q)-realpart(diff(z,q))
(%o3) 0
(%i4) diff(imagpart(z),q)-imagpart(diff(z,q));
(%o4) 0

but
(%i5) diff(conjugate(z),q)-conjugate(diff(z,q));
is not 0

build_info("5.28.0-2","2012-08-27 23:16:48","i686-pc-mingw32","GNU
Common Lisp (GCL)","GCL 2.6.8")

Sent from sourceforge.net because you indicated interest in
https://sourceforge.net/p/maxima/bugs/2533/

To unsubscribe from further messages, please visit
https://sourceforge.net/auth/prefs/