Use a friendly and expressive syntax, powered by proven deterministic solvers ● Skip debugging large Python-style programs ● Let your AI chat-box build syntax you can actually read, verify, and run with confidence.
Try instantly as guest, or register free to save work and remove guest limits. Open the solver instantly as a guest. No account required for a quick trial. Register to be able to save your work, and remove guest limits. Now free for all users !!
Solution Report
| Variable | Init | Min | Max | Final Value | |
|---|---|---|---|---|---|
| 1 | A | 1 | 0.04979 | 1 | 0.04979 |
| 2 | B | 0 | 0 | 0.2497 | 0.04731 |
| 3 | C | 0 | 0 | 0.9029 | 0.9029 |
PolymathPlus gives students, instructors, and engineers a structured solving workflow: enter the model, run a deterministic solver, then inspect the generated report.
Solver Examples |
![]() |
Explore these examples to learn the simple problem entry syntax. Each example popup shows the problem input in the left panel and the solution output in the right panel.
Using an AI assistant?
Copy the PolymathPlus AI context.
Site Licenses |
![]() |
Site registration is still required, even though access to the software is now provided for free. Site licenses allow institutions to install the desktop version on their public lab computers and give their users the ability to store programs online, supporting better collaboration and availability.
To initiate the registration of a new site, please reach out to us and provide the following details:
| Detail | Example | |
| 1. | Site name | Arizona State University |
| 2. | IT contact email | john123@asu.edu |
| 3. | Backup email | abra2759@asu.edu |
| 4. | Email extension/s | @asu.edu, @student.asu.edu |
| 5. | Site Address | ABC College 123 University Avenue College Town, CA 98765 United States |
Support and FAQ |
![]() |
Our support team typically replies to common requests/queries within two business days. For technical questions, enhancement requests, or bug reports, email admin@polymathplus.org with a brief description and any screenshots.
Below you'll find common support questions and answers:
PolymathPlus is math-solving software designed for students, scientists, and engineers, built to handle various numerical problems such as nonlinear equations, ordinary differential equations, linear/polynomial/nonlinear curve-fitting regression, and more.
At its core, it is a deterministic computational engine that applies well-established, rigorously validated numerical algorithms to solve mathematical and engineering models. For the same model and inputs, it produces reproducible results, which is essential for verification, traceability, and design confidence. This is fundamentally different from heuristic AI systems, which can generate variable outputs and may not always provide the consistency or numerical reliability required for engineering problem-solving.
Our goal is to deliver a user-friendly yet powerful math-solving tool that remains accessible and affordable for users around the world. With PolymathPlus, you can enter a math problem in plain text and instantly receive a numeric solution accompanied by a comprehensive report—all with a single click.
PolymathPlus offers a free, feature-rich online package.
You can try the solver immediately as a guest — no account needed. A free registration is required to access all solver packages without guest limits.
The free package is designed for individual users. Organizations are asked to register their site for their users.
Yes — PolymathPlus works on virtually any modern device.
The online version works through all major browsers—including Chrome, Safari, Opera, Firefox, and Edge—on both Windows and macOS laptops and desktops. You can also access PolymathPlus on Android and iOS smartphones or tablets using the supported web browsers.
For users with paid licenses, we also offer a dedicated Windows desktop version.
You can use an AI assistant such as ChatGPT, Gemini, Claude, or Copilot to help convert a plain-language engineering or math problem into PolymathPlus source code. This works especially well because PolymathPlus syntax is deliberately simple, making AI-generated source much easier to review, troubleshoot, and validate than a full Python or MATLAB program.
For best results, first provide the context that teaches the AI the supported PolymathPlus program types, syntax rules, examples, and common repair steps. To copy the PolymathPlus AI context, use the button below.
Copy the PolymathPlus AI context
Once copied, paste that context into your AI assistant chat box, then describe the problem you want to solve in natural language. The AI should help you produce a valid PolymathPlus program.
This workflow combines the strengths of both tools: AI helps draft the source quickly, while PolymathPlus provides deterministic numerical solving for engineering-grade reliability, reproducibility, and precision.
The legacy Polymath 6.x software is no longer supported, as the organization behind it has been dissolved. PolymathPlus was developed by a new, independent organization, maintaining full backward compatibility with the syntax of Polymath 6.1. At the same time, it delivers major advancements in algorithm optimization, capabilities, and underlying technology.
PolymathPlus is available online as a web application in both free and paid versions. The paid desktop version is offered with affordable Std and Pro licenses for individual users.
PolymathPlus is now offered as a free online service. Users who previously purchased individual licenses can continue using the Windows desktop version available in their Profile page, although this download is no longer provided to the general public.
In addition, former Std and Pro users retain the ability to store programs online without the storage limits applied to new free‑tier users.
PolymathPlus uses well-established, finely tuned numerical solver algorithms.
These algorithms have been rigorously tested over more than 20 years of solving real-world engineering problems.
The core development team of PolymathPlus also created the earlier Polymath application, which was widely utilized as a numerical solver package within the global community of Chemical Engineers.
The development was also encouraged by:
|
CACHE | The Computer Aids for Chemical Engineering Education Corporation, as part of the |
![]() |
AIChE | The American Institute of Chemical Engineers |
After the dissolution of the Polymath team/organization, the principal developer took the initiative to rekindle the project. Drawing from more than 25 years of software development and extensive research in numerical packages, a new package was crafted.
PolymathPlus is currently offered as an online service only. Users who previously purchased licenses may continue using the legacy Windows desktop version, but we are not distributing or updating it.
Our present focus is on the online platform unless a significant need and supporting resources justify a new desktop release in the future.
The Site Admin page is designed for IT administrators who manage a site license. Access requires a dedicated access key.
The page provides guidance on configuring the site license and tracking license distribution and usage.
To register a new site, please ✉ contact us with the following information:
We will then provide an access key. The Site Admin IT contact can use this key to access the Site Admin page, where they can manage licenses, and follow deployment instructions.
This enables granting or licenses to site users for online access or on-site desktop use.
First, go to the PolymathPlus website and log in (or register if you haven’t already).
Then:

