Sie sind auf Seite 1von 6

Inequality Solver Version History

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------4.2.1
sion

-Better handling of trigonometric expressions when the constraint expres

evaluates to true
-Fixed a bug where incorrect answers were returned if a constraint expre
ssion was
used with a periodic function that had a period less than 1.
-All values in the constraint expression are now treated as critical poi
nts and are
used in the range evaluations to improve accuracy
-Minor speed and size improvements
-Compiled size currently 3965 bytes
4.2

-Recompiled with TIGCC 0.96 beta 8


-Constraint expressions (using the with operator: "|") can now be used t
o limit the
range of values returned. Note: this requires the installation
of either
IPR by Cyril Pascal, available at http://sirryl.multimania.com,
or a shell
like DoorsOS, Universal OS, PreOS, or KerNO since AMS 2.xx forbi
ds the use of
ASM programs in expressions.
Example:
isolve(sin(x)>0,x)|x<10 and x>0 returns x<3*pi and x>2*pi or x<p
i and x>0
-Compiled size currently 3873 bytes
-------------------------------------------------------------------------------------------4.1.1

-Recompiled with TIGCC 0.96 beta 6


-Fixed a bug where the bounds of a trig equation were incorrectly checke

d for
equality if they weren't also critical points
-Fixed a bug where the bounds weren't checked for equality if the origin
al
expression didn't include equality symbol (equal-to, not-equal-t
o,
greater-than-or-equal-to, less-than-or-equal-to)
-Compiled size currently 3443 bytes
4.10

-Recompiled with TIGCC 0.96 beta 3 (using GCC 4.0)


-Better handling of memory errors
-Better implementation of memory deallocation when errors are thrown
-Warning message now displayed when range is limited to [0,2*pi] (or [0,

360])
-More efficient sorting algorithm for the most common situation
-Continued speed and size optimizations
-Compiled size currently 3383 bytes
--------------------------------------------------------------------------------------------

4.00
-Completely rewritten again in C using TIGCC using the normal RPN expres
sion syntax,
thus eliminating tedious conversions and greatly speeding up the
program
-Average speed increase over TI-Basic version is 50%
-Multiple expressions can now be handled correctly
-Many optimizations to both increase speed and decrease size
-Compiled size 3663 bytes
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------3.00

-Internal release
-Code completely rewritten in C using TIGCC
-Having little understanding of the TI operating system, all expression
manipulation
required converting from the TI expression format into a C-strin
g, then back
to an expression
-Expressions that can't be simplified correctly and were previously disp
layed as
strings are now displayed as unsimplified expressions
-Completely internationalized
-Small speed gain over the TI-basic version of the function, greater gai
n with small
equations, typically 30%, but can be around 5% with more complex
equations
-Cannot evaluate multiple expressions
-Compiled size currently 4539 bytes (way to high)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------2.10
-Changed some of the coding so that the program would now work in langua
ges other
than English (thanks to Felix for pointing this out)
-Fixed the checking code so that answers would only be displayed as a st
ring when in
AMS 2.08 and up, since answers are correctly simplified in AMS 2
.05
-Compiled size currently 3976 bytes
2.00
-After redesigning the code, the major improvement of the program is tha
t it is now
compatible with approximations. This came at the sacrifice of s
peed and
size, but the only noticeable speed difference will come with co
mplicated
equations and I don't really care about the size anymore, as lon
g as it's
optimized (which it currently is).
-With the above change, I fixed the problem with trig equations in AMS 2
.08 that
would previously return only some of the answers. All of the an
swers should

now be returned.
-Changed the order in which negative answers are included for trig equat
ions in
AMS 2.05 (mentioned in version 1.33) so that it runs faster
-Added code so that it will return approximated answers if solving for e
xact ones
does not give all of the correct solutions
-Compiled size currently 3734 bytes
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------1.34
-I was informed that certain trig functions did not return all the corre
ct answers
(thanks to Martin for finding it) and through this I discovered
that AMS
2.05 won't return all the solutions for equations such as
2*(1-cos(2x))=3*sin(2x) unless it was finding approximate soluti
ons.
However, when placing approximate irrational numbers back into t
he equation
the calculator will not acknowledge these as correct solutions.
Therefore
I was forced to accept this bug in the AMS and only use the exac
t answers
that it gives.
-Added code for answers that are recognized as valid solutions only when
they are
approximated
-Added warning in README about the problems with approximating irrationa
l numbers
-Compiled size currently 3000 bytes
1.33
-Since 2.08 can't simplify inequalities with square roots or fractional
exponents,
I recently downgraded to AMS 2.05 and discovered that this opera
ting
system handles the solving of trig functions with a given range
very
differently from 2.08. For some reason, 2.05 won't return negat
ive answers
even if they are correct and within the range
-Added code to help fix this problem in AMS 2.05 while still allowing it
to fix the
problems AMS 2.08 has with extraneous information (unfortunately
, entirely
different problems)
-Added a disclaimer to the README about the different operating systems
and added
a "Notes" section to help move stuff away from the top
-Current compiled size: 2895 bytes
1.32
-Small update, realized I screwed up and approximated a value that I sho
uldn't have
-Added a little more code so that the testing for incorrect simplificati
on works
better on any AMS other than 2.08
-Compiled size currently 2855 bytes

