Advantages & Disadvantages of Online CAS

Abstract

Online Computer Algebra Systems (CAS) have become increasingly popular among students and teachers. The reasons are many such as being more flexible, simple to use, accessible from anywhere, etc. However, as with any educational tool, they also have some disadvantages that we should know. The purpose of this study is to analyze advantages and disadvantages of online CASs and propose some techniques to optimize CAS performance in order to reduce weaknesses. The research results reveal that online CAS versions are on the rise but lag in some capabilities in comparison with desktop versions.

Share and Cite:

Zotos, K. and Atanassova, I. (2023) Advantages & Disadvantages of Online CAS. Journal of Software Engineering and Applications, 16, 496-504. doi: 10.4236/jsea.2023.169024.

1. Introduction

A Computer Algebra System (CAS) or Symbolic Algebra System (SAS) is any mathematical software with the ability to manipulate mathematical expressions. Computer algebra systems began to appear in the early 1970s and they have evolved a lot since then. Today, most services of CASs are offered online, and the user doesn’t need to install any software. You can get all the functionality you need at a low price. Usually, the only cost of online CAS is just a monthly subscription. Traditional software, on the other hand, generally costs a lot to purchase.

Today, online software is on the rise. Using an online CAS platform is very simple, all you need is a PC or mobile phone with Internet access. They provide a variety of tools that help you easily find a solution for any math problem. With these platforms, users can study at their own pace, in the comfort of their home and simulate/visualize difficult concepts until they fully understand them. On the other hand, some capabilities of desktop CASs are missing from online versions, and this is the main disadvantage that they have. In this paper, we are going to examine all these factors in detail. The documentation sheets were the source of data that we used to compare them and examine their characteristics.

The rest of the paper is organized as follows: Section 2 provides a general overview of what online software is, while Section 3 shows important issues about CASs. In Section 4 we describe the advantages and disadvantages of online CASs. Next (Section 5), the results are presented and discussed whereas in the final section (Section 6) some conclusions are drawn.

2. What Is Online Software?

Unlike traditional packaged applications that users install on their computers, online software users (or more accurately online platforms users) don’t own the software but effectively rent it, usually for a monthly fee. Traditional software must be installed on your computer, while online software can be accessed simply through a web browser. Table 1 and Table 2 show us the basic advantages and disadvantages of online platforms.

3. Computer Algebra Systems

Computer Algebra Systems (CASs) are software packages, which are used in

Table 1. Advantages of online platforms.

Table 2. Disadvantages of online platforms.

manipulation of mathematical formulas. The primary goal of a CAS is to automate tedious and sometimes difficult algebraic manipulation tasks. The specific uses and capabilities of these systems vary greatly from one system to another. For example, some of them provide a programming language for the user to define their own procedures.

3.1. History

The first computer programs designed to carry out symbolic computations were described in 1953 by Kahrimanian [1] and Nolan [2] . Since then, many general tools for symbolic and numeric computation have been developed. They include REDUCE (1968), Macsyma (1970), Maple (1983), MATLAB (1984), and Mathematica (1988) [3] .

Now, almost 70 years later, it is estimated that over 50 systems exist for doing some form of computer algebra (Table 3 and Table 4). The mathematical

Table 3. List of free CASs with latest stable release date after 2015.

*Symbolic functionality. 1 = Arbitrary-precision arithmetic, 2 = Calculus Integration, 3 = Calculus Integral transforms, 4 = Equations, 5 = Inequalities, 6 = Diophantine equations, 7 = Differential equations, 8 = Recurrence relations, 9 = Graph theory, 10 = Number theory, 11 = Quantifier elimination, 12 = Boolean algebra, 13 = Tensors, 14 = Probability, 15 = Control theory, 16 = Group theory.

Table 4. List of non-free CASs with latest stable release date after 2015.

*Symbolic functionality. 1 = Arbitrary-precision arithmetic, 2 = Calculus Integration, 3 = Calculus Integral transforms, 4 = Equations, 5 = Inequalities, 6 = Diophantine equations, 7 = Differential equations, 8 = Recurrence relations, 9 = Graph theory, 10 = Number theory, 11 = Quantifier elimination, 12 = Boolean algebra, 13 = Tensors, 14 = Probability, 15 = Control theory, 16 = Group theory

capabilities of many of the well qualified systems are strongly related to the eminent, early successes of computer algebra, as achieved in integration, Celestial Mechanics, General Relativity and Quantum Electro Dynamics [4] . There are many publications that show the positive impact of CASs on students [5] . However, despite these inspiring research reports, the use of CASs has not succeeded, as many had expected [6] .

3.2. General View of CAS