Note: The site-license key is intended only for authorized members of your organization.
The desktop installer MSI package can be downloaded from the profile page once on STD or PRO licenses. Please note these important points when installing the desktop application:

When you use Tools > Login in the desktop application, you may encounter the error: "Object reference not set to an instance of an object", and the application crashes.
This is a known bug in the older desktop release version SetupPolymathPlus_7051.msi.
To resolve this issue, please download and install the latest version from your profile page.
If you still wish to use an older version, please follow these steps to bypass the issue and complete the registration:
The Windows desktop application relies on the Microsoft Edge WebView2 Runtime. If Edge is not already installed on your computer, you will need to install the WebView2 Runtime separately.
If the application errors with 'The system cannot find the file specified (0x80070002)', download and install the WebView2 Runtime from the Microsoft link below:
WebView2 Evergreen Bootstrapper
This error occurs when the solver's adaptive step-size control reduces the step size excessively, preventing the equation set from converging. This results in the solver taking too many steps without reaching a solution.
To resolve this, try the following steps:
We are seeking sponsors to improve PolymathPlus for universities, organizations, and communities worldwide.
Organizations interested in sponsoring our activities can ✉ contact us directly.
Equations Solver |
![]() |
When solving nonlinear equations—whether a single equation or a system—write each equation so it equals 0 (root-finding form) and provide an initial guess for each variable. In other words, express each equation as 𝑓(𝑥)=0 and supply an initial guess for every nonlinear variable.
Here's a quick example showing how to set up and enter the data for solving two simultaneous nonlinear equations:
|
x2 + y = 12 2x + log(y+2) = 5 |
The unknown variables are x and y.
Below are the root expressions, each corresponding to one of the unknowns, along with initial estimates—both set to 1.
| • | Any part of a line starting with # is treated as a user comment. It's ignored during evaluation and has no effect on the calculations. |
| • | With implicit multiplication syntax, you may omit the multiplication operator * in some cases. For example, 2x is equivalent to 2*x. |
You can also define auxiliary expressions to help simplify long formulas. In the example below, we define a as an auxiliary expression—meaning it's treated as a separate, explicit variable that other expressions can reference. You don't need to provide initial guesses for auxiliary explicit variables—they're automatically computed from the nonlinear variables with provided initial guesses.
When solving a single nonlinear equation—even if you include as many explicit helper variables and expressions as you like—the way you set the starting values is a bit different. Instead of giving just one guess, you need to provide both a minimum and a maximum estimate for the variable.
Take a look at this example where we solve a nonlinear equation to find the value of V.
When solving multiple linear equations, you can enter them in the standard format—just as you'd normally write them. There's no need to rearrange the equations or provide any initial guesses. Simply ensure that all the equations are truly linear.
Here's an example of three linear equations being solved simultaneously:
|
a + 2c = 50 b = –2 + c a + 23c = 12 + b |
The following equations should be entered into PolymathPlus to solve the system described above:
Using implicit multiplication simplifies the syntax:
Using an AI assistant?
Copy the PolymathPlus AI context.
Differential Equations |
![]() |
PolymathPlus is designed to solve systems of simultaneous initial value problems (IVPs) involving first-order ordinary differential equations (ODEs).
Higher-order differential equations can be transformed into systems of first-order equations using standard mathematical techniques. Likewise, partial differential equations (PDEs) can be converted into ODEs for numerical solution using methods such as the method of lines.
Each equation in PolymathPlus must be written in first-order form, where the derivative of a dependent variable is isolated on the left-hand side and expressed as an algebraic function of independent and dependent variables. This structure ensures compatibility with the program's numerical solvers.
Consider this set of ordinary differential equations to be solved:
Given these initial and boundary conditions:
The equations can be entered in PolymathPlus using the following syntax:
You can also use either of the following two compatible syntax formats for the same problem:
The output shows a table of results along with an integration chart.

