Screenshot instructions:
Windows
Mac
Red Hat Linux
Ubuntu
Click URL instructions:
Rightclick on ad, choose "Copy Link", then paste here →
(This may not be possible with some types of ads)
From: SourceForge.net <noreply@so...>  20041012 15:38:04

Bugs item #1045514, was opened at 20041012 11:38 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1045514&group_id=4933 Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Stavros Macrakis (macrakis) Assigned to: Nobody/Anonymous (nobody) Summary: conjugate(complex) wrong Initial Comment: declare(z,complex) conjugate(z) > z  should be nounform (conjugate loaded from EIGEN)  You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1045514&group_id=4933 
From: SourceForge.net <noreply@so...>  20050129 18:15:34

Bugs item #1045514, was opened at 20041012 09:38 Message generated for change (Comment added) made by robert_dodier You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1045514&group_id=4933 Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Stavros Macrakis (macrakis) Assigned to: Nobody/Anonymous (nobody) Summary: conjugate(complex) wrong Initial Comment: declare(z,complex) conjugate(z) > z  should be nounform (conjugate loaded from EIGEN)  >Comment By: Robert Dodier (robert_dodier) Date: 20050129 11:15 Message: Logged In: YES user_id=501686 The defn of conjugate is conjugate(x) := sublis('([%i =  %i]), x)$ which is useful since it can be applied to lists and matrices (among other objects) but it seems too simpleminded. The defn above can yield a wrong answer if its argument is a real function of a complex variable. E.g., conjugate('carg(a+b %i)) yields 'carg (ab %i)  oops. Maybe the right answer is to kill off the existing defn and replace it with conjugate(x) := realpart(x)  %i*imagpart(x)$ ?? realpart and imagpart know about lists and matrices, maybe other objects, so the convenience of the existing defn doesn't seem compelling. Also realpart and imagpart know about carg (as they should).  You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1045514&group_id=4933 
From: SourceForge.net <noreply@so...>  20050130 22:27:00

Bugs item #1045514, was opened at 20041012 11:38 Message generated for change (Comment added) made by macrakis You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1045514&group_id=4933 Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Stavros Macrakis (macrakis) Assigned to: Nobody/Anonymous (nobody) Summary: conjugate(complex) wrong Initial Comment: declare(z,complex) conjugate(z) > z  should be nounform (conjugate loaded from EIGEN)  Comment By: Stavros Macrakis (macrakis) Date: 20050130 17:26 Message: Logged In: YES user_id=588346 I am not sure why you mention lists and matrices  all Maxima functions are supposed to handle those cases (though admittedly they don't all do it). For all *analytic* functions and real variables, the current definition is correct, and often gives far smaller expressions than using rectform would. However, it is incorrect for nonanalytic functions (like carg) and nonreal variables. For that matter, rectform also assumes that functions it doesn't know always have purereal values. Try, for example, realpart(f(%i)) or rp(%i!). It is straightforward enough to write a proper $conjugate function that takes that into account  most of the work would in fact go into establishing the list of analytic functions!: though there is in principle a Maxima feature 'analytic', it is not used at all currently. It is not clear what the right thing to do about unknown functions is. In general, Maxima assumes that functions and variables are realvalued  even if the function arguments are nonreal. We probably don't want rectform(f(x)) for unknown f and x to return 'realpart(f(x)) + 'imagpart(f(x))*%i.... But returning that only if x is known nonreal seems arbitrary, too. Consider realpart(f(x)) => f(x) ... where f turns out to be sqrt.  Comment By: Nobody/Anonymous (nobody) Date: 20050130 17:25 Message: Logged In: NO I am not sure why you mention lists and matrices  all Maxima functions are supposed to handle those cases (though admittedly they don't all do it). For all *analytic* functions and real variables, the current definition is correct, and often gives far smaller expressions than using rectform would. However, it is incorrect for nonanalytic functions (like carg) and nonreal variables. For that matter, rectform also assumes that functions it doesn't know always have purereal values. Try, for example, realpart(f(%i)) or rp(%i!). It is straightforward enough to write a proper $conjugate function that takes that into account  most of the work would in fact go into establishing the list of analytic functions!: though there is in principle a Maxima feature 'analytic', it is not used at all currently. It is not clear what the right thing to do about unknown functions is. In general, Maxima assumes that functions and variables are realvalued  even if the function arguments are nonreal. We probably don't want rectform(f(x)) for unknown f and x to return 'realpart(f(x)) + 'imagpart(f(x))*%i.... But returning that only if x is known nonreal seems arbitrary, too. Consider realpart(f(x)) => f(x) ... where f turns out to be sqrt.  Comment By: Robert Dodier (robert_dodier) Date: 20050129 13:15 Message: Logged In: YES user_id=501686 The defn of conjugate is conjugate(x) := sublis('([%i =  %i]), x)$ which is useful since it can be applied to lists and matrices (among other objects) but it seems too simpleminded. The defn above can yield a wrong answer if its argument is a real function of a complex variable. E.g., conjugate('carg(a+b %i)) yields 'carg (ab %i)  oops. Maybe the right answer is to kill off the existing defn and replace it with conjugate(x) := realpart(x)  %i*imagpart(x)$ ?? realpart and imagpart know about lists and matrices, maybe other objects, so the convenience of the existing defn doesn't seem compelling. Also realpart and imagpart know about carg (as they should).  You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1045514&group_id=4933 
From: SourceForge.net <noreply@so...>  20050130 22:25:44