According to Shacham and Cutlip (1998), the comparison of mathematical software packages ensures the selection of a system, which will fully meet the needs of each user. However, in order to achieve the comparison, these software packages should be investigated with a comparative eye based on specific objective criteria [7] . These criteria are summarized as follows:

· Numerical performance

· User friendliness

· Technical support

The following Table 3 and Table 4 provide a general view of Computer Algebra Systems today. Table 3 shows a list of free CASs with latest stable release date after 2015 and the Table 4 shows a list of non-free CASs with latest stable release date after 2015. The most famous of them are Mathematica, Maple, MATLAB, Maxima, SageMath, SymPy, GNU Octave, Magma and MathStudio.

4. Advantages and Disadvantages of Online CASs

In this section, we will explore the advantages and disadvantages of online CASs. Most of this material is general and applies to all CASs. In the last part of the section, we will see some techniques to improve desktop CAS performance.

4.1. Advantages of Online CASs

Online CAS is ideal for digital classrooms, remote access, project-based users, public computing resources and mobile workers. So, with online CAS you can:

· Access the latest version of CAS without any downloads, installation, or maintenance and with all the latest features available.

· Perform any mathematical computation directly in your browser.

· Make mathematical computations even though your computer doesn’t meet the required standards of desktop version. For example, MATLAB R2023a Storage Requirements for Windows are 3.8 GB for just MATLAB, 4 - 6 GB for a typical installation and 23 GB for an all products installation.

· Store files in your CAS Cloud Drive and synchronize your important computer files with the Cloud Drive. For example, in Online MATLAB the Drive gives you 20 GB to store [8] .

· Download files for offline use.

· Have access to your online CAS files even though you format the Hard Drive of your computer, or you have installed a different operating system.

· Collaborate with other CAS users by giving them the appropriate privileges that you want and share files directly. You can specify who can read, write, run, and interact with your files.

· Create a link to share your project through social networking. You can have instant sharing of all your CAS material.

· Use 3D graphics and other interactive functions directly in your browser [9] . You can visualize data in your browser with high-level plot commands in 2D and 3D.

· Integrate videos and other web content directly into your notebooks (Mathematica).

· Build your notebooks with rich formatting and structure (Mathematica).

· Save your work automatically. For example, Mathematica notebooks are continually saved in the cloud.

· Run files that you created with the desktop version of CAS.

· Use free and open software like Octave [10] which means that anyone can use, modify, and redistribute the software, providing that they include any changes under the original license.

· Re-use scripts to other Online CASs. For example, Octave scripts are compatible with MATLAB (syntax is largely compatible).

· Have flexible licensing options.

· Prepare and analyze data with an easy-to-use interface without having to write code [11] .

· Have online help from experts. There is a huge community which can advise you for any problem.

· Attend webinar series (sometimes without cost).

· Secure your data. You never need to back up your projects because are safe and are accessible from any computer with Internet connection.

4.2. Disadvantages of Online CASs

The following are some of the basic disadvantages of online CASs:

· Desktop CAS gives us greater privacy and security options and maybe better performance (it depends on system characteristics) rather than online version.

· Always requires a login and an Internet connection.

· There are limitations for online versions. For example, online MATLAB cannot interact with some hardware, including instrument control [12] .

· Some packaging tools for add-ons doesn’t exist. Also, Windows-specific components like COM sometimes are not supported in online versions.

· Very large files cannot be uploaded without a Cloud Drive.

· The graphical interface sometimes is different.

· The supported products are fewer than desktop version.

· Subscription is required. For example, Wolfram Desktop requires a premium Wolfram Programming Cloud subscription.

· In desktop version, in contrast to online, all the data are stored on your computer therefore only you have permission to access, read, write, and share it. No cookies are created and there is no danger for cyber-attacks.

· Because they are built from the ground up to promote accessibility, web apps pose more security vulnerabilities [13] . Desktop applications are safer since users have better control and better authorization.

4.3. Techniques to Improve CAS Performance and Reduce Disadvantages

The performance of online CASs primarily relies on server therefore the user should just have a stable Internet connection. On the other hand, there are some techniques to improve performance of desktop CASs. Firstly, you should check if background processes consume computer resources. You can free up memory by running CAS as the sole application or increase the RAM of computer to the recommended. Secondly, it is better to use functions (which are generally faster) instead of scripts. Don’t use nested functions and loop-based code. Place independent operations outside loops. Local functions are better especially if there is no need to access main function variables. Simple and cohesive functions decrease first-time run costs. Thirdly, avoid global variables and function overloading (especially built-in functions). Finally, run code in parallel if this option exists. For every CAS there are many other specific techniques to improve performance for example in MATLAB we should avoid functions such as evalc, eval and evalin [14] .

5. Results

