SlideShare une entreprise Scribd logo
1  sur  12
Télécharger pour lire hors ligne
Python and SAGE

                        http://www.sagemath.org
                               William Stein
                                San Diego



                                     August 17, 2007




http://www.sagemath.org William Stein San Diego   Python and SAGE
Abstract




  Abstract: Explain how using Python (with
  SAGE) is very likely to improve your efficiency
  and ability to do mathematical research that
  involves computation.

  Target Audience: Mathematical researchers
  who demand the best possible tools for the
  job (even if they are expensive).


     http://www.sagemath.org William Stein San Diego   Python and SAGE
The Python Programming Language



  Python is an powerful modern interpreted programming language.
      “Python is fast enough for our site and allows us to produce
      maintainable features in record times, with a minimum of
      developers,” said Cuong Do, Software Architect, YouTube.com.
      “Google has made no secret of the fact they use Python a lot for
      a number of internal projects. Even knowing that, once I was an
      employee, I was amazed at how much Python code there
      actually is in the Google source code system.”, said Guido
      van Rosum, Google, creator of Python.
      “Python plays a key role in our production pipeline. Without it a
      project the size of Star Wars: Episode II would have been very
      difficult to pull off. From crowd rendering to batch processing to
      compositing, Python binds all things together,” said Tommy
      Burnette, Senior Technical Director, Industrial Light & Magic.
      http://www.sagemath.org William Stein San Diego   Python and SAGE