In addition to differential equations, PolymathPlus allows users to define explicit variables—algebraic expressions that depend on differential variables, the independent variable, and/or other explicit variables, provided no circular dependencies exist. These variables are computed directly from known values and can be used to simplify equations, define intermediate results, or support the overall structure of the model.
The example below illustrates a typical input format for solving a system of ordinary differential equations (ODEs) in PolymathPlus, including the use of explicit variables.
To enter this system of equations into PolymathPlus, you can use the following syntax:
When using implicit multipliers syntax, we can simplify the expressions to:
Using an AI assistant?
Copy the PolymathPlus AI context.
Curve Fitting |
![]() |
PolymathPlus supports curve fitting for linear, polynomial, multi-linear, and nonlinear regression. The report evaluates model variables, generates a regression chart and residual plots, and provides statistics on model accuracy.
Below is an example of the data entry required to solve a linear regression model for a given set of data points.
This example demonstrates a polynomial regression model of order 1 (i.e., linear regression), which finds the best-fitting linear equation for the given data points.

Below is an example of a data entry for solving nonlinear regression model for a given set of data points. The model variables to be found are a and b, for which we should also provide an initial guess.
The model eqaution to fit is as follows:
The data entry for this nonlinear regression model is as follows:
and the solution becomes:

PolymathPlus can calculate a definite integral from known discrete data points. The solver interpolates the supplied x-y data, builds a continuous curve from those points, and calculates the area under the curve over the requested interval. This is useful when the function is known through measurements, tabulated data, or simulation output rather than through a closed-form equation.
The default settings are designed to work well in almost all practical cases. Advanced users can still override the defaults by choosing the interpolation method and the number of sub-sections used for the numerical integration. Increasing the number of sub-sections can improve accuracy for rapidly changing curves, while simpler interpolation may be preferred for piecewise-linear data.
In this example, PolymathPlus integrates y(x) from x = 3 to x = 8.6. By default, it uses Akima interpolation with Simpson integration and 100 sub-sections.