Online Computer Algebra Systems have become increasingly popular for students and teachers and seems to have an ever-increasing momentum. They are simpler to use, mobile, and accessible from any device. Their innovations in newer versions eliminate drawbacks of older versions creating an easy-to-use and efficient programming environment. The new capabilities do not only cover Mathematics but also include many other scientific fields. This development gives us the hope that in the future the new platforms will have more capabilities and the disadvantages such as unsupported hardware or lack of tools will be eliminated.

On the other hand, desktop CASs give us greater privacy and security options, better performance, and network independence. All the data are stored on our computer therefore only we have the permission to access, read, write, and share them. There are no limitations, and they can interact easily with hardware. These features give desktop CASs the edge over online CASs. This is also the reason that desktop CASs is preferred for high computational programs from companies and professionals. However, desktop CASs don’t have the flexibility of online CASs and need to be manually installed and updated on each release. Also, different devices and operating systems may have distinctive necessities, limitations, and features that affect how desktop CAS runs.

Huge scale numerical calculations can put overwhelming requests of computer memory and processing power. There are many settings that you can make to improve desktop CAS performance, such as checking if background processes consume computer resources, increasing the RAM, not using loop-based code, placing independent operations outside loops and avoiding function overloading (especially built-in functions). The performance of online CAS primarily relies on server therefore the user should just have a stable Internet connection.

The world of CAS development is always evolving, with new technologies and tools. As we look ahead to the next few years artificial intelligence (AI) is going to become more important. We will expect AI to play an even larger role in CAS development. New technologies like artificial neural networks [15] are likely to shape the future of CAS development [16] . No matter how uncertain the future of CAS may be, the only certainty is that the movement to web-based applications will continue. The future of online CAS seems to be bright.

6. Conclusion

While desktop CASs give us greater privacy and security options, better performance, and network independence, online CASs are simpler to use, mobile, and accessible from many devices. System configurations, operating System used, and other similar factors affect the performance of a desktop CASs. Though the online versions work with good speed and performance, desktop CASs are preferred for high computational programs from companies and professionals.

Conflicts of Interest

The authors declare no conflicts of interest regarding the publication of this paper.

References

[1] Kahrimanian, H.G. (1953) Analytic Differentiation by a Digital Computer. Master’s Thesis, Temple University, Philadelphia.
[2] Nolan, J.F. (1953) Analytic Differentiation on a Digital Computer. Master’s Thesis, Mathematics Department, Massachusetts Institute of Technology, Cambridge.
[3] The Maths Package Problem.
https://www.scientific-computing.com/feature/maths-package-problem
[4] van Hulzen, J.A. and Calmet, J. (1983) Computer Algebra Systems. In: Buchberger, B., Collins, G.E., Loos, R. and Albrecht, R., Eds., Computer Algebra, Computing Supplementa, Vol. 4, Springer, Vienna, 221-243.
https://doi.org/10.1007/978-3-7091-7551-4_14
[5] Weigand, HG. (2017). What Is or What Might Be the Benefit of Using Computer Algebra Systems in the Learning and Teaching of Calculus? In: Faggiano, E., Ferrara, F. and Montone, A., Eds., Innovation and Technology Enhancing Mathematics Education, Mathematics Education in the Digital Era, Vol. 9, Springer, Cham, 161-193.
https://doi.org/10.1007/978-3-319-61488-5_8
[6] Hoyles, C. and Lagrange, J.-B. (2010) Mathematics Education and Technology—Rethinking the Terrain. The 17th ICMI Study. Springer, New York.
https://doi.org/10.1007/978-1-4419-0146-0
[7] Shacham, Μ. and Cutlip, Μ.Β. (1998) A Comparison of Six Numerical Software Packages for Educational Use in the Chemical Engineering Curriculum. ASEE Annual Conference Session: 2520—Computers in Education, Seattle, 28 June-1 July 1998, 3.2.1-3.2.12.
[8]
https://matlab.mathworks.com/
[9] Wolfram Mathematica.
https://www.wolfram.com/mathematica/
[10] Scientific Programming Language.
https://octave.org/
[11] IBM SPSS Software.
https://www.ibm.com/spss
[12] Specifications and Limitations.
https://www.mathworks.com/products/matlab-online/limitations.html
[13]
https://zapone.io/web-app-vs-desktop-app/
[14] Techniques to Improve Performance.
https://www.mathworks.com/help/matlab/matlab_prog/techniques-for-improving-performance.html
[15] Ornes, S. (2020) Symbolic Mathematics Finally Yields to Neural Networks. Quanta Magazine.
[16]
https://www.linkedin.com/pulse/future-software-development-trends-watch-2023-beyond-onviqa

Copyright © 2024 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.