Post Reply 
Possible error in on-calculator help.
11-15-2015, 12:17 AM (This post was last modified: 11-15-2015 12:21 AM by pwarmuth.)
Post: #1
Possible error in on-calculator help.
I'm not sure if this is the proper place for this, but it's all I know right now.. so.. here we go.

The help content in...

[Main]->[Computer Algebra System (CAS)]-> [CAS Settings]->[Page 1]

...states the following:

*Use i: If checked, the calculator is in complex mode and complex solutions will be displayed when they exist. If not checked, the calculator is in real mode and only real solutions will be displayed.

Refer to this quote from parisse:

(11-14-2015 08:13 PM)parisse Wrote:  You misunderstand the meaning of the complex mode setting (note that this is named i on the Prime CAS settings, complex on the Prime is the complex variable mode setting). If you keep complex mode unchecked, it does not mean you will stay in the real domain. For example, sqrt(-1) will return i if complex is unchecked. Checking complex just says to the CAS that factor and associated functions should behave like if coefficients were complex even if they are all reals.
Find all posts by this user
Quote this message in a reply
11-17-2015, 01:34 PM (This post was last modified: 11-17-2015 01:40 PM by retoa.)
Post: #2
RE: Possible error in on-calculator help.
(11-15-2015 12:17 AM)pwarmuth Wrote:  The help content in...

[Main]->[Computer Algebra System (CAS)]-> [CAS Settings]->[Page 1]

...states the following:

*Use i: If checked, the calculator is in complex mode and complex solutions will be displayed when they exist. If not checked, the calculator is in real mode and only real solutions will be displayed.

If "Use i" is checked you get complex solutions, so if you try factor(x^2-3x+7) or solve(x^2-3x+7=0) you will get complex solutions.
If you uncheck it factor(x^2-3x+7) will give x^2-3x+7 and solve(x^2-3x+7=0) will give [], no complex solutions are given.
You can still find complex solutions with csolve().

So for me this it the same behavior as described in the help.

What I did not yet fully understand is the CAS "Complex" check box. What does it change if it is checked or not?
Find all posts by this user
Quote this message in a reply
11-17-2015, 02:59 PM (This post was last modified: 11-17-2015 03:25 PM by pwarmuth.)
Post: #3
RE: Possible error in on-calculator help.
The help file contradicts what parisse said in his quote, and I trust his word on it being as he is the one who programmed it. The content in that help file led to be believe there were inconsistencies in the way the cas evaluated rational roots. If you take 3 NTHROOT -1 (this is the what you get when you use [SHIFT] x^y) it returns -1. If you take (-1)^(1/3) it returns (1/2)*sqrt(3)*i+(1/2) regardless of what he complex mode (i) setting is.

"[T]he complex mode setting (note that this is named i on the Prime CAS settings, complex on the Prime is the complex variable mode setting). If you keep complex mode [use i] unchecked, it does not mean you will stay in the real domain. " -parisse

For example, even with the option for i turned off, if you ask for sqrt(-1) it will return i. This is by definition not a real number.

Also, according to parisse, the 'complex' checkbox instructs the CAS that factor and associated functions should behave as if coefficients are complex even if they are all reals.

Once again, the content in the help file states the following:

*Use i: If checked, the calculator is in complex mode and complex solutions will be displayed when they exist. If not checked, the calculator is in real mode and only real solutions will be displayed.

One of these things is not like the other.
Find all posts by this user
Quote this message in a reply
11-17-2015, 03:41 PM
Post: #4
RE: Possible error in on-calculator help.
Yes, it says
Use i: If checked, the calculator is in complex mode and complex solutions will be displayed when they exist.

It speaks about solutions, not about calculation results.

sqrt(-1) is not an equation who needs a solution, is a simple calculation.
solve(x^2=-1) will give [], because this equation does not have real solutions.

For me the solution of an equation and the result of a calculation are not the same.
Find all posts by this user
Quote this message in a reply
11-17-2015, 03:47 PM (This post was last modified: 11-17-2015 07:05 PM by pwarmuth.)
Post: #5
RE: Possible error in on-calculator help.
Ok, don't take my word for it then. Check this out.

   
   

Does that look like a real solution to you?
That is not a real-valued solution. (Edit: I felt I was being too big of a snot, so I edited this to be less... crass)