Optional forms provide direct control when needed: use integrate y(x) 2 3 90 akm for Akima interpolation over 2-3 with 90 sub-sections, integrate y(x) 1 2 50 ccs for CCS interpolation over 1-2 with 50 sub-sections, or integrate y(x) 5 9 80 lin for linear interpolation over 5-9 with 80 sub-sections.
Using an AI assistant?
Copy the PolymathPlus AI context.
Constrained Optimization (NLP) |
![]() |
PolymathPlus solves constrained nonlinear programming (NLP) problems. It minimizes a nonlinear objective function by adjusting model variables within user-defined bounds and constraints. Once the lowest feasible objective value is found, the software generates summary reports, charts, and statistics to evaluate the quality of the model fit.
To set up an NLP problem, start by specifying the objective function you want to minimize using the min: keyword.
Constraints are added as expressions that must equal zero for equality constraints (use ... = 0),
or be greater than zero for inequality constraints (use ... > 0).
Write each constraint as a mathematical expression followed by the appropriate comparison.
Please Note: Be sure to rewrite each constraint so that all terms appear on one side of the equation or inequality, leaving zero on the other side.
A key requirement for the NLP solver is to provide bounds for each variable.
For every variable, you must enter an initial guess, a lower bound, and an upper bound
in the following format: variable | guess lower_bound upper_bound
This helps the solver search only within the meaningful range for your model.
The following example demonstrates how to set up a constrained optimization problem. Here, the objective is to minimize a squared distance function subject to nonlinear inequality constraints that define the feasible region.
Mathematically, the problem is formulated as:
The corresponding data entry and the solution report are as follows:

Since the global minimum of the function is located at and this point satisfies all constraints (where and ), the solver converges to the optimal value of .
Least Squares (LSQ) optimization is a specific type of nonlinear programming (NLP) used to fit mathematical models to observed data. The main goal is to minimize the sum of squared differences (residuals) between the actual data points and the values predicted by the model. This approach is widely used in scientific modeling, as it provides a quantitative measure of how well the model matches the data under various equality and inequality constraints.
To perform LSQ optimization in PolymathPlus, you provide a set of observed data points and define a mathematical model that describes the relationship between variables. The solver then adjusts the model parameters to find the best fit, minimizing the total squared error.
Below is an example of how to enter data for a least squares optimization problem. In this example, the model uses a saturation kinetics form (which is commonly applied in enzyme kinetics and other scientific fields). The objective is to find the parameter values that make the model curve fit the data points as closely as possible.
The saturation kinetics form model:
The equation above represents a common model used to describe how a response variable y changes with respect to an independent variable x, where - we seek to find the best fitting model variables Vmax (represented by a) and Km (represented by b), by minimizing the residuals of calculated ycalc values compared to the observed y data points.
In the PolymathPlus program, we should define the data-table of the known variable. We should also define the model expression to optimize using the fit: keyword followed by the math expression.
The program will attempt to find the best suited model variables a and b, by minimizing the sum of squared residuals:
Here is the PolymathPlus program to solve the LSQ optimization problem described above:
and the solution becomes:

The verified solution for this dataset yields a ≈ 2.0 (representing Vmax) and b ≈ 0.5 (representing Km). By evaluating the residual plots provided in the report, users can confirm that the error is randomly distributed, indicating that the nonlinear model chosen is an appropriate fit for the data.
The program solution report includes charts to visualize the accuracy of the fit:

