Sign in for full access or continue as a guest
with 3 free solves.
Equation Solver
Enter an equation, select a method
and solve it or draw its graph.
Guest mode
My History
Equation Settings
Enter the equation, choose a method,
and optionally select criteria or
initial values.
You can select none, one, or multiple criteria.
rAIson uses the selected criteria to recommend
a suitable solving method.
Results
No result yet
Click Solve to solve the equation
or Draw Graph to display the graph.
Function Graph
Use the mouse wheel to zoom.
Drag the graph to move.
Click on the curve to select a and b.
Equation Solver Help
You do not need to know Python or SymPy syntax.
The solver accepts common mathematical notation,
Unicode mathematical symbols and several
MATLAB-style scalar operators.
1. How the application works
Enter a scalar equation whose free unknown is
x.
You can manually select a solving method or choose
Automatic / rAIson.
In Automatic / rAIson mode, the selected problem
criteria are sent to rAIson.
rAIson recommends a solving method and Python
executes the selected method.
Selecting a criterion does not manually force a method.
The criterion provides information to rAIson,
while the final method recommendation remains
the responsibility of rAIson.
2. Basic use
Enter an equation.
Select a solving method or choose
Automatic / rAIson.
If Automatic / rAIson is selected,
choose any criteria that describe the problem.
If a manual numerical method requires an interval
or starting value, enter the requested parameters.
Press Solve.
Press Draw Graph
to inspect the function graph.
Both forms are accepted:
x² - 4 = 0
and
x² - 4.
An expression without an equals sign is interpreted
as an equation equal to zero.
3. Supported mathematical notation
Meaning
Accepted notation
Example
Variable
x
x + 2 = 0
Powers
x^2,
x**2,
x²,
x³
x² - 4 = 0
MATLAB-style power
x.^2
x.^2 - 4 = 0
Multiplication
*,
.*,
×,
·,
or implicit multiplication
2*x,
2x,
3sin(x),
2π
Division
/,
./,
÷
x/2 = 4
Mathematical π
pi,
π
2π*x = 1
Euler's number
e,
E
e^x = 5
Imaginary unit
i,
j,
I
x² + 1 = 0
Infinity
inf,
infinity,
∞
Can be used where an infinite
symbolic bound is meaningful.
Square root
sqrt(x),
√x,
√(x+1)
√x = 3
Absolute value
abs(x),
|x|
|x| = 2
Natural logarithm
ln(x),
log(x)
ln(x) = 2
Base-10 logarithm
log10(x)
log10(x) = 2
Exponential
exp(x),
e^x
exp(x) - 5 = 0
Trigonometric functions
sin(x),
cos(x),
tan(x)
sin(x) - 0.5 = 0
Inverse trigonometric functions
asin(x),
acos(x),
atan(x)
asin(x) = pi/6
Hyperbolic functions
sinh(x),
cosh(x),
tanh(x)
sinh(x) = 1
Factorial
factorial(x),
x!
factorial(x) = 120
Gamma function
gamma(x),
Gamma(x)
gamma(x) = 2
Incomplete gamma functions
lowergamma(a,x),
uppergamma(a,x)
lowergamma(2,x) = 0.5
Error function
erf(x)
erf(x) = 0.5
Minimum / Maximum
min(...),
max(...)
max(x,2) = 5
Definite integral
Integral(...),
integrate(...)
Integral(t**2, (t,0,x)) = 9
Derivative
Derivative(...),
diff(...)
Derivative(sin(x),x) = 0.5
Scientific notation
Standard
e
notation
1e-8,
15.8e-6
Standard minus
-
and Unicode
−
x − 5 = 0
4. Solving methods and required inputs
Method
Manual input
Notes
Bisection Method
a,
b
The interval should contain
a sign change.
Newton-Raphson Method
x0
Requires an initial approximation.
Secant Method
x0,
x1
Requires two distinct
starting values.
fzero
a,
b
Uses a bracket containing
a sign change.
ITP Method
a,
b
Bracketed numerical method.
Muller Method
None in the interface
The application calculates
suitable starting points.
Complex roots are supported.
Symbolic Solve
None
Attempts to obtain exact
symbolic solutions.
Polynomial Roots
None
Intended for polynomial equations.
Multiple roots can be returned.
Integer Exhaustive Scan
Optional
a,
b
Searches integer values
within the selected range.
Automatic / rAIson
Criteria and optional
numerical values
rAIson selects the method.
Python then executes
that selected method.
5. Equation examples
Press Use Example
to place an example directly into the solver.
When useful, the recommended method and its
required numerical parameters are also selected.
Polynomial
x² - 5x + 6 = 0
Demonstrates polynomial notation
and implicit multiplication.
Bisection
x² - 4 = 0
Uses the interval [0,3].
Exponential
e^x - 5 = 0
Demonstrates Euler's number
and exponential notation.
Example of a larger equation
using pi, exp and powers.
6. Analytical solution example
If the user selects
Automatic / rAIson
and the criterion
I seek an analytical solution,
that information is sent to rAIson.
If rAIson recommends a symbolic method,
the application can display the exact
mathematical solutions as well as
decimal approximations.
Equation:
x² - 2 = 0
Mode:
Automatic / rAIson
Criterion:
I seek an analytical solution
Example symbolic result:
x = -sqrt(2)
x = sqrt(2)
Decimal approximations:
x ≈ -1.4142135624
x ≈ 1.4142135624
7. rAIson Criteria Guide
Criteria describe mathematical properties
of the problem or preferences for the solution.
More than one criterion may be selected.
Criterion
Meaning
I seek an analytical solution
Indicates that an exact symbolic
solution is preferred when appropriate.
Function is polynomial
Indicates that the equation
is polynomial in x.
I seek a complex root
Indicates that complex-valued
roots are relevant.
Derivative is available
Indicates that derivative information
is available for the problem.
I have a good initial approximation
Indicates that a starting value
close to the expected root is known.
Integer-valued threshold problem
Indicates that the required answer
is an integer threshold or integer value.
f(a) * f(b) < 0
Indicates that the supplied interval
contains a sign change.
Continuous extension is available
Indicates that the function
has a suitable continuous extension.
Length of [a,b] >> 1
Indicates that the available
search interval is relatively large.
Steep gradient or no gradient near root
Describes difficult derivative behavior
close to the solution.
Inflection points near solution
Indicates that inflection points
may occur close to the expected root.
Extremum points near solution
Indicates that local extrema
may occur close to the solution.
Function behaves smoothly near root
Indicates regular and smooth
local behavior near the root.
Known k-multiplicity of root
Indicates that information
about root multiplicity is known.
Function is monotonic
Indicates that the function
is monotonic in the relevant region.
I need simplicity
Expresses a preference
for a simpler solving approach.
I need robustness
Expresses a preference
for robust root-finding behavior.
I need speed
Expresses a preference
for computational speed.
8. Integrals and derivatives
The main free unknown must remain
x.
A bound variable such as
t
may be used inside an integral.
Integral notation
Integral(t**2, (t, 0, x)) = 9
Alternative integral notation
integrate(t**2, (t, 0, x)) = 9
Exponential integral expression
Integral(exp(-t**2), (t, 0, x)) = 0.5
Derivative notation
Derivative(sin(x), x) = 0.5
9. Important input tips
Use parentheses when an expression
could otherwise be ambiguous.
Only one equality sign should be used
in a single equation.
The solver accepts both standard
keyboard notation and several
mathematical Unicode symbols.
MATLAB scalar operators such as
.^,
.*
and
./
are accepted.
Scientific notation such as
1e-8
and
15.8e-6
is supported.
For bracketed methods,
choose an interval appropriate
for the equation.
Symbolic Solve may return exact expressions,
while numerical methods normally return
numerical approximations.
10. Current scope and limitations
The application is designed for scalar equations
with one free unknown,
x.
Bound variables may appear inside constructs
such as definite integrals, but arbitrary
additional free variables are not supported.
Polynomial Roots is intended for polynomial equations.
Symbolic Solve attempts to obtain an analytical result,
but not every mathematical equation has a closed-form
symbolic solution.
The input field accepts several MATLAB-style
mathematical operators, but it is
not a MATLAB programming environment.
MATLAB scripts and commands such as
for,
syms,
@(x),
optimset
or complete MATLAB functions should not be entered
into the equation field.
Systems of equations, ordinary differential equations,
partial differential equations and general integral
equations with an unknown function are outside
the current scope.
11. Quick method selection reminder
Manual mode means that the selected method is executed
directly. Automatic / rAIson mode means that rAIson
determines the method from the supplied criteria,
and Python then executes that selected method.