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.
Guest mode
You can use the solver for up to
3 free solves.
Sign in or create and verify an account
to access Solve History,
My Information and your personal
API key / API access.
Password recovery is available
for registered accounts.
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.
When available, the Results area also displays
the explanation returned by rAIson for its
recommendation. This helps the user understand
why a particular method was selected from the
supplied criteria.
If the Automatic / rAIson flow has no usable
problem context, the application may use an
internal general fallback criterion.
This internal fallback is handled automatically
and is not a user-selectable criterion.
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 equation and expression forms are accepted.
For example,
x² - 4 = 0
and
x² - 4
are equivalent.
If no equals sign is provided, the expression
is interpreted as being 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.
12. Accounts, guest access and password recovery
The application can be used either with a registered
account or in Guest mode.
Registered users
can log in, keep their solve history,
access My Information and use a personal API key.
Guest users
can perform up to
3 free solves.
New accounts must verify their email address
before they can log in.
If a password is forgotten, enter the account
email address and select
Forgot password?.
A password-reset link is sent by email.
The link is valid for
30 minutes
and can be used only once.
Resetting the password does not create
a new account. Existing history,
account information, role and API key
remain associated with the same user.
13. Results and solve history
After a solve attempt, the Results area displays
the method that was executed and the result
returned by the solver.
In Automatic / rAIson mode, the result can also
contain the method recommended by rAIson together
with the explanation supplied by rAIson.
A recommendation from rAIson selects the method.
The numerical or symbolic computation itself
is then performed by the Python backend.
Registered users can open
History
to review previous solve attempts.
The history includes both successful and failed
attempts.
Success
means that the selected method returned
a valid result.
Failed
means that the solve attempt could not
produce a valid result.
Failed entries include the error code
and a readable error message when available.
14. My Information and API access
Logged-in users can open
My Information
to view their account information and
personal API key.
The API key is a private credential.
Do not publish it, include it in screenshots,
commit it to source-control repositories
or share it with other users.
The API allows an external program or script
to send equations directly to the same
solver backend used by the web application.
Solve requests are sent with an HTTP
POST
request to:
https://abess.hmu.gr/api/equation/solve
The personal key must be supplied in the
X-API-Key
request header.
API responses are returned as JSON.
Depending on the method and outcome,
the response can contain fields such as
success,
method,
root,
iterations,
error,
message,
suggestion
and rAIson-related information.
Authenticated API solve attempts are associated
with the same registered account and are recorded
by the application as API requests.
Selecting
Regenerate API Key
creates a new personal key.
The previous API key immediately stops
being valid, so any external scripts
using the old key must be updated.
15. Understanding errors and suggestions
When a solve attempt cannot be completed,
the application tries to provide a clear
explanation instead of exposing internal
technical details.
An error response may contain:
Title —
a short description of the problem.
Message —
an explanation of what prevented
the solve from succeeding.
Suggestion —
a recommended change to the equation,
interval, starting values, method
or criteria.
Common causes include an unsuitable interval,
invalid starting values, a function that is
undefined for required values, an equation that
does not match the selected method, or failure
of a numerical method to converge.
When Automatic / rAIson is used,
the rAIson recommendation and its explanation
are separate from the solver error message.
A valid method recommendation does not guarantee
that every numerical input supplied to that
method will produce a successful solve.
16. Before reporting a problem
Check that the equation contains only
the supported free unknown
x.
Check parentheses, powers and function syntax.
For interval methods, review
a
and
b.
For open numerical methods, review
the supplied starting values.
If using Automatic / rAIson,
verify that the selected criteria
correctly describe the problem.
If an API request fails,
verify the endpoint,
Content-Type
and
X-API-Key
header.