There is another thread in which this was discussed, and it came down to me being confused about what the complex mode (use i) setting was all about. I was confused about it because of what the help file on the calculator told me to expect.
Find all posts by this user
Quote this message in a reply
11-18-2015, 05:36 AM
Post: #6
RE: Possible error in on-calculator help.
(11-17-2015 03:47 PM)pwarmuth Wrote:  Ok, don't take my word for it then. Check this out. ... That is not a real-valued solution.

It's not a solution at all. It's merely the result of a direct calculation, as retoa explained above. That setting only affects solutions (produced by any of the built-in solvers). Or so it seems.

<0|ΙΈ|0>
-Joe-
Visit this user's website Find all posts by this user
Quote this message in a reply
11-18-2015, 06:39 AM
Post: #7
RE: Possible error in on-calculator help.
The online help is not wrong, but it does not fully explain the setting. It describes what happens for the solve command. Since solve uses factor, it is affected by the complex mode (i on the Prime) setting.
Find all posts by this user
Quote this message in a reply
11-18-2015, 03:29 PM (This post was last modified: 11-18-2015 03:37 PM by pwarmuth.)
Post: #8
RE: Possible error in on-calculator help.
I feel rather dense for asking this, but how is the result of that indefinite integration not a solution, but rather a calculation? What's the difference, I'm not understanding the terminology it seems.

Thanks for pointing that out, parisse. That makes sense. I also do agree that it is not a complete explanation, and leaves room for misinterpretation.
Find all posts by this user
Quote this message in a reply
11-18-2015, 03:40 PM (This post was last modified: 11-18-2015 03:41 PM by Tim Wessman.)
Post: #9
RE: Possible error in on-calculator help.
Well, part of the problem was that we've never been able to get a concise explanation that doesn't consist of: "well, it does this for all these things, but also these others, but not those..." and so on until you have a giant list of confusion inclusions and exceptions. As you can see, it is a complex thing. :-)

My thinking is just to get rid of the complex setting since it creates more problems then it actually helps with, and doesn't really gain you anything. If you want a complex result, use csolve, cfactor and so on...

TW

Although I work for HP, the views and opinions I post here are my own.
Find all posts by this user
Quote this message in a reply
11-18-2015, 03:48 PM
Post: #10
RE: Possible error in on-calculator help.
(11-18-2015 03:40 PM)Tim Wessman Wrote:  Well, part of the problem was that we've never been able to get a concise explanation that doesn't consist of: "well, it does this for all these things, but also these others, but not those..." and so on until you have a giant list of confusion inclusions and exceptions. As you can see, it is a complex thing. :-)

My thinking is just to get rid of the complex setting since it creates more problems then it actually helps with, and doesn't really gain you anything. If you want a complex result, use csolve, cfactor and so on...

Haha, yep Big Grin I think that's a fine idea provided that you will be able to get a complex result when you need it, and that the calculator will know what to do if it's fed a complex input. I haven't gotten far enough into my math studies to know just how often I will need to use complex numbers, but so far it's been an oddity outside of calculations with polar coordinates.
Find all posts by this user
Quote this message in a reply
11-18-2015, 05:29 PM
Post: #11
RE: Possible error in on-calculator help.
(11-18-2015 03:40 PM)Tim Wessman Wrote:  Well, part of the problem was that we've never been able to get a concise explanation that doesn't consist of: "well, it does this for all these things, but also these others, but not those..." and so on until you have a giant list of confusion inclusions and exceptions. As you can see, it is a complex thing. :-)

My thinking is just to get rid of the complex setting since it creates more problems then it actually helps with, and doesn't really gain you anything. If you want a complex result, use csolve, cfactor and so on...

No, don't do that, please . . .

"use i" does more things than just factor, one example:

http://www.hpmuseum.org/forum/thread-4227.html

There is no complex abs in the catalog!
Find all posts by this user
Quote this message in a reply
11-18-2015, 06:52 PM (This post was last modified: 11-18-2015 07:27 PM by pwarmuth.)
Post: #12
RE: Possible error in on-calculator help.
This is from a different thread (the one that spawned this thread), but I thought it was pertinent to the discussion.

(11-14-2015 08:13 PM)parisse Wrote:  ...On the hp49, it was mandatory to check complex if you wanted to leave the real domain. It was however not efficient because you had to switch mode too often. That's the main reason I designed giac that way...

Inefficient perhaps, but it also seems to have much less room for misinterpretation and confusion. If complex mode behaved like it did on the hp49, but you still left the complex solvers (csolve() cfactor() etc) or a function that instructed the calculator to evaluate with complex output for when you explicitly need complex answers, the inefficiency could be partially abated.

