The Museum of HP Calculators

HP Forum Archive 14

 Idiosyncrasy of the 33S (revised)Message #1 Posted by Mike on 3 Sept 2004, 1:15 p.m. I have listed some of the idiosyncrasy of the 33S below. My question is when would these show up in common scenarios. Why would you input –0, or when would you have a negative H.MMSS. I am asking out of ignorance. Mike Converting H.MMSS from H.DDDD, of a negative H.MMSS HMS -0 in Polar Conversion Polar-coordinate / Complex Missing negative real roots Solve Stays in Rad / Grad after a self test Radians Probability Overflow nCr

 Re: Idiosyncrasy of the 33S (revised)Message #2 Posted by Bill Wiese on 3 Sept 2004, 2:59 p.m.,in response to message #1 by Mike Hi, Mike... This is a bit like the Pentium CPU FDIV division bug maybe 5-6 years ago (IIRC). Intel said it was a rare event and normal users would never encounter a problem. Pure hubris & BS. Do you want to know if your CPU or calculator is 'eligible to provide a correct solution'??? I don't. While these specific instances you list are sometimes 'hard to get to' in simple calculator use, they're a sign of poorly designed algorithms & preprocessing/range reduction methods, and even worse testing for 'corner cases'. It's a real confidence-reducer. Actually, inability to find negative roots of a simple equation really calls into question the whole rootfinder architecture, and this could well be magnified in more complex situations. What about cubic polynomial equation with three negative roots? Will the 33S find it? Dunno. So then you end up doing things semi-manually because you don't have confidence in calculator. Many calculators' H.MS<->H.h -style functions are named D.MS<->Dd (degree/min/sec<==> decimal degrees) instead; this is, in fact, called 'sexagesimal conversion'. If you think about using these operations in navigational/map calculations instead of time calculations, then usage of negative values can make sense and should operate properly. (And this is really even applicable for time offsets and relative times, etc.) The inability to intelligently handle "-0" as an argument is a real input argument processing fault and does not engender much confidence in the calculator's use & design. Similarly, the fact that the calc can even operate _anytime_ in RAD mode but not have the RAD annunciator displayed is atrocious. Right now, we just know this happens coming out of self-test mode: are there other times this could happen? Improper handling of machine state in one instance could well have side effects elsewhere. The worst thing is that this is 2004, with many many predecessor calculators from many manufacuturers able to handle all these (and many similar) issues properly. It'd be one thing if this were an early 70s calculator: many difficult workarounds had to be made in terms of ROM space, CPU speed, etc. But with a decent 8-bit CPU and plenty of ROM & RAM today - there's no excuse. Messrs. Hewlett and Packard are probably spinning in their graves. And Carly doesn't even have a clue. Bill Wiese San Jose CA

 Re: Idiosyncrasy of the 33S (revised)Message #3 Posted by Gene on 3 Sept 2004, 8:32 p.m.,in response to message #2 by Bill Wiese The root finding issue is only for direct solve cases. X^2 - 4 SOLVE X will return +2 if done using the Equation solver. This can be alieviated by entering the equation as X^2+0*X - 4 which will return roots + 2 or -2 depending on initial guess. Actually, if you take a look at the equation solver / root solver learning modules on the hp website, you'll see how it can be done using a program without much effort. Only a concern in the direct solve mode.

 Solving functions in the 33SMessage #4 Posted by Karl Schneider on 3 Sept 2004, 11:11 p.m.,in response to message #3 by Gene Gene -- OK, can you enlighten us about what methods were incorporated into the HP-33S algorithms for solving equations? I got the following results when solving the following equations and program after setting x to -5 and entering -1 in the stack X-register. ```X^2-4 2.00 program: SQ(X)-4 2.00 LBL V X*X-4 -2.00 RCL X (program) -2.00 x2 4 - RTN ``` Are the x2 and yx functions handled in a special way within equations? I'd assumed that SOLVE was simply evaluating the function and adjusting the input guesses using a refined Newton's Method. I preferred the straightforwardness of the original HP-34C implementation, which was ported to the HP-15C and HP-41C Advantage Pac: Key in two values specifying the range in which to look for the root of a programmed function, then SOLVE the program containing the function. Why should the user have to insert mathematically needless expressions into an equation in order to "trick" thee 33S into performing as desired? -- KS

 Re: Solving functions in the 33SMessage #5 Posted by Gene on 4 Sept 2004, 9:22 a.m.,in response to message #4 by Karl Schneider That I don't know. I don't know how the internal solutions work. Regarding the insertion of 0*X insertion, that's a user-found addition to get the 33S solver to not solve the equation "directly". Apparently, if the variable shows up in the equation more than once, the 33S solution method changes. All I know is, I can get the negative and positive roots by solving an equation in a program or by adding a 0*X in the equation mode. Gene

 Needless & undocumented "sophistication"Message #6 Posted by Karl Schneider on 5 Sept 2004, 12:17 a.m.,in response to message #5 by Gene Well, I tried a few more examples of solving equations on the 33S, to determine its methods for handling polynomials or equations in which the variable to be solved appeared only once in the expression. The rule seems to be as follows: "For polynomial equations in which the variable to be solved appears only once, SOLVE on the HP-33S will algebraically compute the solution value of the variable, using the positive-valued root of every term that is taken to a positive-integer power. For all other types of equations, the the function is solved by numerical iteration using repeated evaluation." Consider the following expression: ```(2*X+3)^2-1 ``` Both solutions are real-valued and negative: -1 and -2. However, no matter what initial guesses are stored in the X variable and the x-register, the 33S will always return "-1" as the solution. This is because: ``` (2*X+3)^2-1 = 0 -> (2*X+3)^2 = 1 -> (2*X+3) = sqrt(1) -> (2*X+3) = +1 [but never -1] -> 2*X = -2 -> X = -1 ``` "-1" is always returned very quickly, even if "-2" is stored in the X variable and x-register as first guesses (which happen to be a solution). But, if "+0*X" is inserted into the expression, or if the (2*X+3)^2 term is expanded, then the user can obtain the "-2" solution by entering guesses that bound -2, but not -1. I did not see this "special feature" documented anywhere in Chapter 7 or Appendix D of the HP-33S manual. If my analysis is correct, I think KinHPo was "too clever by half" by implementing algebraic solutions and employing the CBRT and XROOT functions for solving this small subset of polynomials. This was an unnecessary "refinement" that provides more pitfalls than real benefits -- sometimes, the user will wonder why he cannot obtain the root in the range he specifies! Heck, if the polynomial is so simple that it can be algebraically solved, the user should do the algebra himself. Add one more thing to the list of blunders by KinHPo. -- KS Edited: 5 Sept 2004, 12:23 a.m.

 Read the learning modulesMessage #7 Posted by Gene on 5 Sept 2004, 8:03 a.m.,in response to message #6 by Karl Schneider Hi Karl. Sorry you are frustrated, but this is not exactly a flash of news. Try reading through the learning modules on HP's site, particularly these two: http://www.hp.com/calculators/docs/guides/33sAdvSolver.pdf Advanced uses of the Solver part 1 and http://www.hp.com/calculators/docs/guides/33sAdvSolver2.pdf Advanced users of he solver part 2 (Both written by Wlodek) and finally these last three: As Wlodek discusses in the first of these above, the solver goes for a direct, principal solution. Question: I would think most people really interested in a calculator would really dig into these learning modules, but that doesn't seem to be the case. Is it that people don't know they are there or ?

 And, please don't take offense at the shortness of the title!Message #8 Posted by Gene on 5 Sept 2004, 1:15 p.m.,in response to message #7 by Gene Looking at the title of my last response, it may seem short or irritated. Not at all what I intended. I do think looking at the learning modules more by everyone would be helpful. Wlodek spent a lot of time talking about the solver and and how it differs from the 32SII. Maybe I just need to mention them more often. :-) Gene

 Re: 33S SOLVE: What should have been doneMessage #10 Posted by Gene on 5 Sept 2004, 4:02 p.m.,in response to message #9 by Karl Schneider I too wish the 33S designers had chosen to do things differently in places. Unfortunately, they didn't ask me ahead of time. VERY BIG :-) When I saw the UM, it was pretty much finished by then...perhaps I can pass along your good suggestion to add to the explanation in the UM. It does bother me that more people aren't aware of the learning modules. After all, the 42 modules for the 33s have been available since the day the 33S was available on the HP website. And, again, sorry for any short comments that might have offended/irritated. That was not my intent. :-) Gene

 Re: Idiosyncrasy of the 33S (revised)Message #11 Posted by Karl Schneider on 3 Sept 2004, 11:33 p.m.,in response to message #1 by Mike Mike -- Thanks much for making the effort to consolidate the bug topics into a concise posting with links to the authors who described the respective problems most thoroughly. I was considering such an exercise; I'm planning to send the bug reports and my recent critique of the 33S to HP. As for your questions about -0, Bill is right in that the bug suggests improper input processing. Sure, most users would not deliberately enter -0 from the keyboard, but I noticed the same problems when using +/- to change the sign of a previously-calculated result. So, it's certainly possible to provide an input of -0 to a function inside a program. The discoverer of the HMS bug was using the 33S to do realistic calculations in a navigation-training class. The "-0 Polar-conversion" bug is important because it involves conversion of purely-imaginary numbers. -- KS

 Re: Idiosyncrasy of the 33S (revised) "A general Comment"Message #12 Posted by DavidY on 4 Sept 2004, 9:26 a.m.,in response to message #1 by Mike Looking at the problems with the 33S from a general perspective: It doesn't matter if the trigger condition for the error is "rare"; errors of this sort destroy confidence in the calculator. I certainly would not purchase a 33S--errors in software, especially those in core math routines--indicate a lack of quality control testing. Consider: If the software is emulated (like much of the 49+) automated testing could have been done on development station emulators. And, if the code was re-written in assembly, where was the testing? And, as an aside, the Intel math bug was a chip level/microcode/hardware problem,i.e.base level. The errors found in the 33S are application level. Application level errors can/should be fixed by firmware updates. But, oops, HP didn't make allowances for that either... (and, come on, how much would it have really cost. I have a moderately priced TV multi-remote controller that can be updated--over the phone--with new firmware/data) All in all, it shows HP attempting to trade on its past reputation rather than maintaining that reputation

 Re: Idiosyncrasy of the 33S (revised) "A general Comment"Message #13 Posted by , on 4 Sept 2004, 8:08 p.m.,in response to message #12 by DavidY Having the ROM updateable means 1.flash ROM, 2. an I/O port of some kind. It wouldn't be allowed on the US engineering exam (NCEES). There goes a fair chunk of the market.

 Re: Idiosyncrasy of the 33S (revised) "A general Comment"Message #14 Posted by DavidY on 4 Sept 2004, 10:26 p.m.,in response to message #13 by , Being only a lowly computer consultant I what I know of the NCEES exams is only what I've read here. I thought they were concerned about alphanumeric programables with IR communication possibilities. It should possible to put an internal hardwire port in the battery compartment or such and design the internal update for firmware only. Anyway, errors in firmware giving incorrect answers would also tend to eliminate a market, right?

 Re: Idiosyncrasy of the 33S (revised) "A general Comment"Message #15 Posted by . on 5 Sept 2004, 2:22 a.m.,in response to message #14 by DavidY Do you think more then .1% of potential buyers would read this board? I don't. ". I thought they were concerned about alphanumeric programables with IR communication possibilities." Its not just IR. Even the TI graphic calculators have been banned because thy have an 'alpha lock' key. Another problem is, by having a link port and flash rom, some clever person could alter the calculator in a way that would annoy the NCEES. I think the calculator rule is stupid, but theres nothing that that I can do about it.

 Re: Idiosyncrasy of the 33S (revised) "A general Comment"Message #16 Posted by Norris on 5 Sept 2004, 12:52 p.m.,in response to message #14 by DavidY NCEES will *not* allow any calculator that can store and output text to a PC. Currently, calculators with *any* type of port, IR or serial, are banned. If HP could design a port that could upload new firmware, yet not allow downloads of stored data, then it *might* be acceptable to NCEES. Or maybe not; NCEES is rather paranoid. I would imagine that NCEES exam candidates are easily the biggest market for the 33S; it is popular because (1) it is the only NCEES-approved RPN model in current production, and (2) it is the best NCEES-approved programmable model (either RPN or algebraic) in current production. So it makes sense to buy a 33S if you are taking an NCEES exam, and a few obscure bugs aren't going to change that. But I can't see why anyone other than an NCEES exam candidate (or one of those wacky HP calculator collectors) would buy this model. You can get a comparable scientific calculator, like the Casio FX-115MS Plus, for \$15, so why pay \$50-60 for the 33S? The only advantages of the 33S are (1) RPN, and (2) programmability, and if you value those features you would be much better off with a 48GII or 49G+.

 Re: Idiosyncrasy of the 33S (revised) "A general Comment"Message #17 Posted by GE (France) on 8 Sept 2004, 5:36 p.m.,in response to message #16 by Norris Are NCEES 'wizards' worried by digital cameras and the like, notably found in a lot of portable phones nowadays ? I know I'd rather capture an image in less than 1 second than painfully type 2000+ characters per page. So the calculator restriction sounds dumber and dumber.

 Re: Idiosyncrasy of the 33S (revised) "A general Comment"Message #18 Posted by Dave Shaffer on 8 Sept 2004, 5:46 p.m.,in response to message #17 by GE (France) I presume portable phones are also banned - otherwise you could call for (outside) help! (And, using text messaging, you don't have to talk at all, or listen, to convey information.)

 Re: Idiosyncrasy of the 33S (revised) "A general Comment"Message #19 Posted by Norris on 9 Sept 2004, 1:11 a.m.,in response to message #17 by GE (France) The rules may vary somewhat from state to state, but you can generally assume that *no* digital devices will be allowed in the exam room, except for approved calculators. Cell phones, with or without cameras, are definitely out. Even digital watches are explicitly banned in some states -- if you bring in a watch, it must be analog. For example, the California engineering board (at http://www.dca.ca.gov/pels/e_03_new_policies.pdf ) offers the following gentle hints: ********** ELECTRONIC DEVICES NOT ALLOWED IN EXAMINATION ROOM Electronic devices including but not limited to cell phones, pagers, personal data assistants (PDAs), digital wristwatches, digital clocks, scanners, cameras or any calculating device which, in the opinion of the Board, may pose a threat to exam security SHALL NOT BE BROUGHT INTO THE EXAMINATION ROOM. If any of these items are brought into the examination room, you will be required to leave them at your own risk in a box or container inside the examination area. The Board assumes no responsibility or liability for any of these items. These items will be returned to you after the examination. If you refuse to surrender the items to the Board's representatives upon request, you will be removed from the examination for failing to comply with the laws and policies regarding examination security and subversion. If you are found to have such devices with you during the examination, the item(s) will be confiscated and you will be removed from the examination. In addition to the items being confiscated, the incident will be reported to the Enforcement Unit of the Board for investigation as a possible violation of the laws regarding examination security and subversion. Penalties for such a violation can include, but are not limited to, your examination being voided and your examination fee being forfeited. LEAVE THESE DEVICES IN YOUR CAR OR AT HOME!

 Re: Idiosyncrasy of the 33S (revised) "A general Comment" [rant]Message #20 Posted by Thomas Radtke on 5 Sept 2004, 6:51 a.m.,in response to message #12 by DavidY But HP *is* maintaining its reputation. Remeber the many bugs with the 48 models? 35? 32SII? It was never a good idea to be an early adopter without being forced to it. Ok, I don't know the situation with TI, Casio, Sharp etc., maybe HP calculators have fewer bugs. Anyone else knows? Thomas

Go back to the main exhibit hall