### Navigation

- index
- modules |
- next |
- Sage Tutorial v6.4.1 »

# Welcome to the Sage Tutorial!

Sage is free, open-source math software that supports research and teaching in algebra, geometry, number theory, cryptography, numerical computation, and related areas. Both the Sage development model and the technology in Sage itself are distinguished by an extremely strong emphasis on openness, community, cooperation, and collaboration: we are building the car, not reinventing the wheel. The overall goal of Sage is to create a viable, free, open-source alternative to Maple, Mathematica, Magma, and MATLAB.

This tutorial is the best way to become familiar with Sage in only a few hours. You can read it in HTML or PDF versions, or from the Sage notebook (click `Help`, then click `Tutorial` to interactively work through the tutorial from within Sage).

This work is licensed under a Creative Commons Attribution-Share Alike 3.0 License.

- Introduction
  - Installation
  - Ways to Use Sage
  - Longterm Goals for Sage
- A Guided Tour
  - Assignment, Equality, and Arithmetic
  - Getting Help
  - Functions, Indentation, and Counting
  - Basic Algebra and Calculus
  - Plotting
  - Some Common Issues with Functions
  - Basic Rings
  - Linear Algebra
  - Polynomials
  - Parents, Conversion and Coercion
  - Finite Groups, Abelian Groups
  - Number Theory
  - Some More Advanced Mathematics
- The Interactive Shell
  - Your Sage Session
  - Logging Input and Output
  - Paste Ignores Prompts
  - Timing Commands
  - Other IPython tricks
  - Errors and Exceptions
  - Reverse Search and Tab Completion
  - Integrated Help System
  - Saving and Loading Individual Objects
  - Saving and Loading Complete Sessions
  - The Notebook Interface
- Interfaces
  - GP/PARI
  - GAP
  - Singular
  - Maxima
- Sage, LaTeX and Friends
  - Overview
  - Basic Use
  - Customizing LaTeX Generation
  - Customizing LaTeX Processing
  - An Example: Combinatorial Graphs with tkz-graph
  - A Fully Capable TeX Installation
  - External Programs
- Programming
  - Loading and Attaching Sage files
  - Creating Compiled Code
  - Standalone Python/Sage Scripts
  - Data Types
  - Lists, Tuples, and Sequences
  - Dictionaries
  - Sets
  - Iterators
  - Loops, Functions, Control Statements, and Comparisons
  - Profiling
- Using SageTeX
- Afterword
  - Why Python?
  - I would like to contribute somehow. How can I?
  - How do I reference Sage?
- Appendix
  - Arithmetical binary operator precedence
- Bibliography

# Indices and tables

- Index
- Module Index
- Search Page

### Navigation

- index
- modules |
- next |
- Sage Tutorial v6.4.1 »