Bugs item #1045514, was opened at 20041012 08:38 Message generated for change (Comment added) made by nobody You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1045514&group_id=4933 Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Stavros Macrakis (macrakis) Assigned to: Nobody/Anonymous (nobody) Summary: conjugate(complex) wrong Initial Comment: declare(z,complex) conjugate(z) > z  should be nounform (conjugate loaded from EIGEN)  Comment By: Nobody/Anonymous (nobody) Date: 20050130 14:25 Message: Logged In: NO I am not sure why you mention lists and matrices  all Maxima functions are supposed to handle those cases (though admittedly they don't all do it). For all *analytic* functions and real variables, the current definition is correct, and often gives far smaller expressions than using rectform would. However, it is incorrect for nonanalytic functions (like carg) and nonreal variables. For that matter, rectform also assumes that functions it doesn't know always have purereal values. Try, for example, realpart(f(%i)) or rp(%i!). It is straightforward enough to write a proper $conjugate function that takes that into account  most of the work would in fact go into establishing the list of analytic functions!: though there is in principle a Maxima feature 'analytic', it is not used at all currently. It is not clear what the right thing to do about unknown functions is. In general, Maxima assumes that functions and variables are realvalued  even if the function arguments are nonreal. We probably don't want rectform(f(x)) for unknown f and x to return 'realpart(f(x)) + 'imagpart(f(x))*%i.... But returning that only if x is known nonreal seems arbitrary, too. Consider realpart(f(x)) => f(x) ... where f turns out to be sqrt.  Comment By: Robert Dodier (robert_dodier) Date: 20050129 10:15 Message: Logged In: YES user_id=501686 The defn of conjugate is conjugate(x) := sublis('([%i =  %i]), x)$ which is useful since it can be applied to lists and matrices (among other objects) but it seems too simpleminded. The defn above can yield a wrong answer if its argument is a real function of a complex variable. E.g., conjugate('carg(a+b %i)) yields 'carg (ab %i)  oops. Maybe the right answer is to kill off the existing defn and replace it with conjugate(x) := realpart(x)  %i*imagpart(x)$ ?? realpart and imagpart know about lists and matrices, maybe other objects, so the convenience of the existing defn doesn't seem compelling. Also realpart and imagpart know about carg (as they should).  You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1045514&group_id=4933 
From: SourceForge.net <noreply@so...>  20050907 05:06:19