Using an AI assistant?
Copy the PolymathPlus AI context.
About Us |
![]() |
PolymathPlus began as a Windows desktop application and expanded its offerings to include an online web application. Our passion and dedication drive us to continually innovate and refine our solutions. We are committed to providing a top-notch numerical solver package to tackle mathematical challenges with ease and confidence.
![]() |
admin@polymathplus.org
sales@polymathplus.org |
![]() |
Email us to schedule a call |
| Pre-scheduled calls only 08:00-10:00 AM ET |
|
![]() |
Maintenance Status |
The development of our software had been encouraged by CACHE - The Computer Aids for Chemical Engineering Education Corporation, as part of the American Institute of Chemical Engineers.
Drawing from more than 25 years of software development and extensive research in numerical packages, we have crafted the new PolymathPlus package. We maintain ties with many US-based universities and colleges, as well as institutions across other regions worldwide.
Deliver the premier user-friendly, advanced math solver—accessible and affordable worldwide—the first choice for learners, professionals, and enthusiasts.
Research |
![]() |
Our research is dedicated to advancing numerical methods and optimization techniques to strengthen the capabilities of PolymathPlus. The following key research areas highlight their potential impact across disciplines commonly applied in science and engineering, particularly in design, modeling, and control.
Optimization solvers find a function's minimum or maximum.
Engineers often apply classical numerical methods like Gradient Descent, Conjugate Gradient, BFGS, and L-BFGS to solve these problems efficiently. These algorithms improve convergence and reduce computation time, especially for smooth, differentiable functions and large-scale systems.
To tackle Constrained optimization problems (where seeking the optimal maximum or minimum of a function while satisfying variable constraints), engineers use classical methods like the Augmented Lagrangian approach, Generalized Reduced Gradient (GRG), and Karush-Kuhn-Tucker (KKT) conditions. These techniques are designed to handle complex systems with multiple constraints, ensuring feasible and efficient solutions
Solving partial differential equations is central to modeling physical phenomena in engineering and science — from heat transfer and fluid dynamics to structural mechanics and electromagnetics. Robust numerical algorithms are developed to tackle these equations efficiently and accurately.
Common approaches include finite difference methods for structured grids, finite element methods for complex geometries, and spectral methods for high-precision solutions. These techniques enable engineers to simulate and analyze systems governed by PDEs across a wide range of applications.
The Simplex method solves linear programming problems by moving along the edges of feasible solutions to find the optimal one.
Enhancing Simplex algorithms with advanced pivot rules, degeneracy handling, and dual simplex implementations to handle large-scale linear optimization problems more efficiently. Research includes interior-point methods and revised simplex algorithms for improved numerical stability.
Developing specialized solvers for boundary value problems and parameter optimization in ordinary differential equations, including shooting methods and multiple shooting techniques.
Combining advanced regression techniques with ODE solvers for better model fitting in dynamic systems, enabling parameter estimation in complex mathematical models.
Chebyshev and Fourier transformations are mathematical tools used to represent functions using orthogonal basis sets. They enhance numerical solvers for discrete data, improving accuracy and computational efficiency in interpolation and approximation. These transformations also enable advanced solvers by replacing discrete data with continuous function representations.
These research efforts represent our ongoing commitment to improving computational mathematics. While we work to incorporate these advancements into PolymathPlus, we aim to provide users with reliable and efficient tools for solving complex mathematical problems.
Solution Reports |
![]() |
Below are sample reports generated by solving PolymathPlus programs. The input for each program is shown at the top of every report. Each group features example problems and their corresponding solution reports.
Start solving as a guest, then register for free to unlock more features.
Using an AI assistant?
Copy the PolymathPlus AI context.
Terms and Conditions PolymathPlus does not warrant that the functions contained in the program will meet your requirements or that the operation of the program will be uninterrupted or error-free. In no event will PolymathPlus or its distributors or their dealers be liable to you for any damages, including any lost profit, lost savings, or other incidental or consequential damage. Please read the Terms of Service (TOS) below for further details.