1.31
-I actually took the time to test this version before submitting it, so
there's
many bug fixes over the last version; I'm not sure if I can reme
mber them
all to include them here:
-Corrected the solving of trig functions with absolute values
-Corrected the code so it uses the innermost trig expression in situatio
ns such as
sin(sin(x))>0, I don't think it can actually solve this (mainly
because the
calculator has problems solving it), but it no longer returns wr
ong answers
-Adjusted for when the answer includes an arbitrary integer condition wh
en it
isn't necessary (such as "x=pi and @n1>=0")
-Allowed for better handling of answers that include exponents or square
roots;
very optimized; I discovered that the simplification errors for
these
answers only occurred in AMS 2.08; all previous operating system
s do not
have the problem, or at least not to that extent
-Changed the code for better error catching of equations that did not co
ntain the
specified variable and I reworded the error message to make it m
ore clear
-Decided that itsolve should be uploaded as a separate program; now titl
ed
"Trigonometric Equation and Inequality Solver", and renamed tsol
ve; it
should be included in the same directories of the ticalc.org arc
hives as
this program
-Compiled size currently 2849 bytes
1.3
-Trig equations now limit the value inside of the trig function to [0,2*
pi] or
[0,360] (rather than limiting the variable to this range), this s
hould
solve many problems with trig functions, making this part of the
program
much closer to working accurately in most cases
-Unfortunately the addition of the above code added 500 bytes to the pro
gram and
pushed the compiled size over 3000 bytes once again (3178 on my
calc), but
this solves the last major problem that I feel is fixable with t
he program,
so I guess it's worth it
-------------------------------------------------------------------------------------------1.24
-Actually released after 1.3, mainly since I didn't like the size of the
newer
versions and I wanted people to have an option
-Optimized more than versions previous to 1.31, but it still limits the
variable of
trig functions to [0,2*pi] or [0,360]
-Better handling of functions that the calc can't display correctly, nam

ely answers
that include a square root or exponent; very optimized
1.23
-Corrected the main program so that "x<=2*pi and x>=0" now yields true (
increasing
the compiled size to 2610 bytes)
-Changed itsolve so that the output would be between the minimum and max
imum
(similar to the range problem that was corrected in the previous
update)
-Added an error message to itsolve to catch improper ranges (if minimum
> maximum)
-Reduced compiled size of itsolve to 2266
1.22
some

-Changed the code for itsolve to reflect the new optimization


-Realized the range for trig functions wasn't quite [0,2*pi] or [0,360] (
inequalities would yield things like "x>3*pi/2 or x<pi/2"); this

has
been corrected so it yields "x<=2*pi and x>3*pi/2 or x<pi/2 and
x>=0"
-The above change dropped the compiled size to 2517 bytes
-Added more to the note about trig functions in the README
1.21
-Fixed a bug that limited inverse trig functions to the range [0,2*pi] (
[0,360])
-Further optimized the code (specifically in the testing section), compi
led size
down to 2526 bytes
-In equations with trig expressions (in isolve and itsolve), I sacrifice
d the
ability to display either "x=0" or "x=2*pi", but not both, in or
der to
make the function smaller (now will display both "x=0" and "x=2*
pi" even
though they are the same)
1.2
-I got feedback from one user at this point, so I plan to continue worki
ng on the
program, but I don't really know what to do with it; if anyone h
as any
suggestions or comments about something to add, they would be gr
eatly
appreciated
-Discovered and fixed a problem where the solving of multiple equations
would get stuck in a loop
-Fixed a bug that caused an error to be reported when the answer contain
ed
an absolute value that was greater than a negative number (such
as
abs(x)>-1)
-MAJOR reorganization and optimization of the code, probably making it
nearly impossible for anyone to follow what it's doing (reusing
variables makes things very confusing)
-Finally dropped the compiled size below 3,000 bytes (2816 on my calc)
-Haven't changed itsolve for the newly optimized code, still debating as
to whether or not I'm going to
--------------------------------------------------------------------------------

------------1.12
-Discovered and corrected problem in the code for trig functions that
screwed up answers involving zero,
-Considerable optimization dropping compiled size from 3446 to 3193, I
still want to get it below 3000 but that'll be for another updat
e
1.11
at

-Discovered and corrected a problem with equations with two variables th


results in a single answer, it can now display them without erro

rs
1.1

-Realized that trig functions wouldn't work and tried to fix it, trig
variables now limited to one complete circle
-I removed the optional string solution program because I think it's
pointless (e-mail me if you still want it)

-------------------------------------------------------------------------------------------1.02
-Slight optimization, dropping compiled size from 3116 bytes to 3042
1.01

-Attempted to fix the false solutions that occurred when the solution
set contained a square root or fractional exponent; caused by th

e
calculator's stupid methods of simplifying things and it now ret
urns
those solutions as strings
1.0

-ticalc.org release (after nearly all of the above versions were


updated while still in queue),
-fixed a bug with undefined values in multiple equations
-optimized multiple equation solving
-added error recognition for equations with multiple variables
-fixed it so that one over the absolute value of zero (1/abs(0)) is
undefined (the calculator reduces it to infinity)
-rearranged code to reduce size

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------0.9 - Corrected an error for equations containing the not-equal-to sign


0.8 - Corrected an error with solving equations that have real results as
inequalities but imaginary results as equalities (presented a
problem since the equality was used in the solving process)
0.7 - FINALLY ACHIEVED COMPLETE SOLVING OF ALL MULTIPLE EQUATIONS!!!
0.6 - Added support for multiple equations joined exclusively by "and" or
exclusively by "or"
0.5 - Added more error recognition and correct some of the existing ones
0.4 - Added simplification of multiple equations but still cannot solve them
0.3 - Optimized code, faster sorting algorithm
0.2 - Answers now returned as expressions rather than strings which allows
the calculator to simplify it, making things SO much faster and
easier
0.1 - First release, can only solve a single equation

Das könnte Ihnen auch gefallen