Frequently asked questions
Open source licensing questions
Commercial licensing questions
Legal questions
Other questions
Can I use ALGLIB Free Edition for academic purposes?
Yes, you can.
Can I use GPLed edition of ALGLIB for commercial purposes?
GPL license does not forbid commercial usage, but you should distinguish between commercial usage and commercial distribution (see next question).
If commercial usage does not involve distribution of ALGLIB code (or code which depends on ALGLIB), you can use ALGLIB without hesitation. However, ALGLIB Commercial Edition features a lot of improvements which are absent in Free Edition.
Can I distribute ALGLIB Free Edition as a part of a commercial application?
Almost surely - no. GPL license does not forbid commercial distribution explicitly, but it imposes several requirements that commercial users can't comply with.
The most important requirements are: a) you must distribute your program along with source code and under GPL, b) you can't restrict your users from copying your program, reselling copies or distributing them for free.
Can I use ALGLIB Free Edition in a commercial application which runs on server?
You can, but there is at least one reason to buy commercial license. Everything is OK while it is just running on your server. But any action connected with distribution - selling, sublicensing, transferring to someone under nondisclosure agreement - will trigger copyleft clause. So it is safer and more convenient to buy commercial license.
What exactly is included in the commercial support?
One-year commercial support plan includes:
- updates
- moderate amount (up to 3 hours) of free deployment consulting
- priority handling of bug reports
We are interested in the long-term support. Do you keep your prices constant?
Although we might adjust our prices in the future due to inflation or product changes, our goal is to minimize the impact on our existing users who need ongoing support with reliable pricing.
Our primary strategy is a 'grandfathering' policy. If you renew an active or recently expired support plan, your renewal cost will either match the global inflation rate or remain unchanged, depending on our pricing decisions during that period. By purchasing a license and renewing your support plan promptly, you safeguard your price from future changes in our pricing model.
Upgrading your license (for example, from DEV-1 to DEV-3, or from ALGLIB for C++ to ALGLIB Suite) resets this 'grandfathering' status, i.e. then-current prices will apply for both the upgrade and any future renewals. However, during an upgrade you receive up to a year of free support, and any renewals after the upgrade will be covered by the same grandfathering policy.
We also have other protective measures in place:
- We maintain the renewal price of support plans at approximately one-third of the cost of a new license. This policy has been in effect for over 10 years and is likely to continue.
- We offer multi-year renewals, allowing you to pay in advance for several years, effectively fixing the price for that duration.
What warranties do you provide to commercial users?
We provide following set of guarantees:
- unconditional full money back guarantee - lasts for 90 days
- partial money back in case of a bug which won't be fixed within reasonable amount of time - we will return license/support fees paid within last 365 days
How to order commercial version of ALGLIB?
We offer you two payment methods.
Plastic cards are the easiest and fastest way to pay. You should fill
order form on ALGLIB website, then you get redirected to secure webform where you should enter your card number and other relevant information. Order will be processed within one business day after payment is done. Source files with your name in the "License information" section will be delivered to you by e-mail. In case you didn't get ALGLIB in time, please
contact us.
Another payment method is bank transfer. It is slower (takes from 3 to 5 days) but sometimes can be more appropriate. You should fill order form on ALGLIB website, then within one business day an invoice will be issued. After paying an invoice you can either (A) wait for the money to enter our bank account - generally up to 3 days, or (B) send us confirmation of the payment (scanned copy of the bank documents, screenshot from internet banking system or accounting program). Then within one business day you will receive Commercial Edition of ALGLIB.
Is there a trial version of commercial ALGLIB?
Yes, you can
submit a request for free 30-day trial version of ALGLIB Commercial Edition. This trial version is fully functional within 30-day interval.
Do you have a money-back guarantee?
Yes. We offer you unconditional 90-day money back guarantee. If, within 90 days from payment, you will understand that for some reason you don't want to use ALGLIB anymore, you can contact us and we will return your payment back to you.
If money was paid by bank transfer, we will send them back to your account. In case payment by plastic card was used, we will refund your money back to your card.
What's the difference between commercial and free editions of ALGLIB?
First limitation is performance. Free Edition does not include multithreading functionality and low level optimizations. It is good on small and medium-scale computational problems, but may be too slow on large-scale ones.
Second limitation is license. GPL license, which is used by Free Edition of ALGLIB, is not good for most commercial applications.
Can we modify commercially licensed ALGLIB and keep these modifications private?
Yes. Commercial license allows you to modify ALGLIB as you wish and to decide what to do with these modifications.
Can we use commercial edition of ALGLIB in an open source project?
No. Commercial license can't be transferred to another legal entity (individual), which contradicts the very definition of "Open Source"
Do you hold copyright to 100% of ALGLIB code?
No. First, about 20% of GPL'ed ALGLIB comes from several well-know open source projects (LAPACK and Cephes). Several contributions/patches were submitted by ALGLIB users. However, all such code was contributed under permissive licenses like BSD, so it is compatible with both open source and commercial licenses used by ALGLIB.
Second, Commercial Edition of ALGLIB includes Intel MKL - highly optimized numerical library which is used to accelerate ALGLIB on Intel CPU's. We obtained license from Intel Corporation which allows us to include MKL into ALGLIB.
We should note that section 7 of ALGLIB License Agreement (commercial one) explicitly states and warrants that we have right to license ALGLIB under commercial license.
Is ALGLIB registered as trademark?
Yes. You can freely distribute ALGLIB
source under GPL terms (or use it under commercial license terms). But if you want to use ALGLIB
name for something other than original ALGLIB distribution, you should ask our permission. You can read our
trademark policy for more information.
How to cite ALGLIB in scientific publication?
You can cite it as "ALGLIB (www.alglib.net), Sergey Bochkanov".
What are 'AlgoPascal' and 'X-generator'?
AlgoPascal is a programming language developed for ALGLIB project. More than 95% of ALGLIB source is written in AlgoPascal and translated into C and C# by AlgoPascal translator. That is how we can simultaneously support C++ and C# versions of ALGLIB package - we support only one version of ALGLIB, which is written in AlgoPascal, and automatically translate it to C++ and C#.
X-generator is another tool developed exclusively for ALGLIB. It is a generator of wrappers for the C/C# computational cores. This generator is heavily used by Python and VB.NET releases of ALGLIB. It is also used to generate doctests - code snippets, which are used as both examples (doc) and test suite (tests).
Both technologies are kept private, but result we've got with these tools - ALGLIB - is freely available under GPL.
What kind of additional commercial services do you provide?
ALGLIB Project provides following consulting services:
- feasibility study - will ALGLIB solve your problem?
- moderate amount of deployment consulting
- general numerics-related consulting
We also provide following development services:
- optimizing ALGLIB for non-standard settings (extreme values of problem metrics, big datasets, ...)
- implementing features on your request (new code is included into mainstream ALGLIB distribution, officially supported and updated)
- developing private problem-specific code (new code is not publicly distributed and becomes your property)