Python is...




      Easy for you to define your own data types and methods on it.
      bitstreams, ciphers, rings, whatever
      Very clean language that results in easy to read code.
      Easy to learn:
             Free: Dive into Python http://www.diveintopython.org/
             Free: Python Tutorial http://docs.python.org/tut/
      A huge number of libraries: statistics, networking, databases,
      bioinformatic, physics, video games, 3d graphics, and serious
      mathematics (via SAGE)
      Very easy to use any C/C++ libraries from Python.
      Excellent support for string manipulation and bit fiddling.
      Cython – a Python compiler (http://www.cython.org).

      http://www.sagemath.org William Stein San Diego   Python and SAGE
Whence SAGE?



       1999–2005: (Berkeley, Harvard) I wrote over 25,000 lines of
  1

       Magma code. I really really like Magma!
       But the languages of Magma, Mathematica, and Maple are
  2

       old-fashioned and painful compared to Python.
       And I need to be able to see inside and change anything in my
  3

       software in order to be the best in the world at my research.
       Magma is frustrating and is a terrible longterm investment.
  4

       Feb 2005: I released SAGE-0.1 – a Python math library.
  5


       Feb 2006: UCSD SAGE Days 1 – SAGE 1.0.
  6


       October 2006: U Washington SAGE Days 2 workshop.
  7


       March 2007: UCLA SAGE Days 3 workshop.
  8


       June 2007: U Washington SAGE Days 4 workshop.
  9


       Now: SAGE-2.8.1; about 100 contributors to SAGE.
  10


       October 2007: Clay Math Institute SAGE Days 5 workshop.
  11

       November 2007: Heilbronn Institute SAGE Days 6
  12


       http://www.sagemath.org William Stein San Diego   Python and SAGE
Welcome to SAGE!



  $ sage
  --------------------------------------------------------------
  | SAGE Version 2.8.1
  | Type notebook() for the GUI, and license() for information.
  --------------------------------------------------------------
  sage: 2 + 2
  4
  sage: notebook()
  **************************************************
  * Open your web browser to http://localhost:8000 *
  **************************************************
  ....




     http://www.sagemath.org William Stein San Diego   Python and SAGE
The SAGE Notebook




                                                                Connect either to a program
                                                                running on your computer, or a
                                                                program running elsewhere.
                                                                Create embedded graphics
                                                                Typeset mathematical
                                                                expressions
                                                                Add and delete input
                                                                Start and interrupt multiple
                                                                calculations at once.




    http://www.sagemath.org William Stein San Diego   Python and SAGE
SAGE Makes Python Usable for Mathematics
  SAGE provides serious compute power to make Python a truly
  usable tool for your research.
  SAGE is over 100,000 lines of new code that ties together many
  libraries and programs and provides much new functionality:
      Algebra and calculus: Maxima, Sympy
      Arbitrary precision arithmetic: GMP, MPFR, MPFI, NTL,
      quaddouble, Givaro
      Algebraic geometry: Singular, Macaulay2
      Arithmetic Geometry: PARI, NTL, mwrank, ecm, FLINTQS
      Exact linear algebra: Linbox, IML
      Graphics (2d and 3d): MatPlotLib, Tachyon3d, VTK (optional)
      Group theory: GAP
      MATLAB-like functionality – linear algebra, optimization,
      etc.: GSL, Scipy, Numpy

                      Chances are, you can do it using SAGE.

      http://www.sagemath.org William Stein San Diego   Python and SAGE
Use Most Mathematics Software from Within SAGE

  SAGE makes it possible for you to use most
  mathematics software together.


     SAGE includes interfaces to Magma, Maple,
     Mathematica, MATLAB, and MuPAD ...


     and also the free programs Axiom, GAP, GP/PARI,
     Macaulay2, Maxima, Octave, and Singular.


     This makes it easier to benefit from existing code
     you or others have already written.


     http://www.sagemath.org William Stein San Diego   Python and SAGE
Some Shortcomings of SAGE

       There are currently probably less than a thousand users of
   1

       SAGE (there are millions of Python users).


       Not robust enough – sometimes interrupt doesn’t interrupt, etc.
   2




       SAGE is sometimes much slower than Magma or Mathematica
   3

       (and sometimes faster, to be fair).


       SAGE is new – there are too many bugs.
   4




       The big problem – MONEY. Funding for work on SAGE
   5

       minimal and we need much more funding. Like Python, SAGE
       is open source, so we can’t charge per copy.



       http://www.sagemath.org William Stein San Diego   Python and SAGE
Download SAGE for Windows, Mac OS X, and Linux



    Download SAGE at http://sagemath.org


    You can compile SAGE yourself from source, and
    change anything about SAGE.




    Quick tour of documentation.




     http://www.sagemath.org William Stein San Diego   Python and SAGE
Discussion


       Can Python/SAGE do...?
   1



       How does SAGE do...?
   2



       Funding:
   3


              I want the quality of SAGE to be comparable to or better than
              Magma, Maple, Matlab, and Mathematica, and this is impossible
              without significant funding.
              SAGE is free open source software.
              So, like Python (which is funded a lot by Google and many other
              companies), SAGE needs to be used by major organizations
              who will pay salaries of developers.
              Thoughts?

       Please try Python, try SAGE.
   4




       http://www.sagemath.org William Stein San Diego   Python and SAGE

Contenu connexe

Similaire à Python and Sage

Python webinar 4th june
Python webinar 4th junePython webinar 4th june
Python webinar 4th juneEdureka!
 
Automated ML Workflow for Distributed Big Data Using Analytics Zoo (CVPR2020 ...
Automated ML Workflow for Distributed Big Data Using Analytics Zoo (CVPR2020 ...Automated ML Workflow for Distributed Big Data Using Analytics Zoo (CVPR2020 ...
Automated ML Workflow for Distributed Big Data Using Analytics Zoo (CVPR2020 ...Jason Dai
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
Exploring and Using the Python Ecosystem
Exploring and Using the Python EcosystemExploring and Using the Python Ecosystem
Exploring and Using the Python EcosystemAdam Cook
 
London atlassian meetup 31 jan 2016 jira metrics-extract slides
London atlassian meetup 31 jan 2016 jira metrics-extract slidesLondon atlassian meetup 31 jan 2016 jira metrics-extract slides
London atlassian meetup 31 jan 2016 jira metrics-extract slidesRudiger Wolf
 
Building a Cutting-Edge Data Process Environment on a Budget by Gael Varoquaux
Building a Cutting-Edge Data Process Environment on a Budget by Gael VaroquauxBuilding a Cutting-Edge Data Process Environment on a Budget by Gael Varoquaux
Building a Cutting-Edge Data Process Environment on a Budget by Gael VaroquauxPyData
 
Version Control in Machine Learning + AI (Stanford)
Version Control in Machine Learning + AI (Stanford)Version Control in Machine Learning + AI (Stanford)
Version Control in Machine Learning + AI (Stanford)Anand Sampat
 
Build Deep Learning Applications with TensorFlow and Amazon SageMaker
Build Deep Learning Applications with TensorFlow and Amazon SageMakerBuild Deep Learning Applications with TensorFlow and Amazon SageMaker
Build Deep Learning Applications with TensorFlow and Amazon SageMakerAmazon Web Services
 
Build Deep Learning Applications with TensorFlow & SageMaker
Build Deep Learning Applications with TensorFlow & SageMakerBuild Deep Learning Applications with TensorFlow & SageMaker
Build Deep Learning Applications with TensorFlow & SageMakerAmazon Web Services
 
Machine learning model to production
Machine learning model to productionMachine learning model to production
Machine learning model to productionGeorg Heiler
 
Webinar: Mastering Python - An Excellent tool for Web Scraping and Data Anal...
Webinar:  Mastering Python - An Excellent tool for Web Scraping and Data Anal...Webinar:  Mastering Python - An Excellent tool for Web Scraping and Data Anal...
Webinar: Mastering Python - An Excellent tool for Web Scraping and Data Anal...Edureka!
 
Building Deep Learning Applications with TensorFlow and Amazon SageMaker
Building Deep Learning Applications with TensorFlow and Amazon SageMakerBuilding Deep Learning Applications with TensorFlow and Amazon SageMaker
Building Deep Learning Applications with TensorFlow and Amazon SageMakerAmazon Web Services
 
Python PPT
Python PPTPython PPT
Python PPTEdureka!
 
Python for Big Data Analytics
Python for Big Data AnalyticsPython for Big Data Analytics
Python for Big Data AnalyticsEdureka!
 
Overview of Modern Graph Analysis Tools
Overview of Modern Graph Analysis ToolsOverview of Modern Graph Analysis Tools
Overview of Modern Graph Analysis ToolsKeiichiro Ono
 
Lambda Architecture and open source technology stack for real time big data
Lambda Architecture and open source technology stack for real time big dataLambda Architecture and open source technology stack for real time big data
Lambda Architecture and open source technology stack for real time big dataTrieu Nguyen
 
carrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-APIcarrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-APIYoni Davidson
 
What is Python? An overview of Python for science.
What is Python? An overview of Python for science.What is Python? An overview of Python for science.
What is Python? An overview of Python for science.Nicholas Pringle
 
How to build unified Batch & Streaming Pipelines with Apache Beam and Dataflow
How to build unified Batch & Streaming Pipelines with Apache Beam and DataflowHow to build unified Batch & Streaming Pipelines with Apache Beam and Dataflow
How to build unified Batch & Streaming Pipelines with Apache Beam and DataflowDaniel Zivkovic
 

Similaire à Python and Sage (20)

Python webinar 4th june
Python webinar 4th junePython webinar 4th june
Python webinar 4th june
 
Automated ML Workflow for Distributed Big Data Using Analytics Zoo (CVPR2020 ...
Automated ML Workflow for Distributed Big Data Using Analytics Zoo (CVPR2020 ...Automated ML Workflow for Distributed Big Data Using Analytics Zoo (CVPR2020 ...
Automated ML Workflow for Distributed Big Data Using Analytics Zoo (CVPR2020 ...
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
Exploring and Using the Python Ecosystem
Exploring and Using the Python EcosystemExploring and Using the Python Ecosystem
Exploring and Using the Python Ecosystem
 
London atlassian meetup 31 jan 2016 jira metrics-extract slides
London atlassian meetup 31 jan 2016 jira metrics-extract slidesLondon atlassian meetup 31 jan 2016 jira metrics-extract slides
London atlassian meetup 31 jan 2016 jira metrics-extract slides
 
Building a Cutting-Edge Data Process Environment on a Budget by Gael Varoquaux
Building a Cutting-Edge Data Process Environment on a Budget by Gael VaroquauxBuilding a Cutting-Edge Data Process Environment on a Budget by Gael Varoquaux
Building a Cutting-Edge Data Process Environment on a Budget by Gael Varoquaux
 
Version Control in Machine Learning + AI (Stanford)
Version Control in Machine Learning + AI (Stanford)Version Control in Machine Learning + AI (Stanford)
Version Control in Machine Learning + AI (Stanford)
 
Build Deep Learning Applications with TensorFlow and Amazon SageMaker
Build Deep Learning Applications with TensorFlow and Amazon SageMakerBuild Deep Learning Applications with TensorFlow and Amazon SageMaker
Build Deep Learning Applications with TensorFlow and Amazon SageMaker
 
Build Deep Learning Applications with TensorFlow & SageMaker
Build Deep Learning Applications with TensorFlow & SageMakerBuild Deep Learning Applications with TensorFlow & SageMaker
Build Deep Learning Applications with TensorFlow & SageMaker
 
Machine learning model to production
Machine learning model to productionMachine learning model to production
Machine learning model to production
 
Webinar: Mastering Python - An Excellent tool for Web Scraping and Data Anal...
Webinar:  Mastering Python - An Excellent tool for Web Scraping and Data Anal...Webinar:  Mastering Python - An Excellent tool for Web Scraping and Data Anal...
Webinar: Mastering Python - An Excellent tool for Web Scraping and Data Anal...
 
Building Deep Learning Applications with TensorFlow and Amazon SageMaker
Building Deep Learning Applications with TensorFlow and Amazon SageMakerBuilding Deep Learning Applications with TensorFlow and Amazon SageMaker
Building Deep Learning Applications with TensorFlow and Amazon SageMaker
 
Python PPT
Python PPTPython PPT
Python PPT
 
Python for Big Data Analytics
Python for Big Data AnalyticsPython for Big Data Analytics
Python for Big Data Analytics
 
Overview of Modern Graph Analysis Tools
Overview of Modern Graph Analysis ToolsOverview of Modern Graph Analysis Tools
Overview of Modern Graph Analysis Tools
 
Lambda Architecture and open source technology stack for real time big data
Lambda Architecture and open source technology stack for real time big dataLambda Architecture and open source technology stack for real time big data
Lambda Architecture and open source technology stack for real time big data
 
carrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-APIcarrow - Go bindings to Apache Arrow via C++-API
carrow - Go bindings to Apache Arrow via C++-API
 
Toolboxes for data scientists
Toolboxes for data scientistsToolboxes for data scientists
Toolboxes for data scientists
 
What is Python? An overview of Python for science.
What is Python? An overview of Python for science.What is Python? An overview of Python for science.
What is Python? An overview of Python for science.
 
How to build unified Batch & Streaming Pipelines with Apache Beam and Dataflow
How to build unified Batch & Streaming Pipelines with Apache Beam and DataflowHow to build unified Batch & Streaming Pipelines with Apache Beam and Dataflow
How to build unified Batch & Streaming Pipelines with Apache Beam and Dataflow
 

Dernier

Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncr
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / NcrCall Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncr
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncrdollysharma2066
 
APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfRbc Rbcua
 
MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?Olivia Kresic
 
Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03DallasHaselhorst
 
India Consumer 2024 Redacted Sample Report
India Consumer 2024 Redacted Sample ReportIndia Consumer 2024 Redacted Sample Report
India Consumer 2024 Redacted Sample ReportMintel Group
 
Market Sizes Sample Report - 2024 Edition
Market Sizes Sample Report - 2024 EditionMarket Sizes Sample Report - 2024 Edition
Market Sizes Sample Report - 2024 EditionMintel Group
 
Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Anamaria Contreras
 
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu MenzaYouth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menzaictsugar
 
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...ictsugar
 
Innovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdfInnovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdfrichard876048
 
Islamabad Escorts | Call 03070433345 | Escort Service in Islamabad
Islamabad Escorts | Call 03070433345 | Escort Service in IslamabadIslamabad Escorts | Call 03070433345 | Escort Service in Islamabad
Islamabad Escorts | Call 03070433345 | Escort Service in IslamabadAyesha Khan
 
Ms Motilal Padampat Sugar Mills vs. State of Uttar Pradesh & Ors. - A Milesto...
Ms Motilal Padampat Sugar Mills vs. State of Uttar Pradesh & Ors. - A Milesto...Ms Motilal Padampat Sugar Mills vs. State of Uttar Pradesh & Ors. - A Milesto...
Ms Motilal Padampat Sugar Mills vs. State of Uttar Pradesh & Ors. - A Milesto...ShrutiBose4
 
8447779800, Low rate Call girls in Uttam Nagar Delhi NCR
8447779800, Low rate Call girls in Uttam Nagar Delhi NCR8447779800, Low rate Call girls in Uttam Nagar Delhi NCR
8447779800, Low rate Call girls in Uttam Nagar Delhi NCRashishs7044
 
8447779800, Low rate Call girls in Rohini Delhi NCR
8447779800, Low rate Call girls in Rohini Delhi NCR8447779800, Low rate Call girls in Rohini Delhi NCR
8447779800, Low rate Call girls in Rohini Delhi NCRashishs7044
 
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607dollysharma2066
 
Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Riya Pathan
 
Flow Your Strategy at Flight Levels Day 2024
Flow Your Strategy at Flight Levels Day 2024Flow Your Strategy at Flight Levels Day 2024
Flow Your Strategy at Flight Levels Day 2024Kirill Klimov
 
Marketplace and Quality Assurance Presentation - Vincent Chirchir
Marketplace and Quality Assurance Presentation - Vincent ChirchirMarketplace and Quality Assurance Presentation - Vincent Chirchir
Marketplace and Quality Assurance Presentation - Vincent Chirchirictsugar
 

Dernier (20)

No-1 Call Girls In Goa 93193 VIP 73153 Escort service In North Goa Panaji, Ca...
No-1 Call Girls In Goa 93193 VIP 73153 Escort service In North Goa Panaji, Ca...No-1 Call Girls In Goa 93193 VIP 73153 Escort service In North Goa Panaji, Ca...
No-1 Call Girls In Goa 93193 VIP 73153 Escort service In North Goa Panaji, Ca...
 
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncr
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / NcrCall Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncr
Call Girls in DELHI Cantt, ( Call Me )-8377877756-Female Escort- In Delhi / Ncr
 
APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdf
 
MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?
 
Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03
 
Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)
 
India Consumer 2024 Redacted Sample Report
India Consumer 2024 Redacted Sample ReportIndia Consumer 2024 Redacted Sample Report
India Consumer 2024 Redacted Sample Report
 
Market Sizes Sample Report - 2024 Edition
Market Sizes Sample Report - 2024 EditionMarket Sizes Sample Report - 2024 Edition
Market Sizes Sample Report - 2024 Edition
 
Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.
 
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu MenzaYouth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
 
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
 
Innovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdfInnovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdf
 
Islamabad Escorts | Call 03070433345 | Escort Service in Islamabad
Islamabad Escorts | Call 03070433345 | Escort Service in IslamabadIslamabad Escorts | Call 03070433345 | Escort Service in Islamabad
Islamabad Escorts | Call 03070433345 | Escort Service in Islamabad
 
Ms Motilal Padampat Sugar Mills vs. State of Uttar Pradesh & Ors. - A Milesto...
Ms Motilal Padampat Sugar Mills vs. State of Uttar Pradesh & Ors. - A Milesto...Ms Motilal Padampat Sugar Mills vs. State of Uttar Pradesh & Ors. - A Milesto...
Ms Motilal Padampat Sugar Mills vs. State of Uttar Pradesh & Ors. - A Milesto...
 
8447779800, Low rate Call girls in Uttam Nagar Delhi NCR
8447779800, Low rate Call girls in Uttam Nagar Delhi NCR8447779800, Low rate Call girls in Uttam Nagar Delhi NCR
8447779800, Low rate Call girls in Uttam Nagar Delhi NCR
 
8447779800, Low rate Call girls in Rohini Delhi NCR
8447779800, Low rate Call girls in Rohini Delhi NCR8447779800, Low rate Call girls in Rohini Delhi NCR
8447779800, Low rate Call girls in Rohini Delhi NCR
 
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
 
Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737
 
Flow Your Strategy at Flight Levels Day 2024
Flow Your Strategy at Flight Levels Day 2024Flow Your Strategy at Flight Levels Day 2024
Flow Your Strategy at Flight Levels Day 2024
 
Marketplace and Quality Assurance Presentation - Vincent Chirchir
Marketplace and Quality Assurance Presentation - Vincent ChirchirMarketplace and Quality Assurance Presentation - Vincent Chirchir
Marketplace and Quality Assurance Presentation - Vincent Chirchir
 

Python and Sage

  • 1. Python and SAGE http://www.sagemath.org William Stein San Diego August 17, 2007 http://www.sagemath.org William Stein San Diego Python and SAGE
  • 2. Abstract Abstract: Explain how using Python (with SAGE) is very likely to improve your efficiency and ability to do mathematical research that involves computation. Target Audience: Mathematical researchers who demand the best possible tools for the job (even if they are expensive). http://www.sagemath.org William Stein San Diego Python and SAGE
  • 3. The Python Programming Language Python is an powerful modern interpreted programming language. “Python is fast enough for our site and allows us to produce maintainable features in record times, with a minimum of developers,” said Cuong Do, Software Architect, YouTube.com. “Google has made no secret of the fact they use Python a lot for a number of internal projects. Even knowing that, once I was an employee, I was amazed at how much Python code there actually is in the Google source code system.”, said Guido van Rosum, Google, creator of Python. “Python plays a key role in our production pipeline. Without it a project the size of Star Wars: Episode II would have been very difficult to pull off. From crowd rendering to batch processing to compositing, Python binds all things together,” said Tommy Burnette, Senior Technical Director, Industrial Light & Magic. http://www.sagemath.org William Stein San Diego Python and SAGE
  • 4. Python is... Easy for you to define your own data types and methods on it. bitstreams, ciphers, rings, whatever Very clean language that results in easy to read code. Easy to learn: Free: Dive into Python http://www.diveintopython.org/ Free: Python Tutorial http://docs.python.org/tut/ A huge number of libraries: statistics, networking, databases, bioinformatic, physics, video games, 3d graphics, and serious mathematics (via SAGE) Very easy to use any C/C++ libraries from Python. Excellent support for string manipulation and bit fiddling. Cython – a Python compiler (http://www.cython.org). http://www.sagemath.org William Stein San Diego Python and SAGE
  • 5. Whence SAGE? 1999–2005: (Berkeley, Harvard) I wrote over 25,000 lines of 1 Magma code. I really really like Magma! But the languages of Magma, Mathematica, and Maple are 2 old-fashioned and painful compared to Python. And I need to be able to see inside and change anything in my 3 software in order to be the best in the world at my research. Magma is frustrating and is a terrible longterm investment. 4 Feb 2005: I released SAGE-0.1 – a Python math library. 5 Feb 2006: UCSD SAGE Days 1 – SAGE 1.0. 6 October 2006: U Washington SAGE Days 2 workshop. 7 March 2007: UCLA SAGE Days 3 workshop. 8 June 2007: U Washington SAGE Days 4 workshop. 9 Now: SAGE-2.8.1; about 100 contributors to SAGE. 10 October 2007: Clay Math Institute SAGE Days 5 workshop. 11 November 2007: Heilbronn Institute SAGE Days 6 12 http://www.sagemath.org William Stein San Diego Python and SAGE
  • 6. Welcome to SAGE! $ sage -------------------------------------------------------------- | SAGE Version 2.8.1 | Type notebook() for the GUI, and license() for information. -------------------------------------------------------------- sage: 2 + 2 4 sage: notebook() ************************************************** * Open your web browser to http://localhost:8000 * ************************************************** .... http://www.sagemath.org William Stein San Diego Python and SAGE
  • 7. The SAGE Notebook Connect either to a program running on your computer, or a program running elsewhere. Create embedded graphics Typeset mathematical expressions Add and delete input Start and interrupt multiple calculations at once. http://www.sagemath.org William Stein San Diego Python and SAGE
  • 8. SAGE Makes Python Usable for Mathematics SAGE provides serious compute power to make Python a truly usable tool for your research. SAGE is over 100,000 lines of new code that ties together many libraries and programs and provides much new functionality: Algebra and calculus: Maxima, Sympy Arbitrary precision arithmetic: GMP, MPFR, MPFI, NTL, quaddouble, Givaro Algebraic geometry: Singular, Macaulay2 Arithmetic Geometry: PARI, NTL, mwrank, ecm, FLINTQS Exact linear algebra: Linbox, IML Graphics (2d and 3d): MatPlotLib, Tachyon3d, VTK (optional) Group theory: GAP MATLAB-like functionality – linear algebra, optimization, etc.: GSL, Scipy, Numpy Chances are, you can do it using SAGE. http://www.sagemath.org William Stein San Diego Python and SAGE
  • 9. Use Most Mathematics Software from Within SAGE SAGE makes it possible for you to use most mathematics software together. SAGE includes interfaces to Magma, Maple, Mathematica, MATLAB, and MuPAD ... and also the free programs Axiom, GAP, GP/PARI, Macaulay2, Maxima, Octave, and Singular. This makes it easier to benefit from existing code you or others have already written. http://www.sagemath.org William Stein San Diego Python and SAGE
  • 10. Some Shortcomings of SAGE There are currently probably less than a thousand users of 1 SAGE (there are millions of Python users). Not robust enough – sometimes interrupt doesn’t interrupt, etc. 2 SAGE is sometimes much slower than Magma or Mathematica 3 (and sometimes faster, to be fair). SAGE is new – there are too many bugs. 4 The big problem – MONEY. Funding for work on SAGE 5 minimal and we need much more funding. Like Python, SAGE is open source, so we can’t charge per copy. http://www.sagemath.org William Stein San Diego Python and SAGE
  • 11. Download SAGE for Windows, Mac OS X, and Linux Download SAGE at http://sagemath.org You can compile SAGE yourself from source, and change anything about SAGE. Quick tour of documentation. http://www.sagemath.org William Stein San Diego Python and SAGE
  • 12. Discussion Can Python/SAGE do...? 1 How does SAGE do...? 2 Funding: 3 I want the quality of SAGE to be comparable to or better than Magma, Maple, Matlab, and Mathematica, and this is impossible without significant funding. SAGE is free open source software. So, like Python (which is funded a lot by Google and many other companies), SAGE needs to be used by major organizations who will pay salaries of developers. Thoughts? Please try Python, try SAGE. 4 http://www.sagemath.org William Stein San Diego Python and SAGE