Bugs item #1045514, was opened at 20041012 09:38 Message generated for change (Comment added) made by robert_dodier You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1045514&group_id=4933 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None >Status: Closed >Resolution: Fixed Priority: 5 Submitted By: Stavros Macrakis (macrakis) Assigned to: Nobody/Anonymous (nobody) Summary: conjugate(complex) wrong Initial Comment: declare(z,complex) conjugate(z) > z  should be nounform (conjugate loaded from EIGEN)  >Comment By: Robert Dodier (robert_dodier) Date: 20050906 23:06 Message: Logged In: YES user_id=501686 Defn of conjugate in eigen.mac is superseded by defn in share/linearalgebra/conjugate.lisp, which doesn't have the problems of the eigen.mac defn (nor the problems of the realpart/imagpart proposed alternative). Closing this bug report as fixed.  Comment By: Stavros Macrakis (macrakis) Date: 20050130 15:26 Message: Logged In: YES user_id=588346 I am not sure why you mention lists and matrices  all Maxima functions are supposed to handle those cases (though admittedly they don't all do it). For all *analytic* functions and real variables, the current definition is correct, and often gives far smaller expressions than using rectform would. However, it is incorrect for nonanalytic functions (like carg) and nonreal variables. For that matter, rectform also assumes that functions it doesn't know always have purereal values. Try, for example, realpart(f(%i)) or rp(%i!). It is straightforward enough to write a proper $conjugate function that takes that into account  most of the work would in fact go into establishing the list of analytic functions!: though there is in principle a Maxima feature 'analytic', it is not used at all currently. It is not clear what the right thing to do about unknown functions is. In general, Maxima assumes that functions and variables are realvalued  even if the function arguments are nonreal. We probably don't want rectform(f(x)) for unknown f and x to return 'realpart(f(x)) + 'imagpart(f(x))*%i.... But returning that only if x is known nonreal seems arbitrary, too. Consider realpart(f(x)) => f(x) ... where f turns out to be sqrt.  Comment By: Nobody/Anonymous (nobody) Date: 20050130 15:25 Message: Logged In: NO I am not sure why you mention lists and matrices  all Maxima functions are supposed to handle those cases (though admittedly they don't all do it). For all *analytic* functions and real variables, the current definition is correct, and often gives far smaller expressions than using rectform would. However, it is incorrect for nonanalytic functions (like carg) and nonreal variables. For that matter, rectform also assumes that functions it doesn't know always have purereal values. Try, for example, realpart(f(%i)) or rp(%i!). It is straightforward enough to write a proper $conjugate function that takes that into account  most of the work would in fact go into establishing the list of analytic functions!: though there is in principle a Maxima feature 'analytic', it is not used at all currently. It is not clear what the right thing to do about unknown functions is. In general, Maxima assumes that functions and variables are realvalued  even if the function arguments are nonreal. We probably don't want rectform(f(x)) for unknown f and x to return 'realpart(f(x)) + 'imagpart(f(x))*%i.... But returning that only if x is known nonreal seems arbitrary, too. Consider realpart(f(x)) => f(x) ... where f turns out to be sqrt.  Comment By: Robert Dodier (robert_dodier) Date: 20050129 11:15 Message: Logged In: YES user_id=501686 The defn of conjugate is conjugate(x) := sublis('([%i =  %i]), x)$ which is useful since it can be applied to lists and matrices (among other objects) but it seems too simpleminded. The defn above can yield a wrong answer if its argument is a real function of a complex variable. E.g., conjugate('carg(a+b %i)) yields 'carg (ab %i)  oops. Maybe the right answer is to kill off the existing defn and replace it with conjugate(x) := realpart(x)  %i*imagpart(x)$ ?? realpart and imagpart know about lists and matrices, maybe other objects, so the convenience of the existing defn doesn't seem compelling. Also realpart and imagpart know about carg (as they should).  You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=1045514&group_id=4933 
Sign up for the SourceForge newsletter:
No, thanks