Project Sage-Jupyter

Motivation

This project was developed for Math 4220 and Math 4230 at Southern Utah University, to provide students studying Abstract Algebra an approachable interface to SageMath, to help them understand introductory topics in the course.

The goal of this project is to help students everywhere - although it is primarily aimed at students of Abstract Algebra - to learn the syntax of SageMath, so as to provide them with a helpful tool to visualize and understand the topics taught in an undergraduate Abstract Algebra course.

Project Info

Please note that the layout of all of the files and sites closely follow the layout of the Abstract Algebra course videos given by Dr. Andrew Misseldine which can be found here.

We assume that the student has no prior knowledge of the Python programming language, and has not used SageMath before. Therefore, the introduction documents may not be suitable for all users. If a student has prior experience with the Python programming language, they should jump right into the project.

At any time during the use of this project, if you encounter an error in the preloaded code, or there are other issues that you find, or even if you have an idea on how to improve the project, please feel free to fill out an Issue form on Github, or contribute to the project by creating a fork and submitting a pull request, see the project's contributing page for more infomation.

Guides

Introduction Modular
Arithmetic
Groups Subgroups Cosets Ceasar Cipher Hill Cipher RSA Encryption Coding Theory Vigenere Cipher Autokey Cipher Knapsack
Cryptosystem
Isomorphisms and
Direct Products
Conjugacy Classes Matrix Groups Rings Polynomial
Codes
Fields