Computational Mathematics with SageMath

Categories:

Recommended

This introductory chapter presents the way the Sage mathematical system thinks. The next chapters of this first part develop the basic notions: how to make symbolic or numerical computations in analysis, how to work with vectors or matrices, write programs, deal with data lists, produce graphics, etc. The following parts of this book treat in more detail some branches of mathematics where computers are very helpful.

1.1 The Sage Program

1.1.1 A Tool for Mathematics 

Sage is a piece of software implementing mathematical algorithms in a variety of contexts. To start with, it can be used as a scientific pocket calculator, and can manipulate all sorts of numbers, from integers and rational numbers to numerical approximations of real and complex numbers with arbitrary precision, and also including elements of finite fields.

However, mathematical computations go far beyond numbers: Sage is a computer algebra system; it can for example help junior high school students learn how to solve linear equations, or develop, factor, or simplify expressions; or carry out such operations in arbitrary rings of polynomials or rational function fields. In analysis, Sage can manipulate expressions involving square roots, exponentials, logarithms or trigonometric functions: integration, computation of limits, simplification of sums, series expansion, solution of certain differential equations, and more. In linear algebra it computes with vectors, matrices, and subspaces. It can also help illustrate and solve problems in probability, statistics, and combinatorics.

To summarise, Sage strives to provide a consistent and uniform access to features in a wide area of mathematics — ranging from group theory to numerical analysis — and beyond — visualisation in two and three dimensions, animation, networking, databases, … Using a single unified piece of software frees the (budding) mathematician from having to transfer data between several tools and learn the syntax of several programming languages.

Access to Sage 

To use Sage, all that is needed is a web browser. As a starter, the service http://sagecell.sagemath.org/ allows for testing commands. To go further, one can use one of the online services. For example, CoCalc (http://cocalc.com, formerly known as SageMathCloud) gives access to a lot of computational software and collaborative tools, together with course management features. Developed and hosted by SageMathInc, an independent company founded by William Stein, its access is free for casual use, and most of its code is free. Other similar services are hosted by universities and institutions. Ask around to find out what is available near you.

For regular usage, it is recommended to use Sage on one’s own machine, installing it if this has not yet been done by the system administrator. Sage is available for most operating systems: Linux, Windows, MacOS; see the Download section on http://sagemath.org.

How to start Sage depends on the environment; therefore we do not go into details here. On CoCalc one needs to create an account, a project, and finally a Jupyter worksheet. On a desktop, the system may provide a startup icon. Under Linux or MacOS, one typically would launch the command sage ––notebook jupyter in a terminal.

Category:

Attribution

Paul Zimmermann, Alexandre Casamayou, Nathann Cohen, Guillaume Connan, Thierry Dumont, Laurent Fousse, François Maltey, Matthias Meulien, Marc Mezzarobba, Clément Pernet, Nicolas M. Thiéry, Erik Bray, John Cremona, Marcelo Forets, Alexandru Ghitza, Hugh Thomas.

(2018), Computational Mathematics with SageMath, URL: https://www.sagemath.org/sagebook/

This work is licensed under Attribution-ShareAlike 4.0 International License:  (https://creativecommons.org/licenses/by-sa/4.0/deed.en).

VP Flipbook Maker

Create your work as digital flipbook is a great way for you to share your work! Visual Paradigm Online Flipbook Maker is a professional tool allows you to convert your work to flipbook. You can also create from scratch by the design tool. Try it now!