Edit:

If a generalized function for forcing complex output (or individual functions for everything that you would need in the complex domain) were available, having a setting for complex output would be redundant.
Find all posts by this user
Quote this message in a reply
11-18-2015, 07:06 PM
Post: #13
RE: Possible error in on-calculator help.
(11-18-2015 05:29 PM)Helge Gabert Wrote:  "use i" does more things than just factor, one example:

http://www.hpmuseum.org/forum/thread-4227.html

There is no complex abs in the catalog!

Well, that is specifically one of the places that I was trying to prevent the behavior. It creates more problems then helps.

Would you be happy with a cAbs or similar?

TW

Although I work for HP, the views and opinions I post here are my own.
Find all posts by this user
Quote this message in a reply
11-18-2015, 07:15 PM
Post: #14
RE: Possible error in on-calculator help.
Yes, cAbs would be OK, but there may be more functions affected. All I am saying, vet it first (but I'm sure you'll do that) with the development team and Bernard, before you pull the plug.

Thanks!
Find all posts by this user
Quote this message in a reply
11-18-2015, 08:12 PM
Post: #15
RE: Possible error in on-calculator help.
(11-18-2015 07:15 PM)Helge Gabert Wrote:  Yes, cAbs would be OK, but there may be more functions affected. All I am saying, vet it first (but I'm sure you'll do that) with the development team and Bernard, before you pull the plug.

Thanks!

Well, its actually what he has been recommending for quite a while on this board.

TW

Although I work for HP, the views and opinions I post here are my own.
Find all posts by this user
Quote this message in a reply
11-18-2015, 08:53 PM
Post: #16
RE: Possible error in on-calculator help.
(11-18-2015 07:06 PM)Tim Wessman Wrote:  
(11-18-2015 05:29 PM)Helge Gabert Wrote:  "use i" does more things than just factor, one example:

http://www.hpmuseum.org/forum/thread-4227.html

There is no complex abs in the catalog!

Well, that is specifically one of the places that I was trying to prevent the behavior. It creates more problems then helps.

Would you be happy with a cAbs or similar?

This seems like opening a can of worms. Now suddenly for every regular command you would need a corresponding complex version. And with cAbs(x), what would abs(x) do if x were a complex number? Would it issue a warning? Throw an error?

Would the amount of work vetting through which commands needs a corresponding cCommand version be as much as going through the current list of commands and adding to their documentation whether or not they are affected by the complex flag? If every command has a corresponding cCommand version, it would seem to me you would have to go back and ensure that the non-complex version must only return real values or an error message. If that is the case, then why not just document whether or not that command is affected by the flag?

Graph 3D | QPI | SolveSys
Find all posts by this user
Quote this message in a reply
11-18-2015, 09:12 PM (This post was last modified: 11-18-2015 09:25 PM by pwarmuth.)
Post: #17
RE: Possible error in on-calculator help.
Perhaps... you could treat the complex flag somewhat like they did on the hp49 (where turning off complex numbers forces real-domain evaluation, and having it on will use complex numbers wherever they are appropriate), but have special cFunctions available for the most commonly needed complex solvers. That would allow you to get complex output without forcing you to toggle the option for a single problem, but still allow the option to if you're working with complex numbers almost exclusively.
Find all posts by this user
Quote this message in a reply
11-19-2015, 08:11 AM
Post: #18
RE: Possible error in on-calculator help.
(11-18-2015 03:29 PM)pwarmuth Wrote:  I feel rather dense for asking this, but how is the result of that indefinite integration not a solution, but rather a calculation? What's the difference, I'm not understanding the terminology it seems.

Thanks for pointing that out, parisse. That makes sense. I also do agree that it is not a complete explanation, and leaves room for misinterpretation.

An equation has a solution, you have a variable for which you don't know the value and you have to find this value.

In a calculation you know all the values of the variables, you substitute these variables with their values and calculate the result. An integral like the one you proposed is only a calculation, you integrate the function and then substitute the x once with 0 and once with -1 and calculate the result. There is no equation to solve.

Concerning the "Use i" feature I really don't see why you should take it away, if you don't need it you simply uncheck it, that's all. But if you need complex solutions you can simply check it so you don't need to use cFunctions.
Find all posts by this user
Quote this message in a reply
11-20-2015, 04:48 PM
Post: #19
RE: Possible error in on-calculator help.
Well now I feel kind of stupid. haha

No shit, it's an definite integral. *facepalm

Thanks! Big Grin
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: