Skip to content

Latest commit

 

History

History
38 lines (25 loc) · 3.24 KB

sage-mathematical-software-system.md

File metadata and controls

38 lines (25 loc) · 3.24 KB

Back to catalogue

Mathematicians, scientists, researchers, and students need a powerful tool for their work or study. SageMath is a freely available open-source mathematical software system bundling the functionality of many software libraries, exposing their features in a common interface and extending on top of this with its own powerful algorithms. By leveraging the flexibility and universality of the underlying Python interpreter, SageMath is able to accommodate for a vast range of their requirements.

The mission of SageMath is to create a viable open-source alternative to all major proprietary mathematical software systems.

Python is the main programming language inside the SageMath library and also the language of choice for all interactions with the built-in objects and functions for expressing mathematical concepts and calculations. Besides a command-line and programming-library interface, its primary user interface is a dynamic self-hosted website. From the perspective of a user, the interface language is also Python, but with a thin extension built directly on top of it.

Almost all areas of mathematics are represented in SageMath, at various levels of sophistication. This includes symbolic calculus, 2D and 3D graphics, polynomials, graph theory, group theory, abstract algebra, combinatorics, cryptography, elliptic curves and modular forms, numerical mathematics, linear algebra and matrix calculations (over various rings), support for parallel computing, and a powerful coercion framework to “mix” elements from different sets for calculations. SageMath’s features also expand into neighboring fields like Statistics and Physics.

Application Instructions

  • Twitter: Personal:

  • Name

  • Contact Information (email, instant messaging, …)

  • Location/Timezone

  • University

Background:

  • What are your technical skills, education, experience, etc. Especially make sure to explain with what level of mathematics you are comfortable with and on what level you would like to program.
  • Who are you? What makes you the best person to work on this particular project? Your personal motivation?
  • What platform and operating-system are you using on your computer? (Sage development is done best on Linux and OSX)
  • Are you or have you been engaged in other open-source projects?
  • Do you code on your own pet projects?
  • Are you a Sage user, how long do you know Sage?

Project:

  • Title, Project Synopsis: a short description and summary of its aim and scope.
  • What is your personal involvement or relationship with your proposed project?
  • Details: describe all the details and explain modules or parts of your whole project. Break down the whole project into individual tasks - as good as possible - and describe deliverable and quantifiable results for each of them. It also helps if you have already discussed this with a possible mentor.
  • Schedule: A timetable, including special circumstances like exams or holidays, for the individual tasks.
  • Risk Management: Try to anticipate potential problems and explain, how to mitigate them. Propose alternative scenarios, if a particular milestone isn't reached, to still successfully complete the project.