Sfd2012Hanoi Hoang Anh Duc - sagetalk

25
Phƒn m•m SAGE øng dng trong toán hc Hoàng Anh Đøc Khoa Toán-Cơ-Tin hc, Đ/i hc KHTN, ĐHQG Hà Nºi [email protected] FOSS@HUS - Hºi th£o phƒn m•m tü do, mã ngun m. Đ/i hc KHTN, Đ/i hc QuLc gia Hà Nºi. Hoàng Anh Đøc (HUS) Gii thi»u phƒn m•m SAGE 15/09/2012 1 / 13

Transcript of Sfd2012Hanoi Hoang Anh Duc - sagetalk

Page 1: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Phần mềm SAGE ứng dụng trong toán học

Hoàng Anh Đức

Khoa Toán-Cơ-Tin học, Đại học KHTN, ĐHQG Hà Nộ[email protected]

FOSS@HUS - Hội thảo phần mềm tự do, mã nguồn mở.Đại học KHTN, Đại học Quốc gia Hà Nội.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 1 / 13

Page 2: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE ...?

SAGE (Software for Arithmetic Geometry Experimentation) là phầnmềm tự do, mã nguồn mở, ứng dụng trong nghiên cứu đại số, hìnhhọc, lý thuyết số, mật mã, tính toán xấp xỉ và nhiều bộ môn toán họckhác.

SAGE cung cấp môi trường làm việc và tính toán khoa học rất mạnh,dựa trên việc tích hợp các phần mềm tự do, nguồn mở như Python,GAP, Maxima, Singular, PARI và nhiều phần mềm khác.

Tính tương tác cao với môi trường web kết hợp với mã nguồn mởgiúp SAGE tạo nên một môi trường hoàn toàn mới cho nền giáo dụctoán học.

Đối tượng sử dụng chủ yếu mà SAGE hướng tới là các sinh viên,nghiên cứu sinh, các nhà toán học làm việc trong các lĩnh vực toán lýthuyết và ứng dụng.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 2 / 13

Page 3: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE ...?

SAGE (Software for Arithmetic Geometry Experimentation) là phầnmềm tự do, mã nguồn mở, ứng dụng trong nghiên cứu đại số, hìnhhọc, lý thuyết số, mật mã, tính toán xấp xỉ và nhiều bộ môn toán họckhác.

SAGE cung cấp môi trường làm việc và tính toán khoa học rất mạnh,dựa trên việc tích hợp các phần mềm tự do, nguồn mở như Python,GAP, Maxima, Singular, PARI và nhiều phần mềm khác.

Tính tương tác cao với môi trường web kết hợp với mã nguồn mởgiúp SAGE tạo nên một môi trường hoàn toàn mới cho nền giáo dụctoán học.

Đối tượng sử dụng chủ yếu mà SAGE hướng tới là các sinh viên,nghiên cứu sinh, các nhà toán học làm việc trong các lĩnh vực toán lýthuyết và ứng dụng.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 2 / 13

Page 4: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE ...?

SAGE (Software for Arithmetic Geometry Experimentation) là phầnmềm tự do, mã nguồn mở, ứng dụng trong nghiên cứu đại số, hìnhhọc, lý thuyết số, mật mã, tính toán xấp xỉ và nhiều bộ môn toán họckhác.

SAGE cung cấp môi trường làm việc và tính toán khoa học rất mạnh,dựa trên việc tích hợp các phần mềm tự do, nguồn mở như Python,GAP, Maxima, Singular, PARI và nhiều phần mềm khác.

Tính tương tác cao với môi trường web kết hợp với mã nguồn mởgiúp SAGE tạo nên một môi trường hoàn toàn mới cho nền giáo dụctoán học.

Đối tượng sử dụng chủ yếu mà SAGE hướng tới là các sinh viên,nghiên cứu sinh, các nhà toán học làm việc trong các lĩnh vực toán lýthuyết và ứng dụng.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 2 / 13

Page 5: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE ...?

SAGE (Software for Arithmetic Geometry Experimentation) là phầnmềm tự do, mã nguồn mở, ứng dụng trong nghiên cứu đại số, hìnhhọc, lý thuyết số, mật mã, tính toán xấp xỉ và nhiều bộ môn toán họckhác.

SAGE cung cấp môi trường làm việc và tính toán khoa học rất mạnh,dựa trên việc tích hợp các phần mềm tự do, nguồn mở như Python,GAP, Maxima, Singular, PARI và nhiều phần mềm khác.

Tính tương tác cao với môi trường web kết hợp với mã nguồn mởgiúp SAGE tạo nên một môi trường hoàn toàn mới cho nền giáo dụctoán học.

Đối tượng sử dụng chủ yếu mà SAGE hướng tới là các sinh viên,nghiên cứu sinh, các nhà toán học làm việc trong các lĩnh vực toán lýthuyết và ứng dụng.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 2 / 13

Page 6: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Ý tưởng của SAGE

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 3 / 13

Page 7: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Hình thành và phát triển

2005 William Stein viết những dòng code đầu tiên của SAGE ởHarvard, đánh dấu sự ra đời của Sage 0.1.

2006 SAGE 1.0 ra mắt tại Sage Days 1 (San Diego).

2007 SAGE 2.0 ra mắt. Cùng năm này, W.Stein nhận được nguồn tàitrợ phát triển từ Microsoft Research, Google, và NSF. Năm 2007cũng là năm bước ngoặt của SAGE với sự kiện SAGE đạt giải vàngtrong lĩnh vực phần mềm dành cho khoa học (scientific softwares) tạikỳ trao giải Les Trophées du Libre Contest.

2007-2012 Các kỳ Sage Days Workshops được tổ chức thành công tạinhiều trường đại học và viện nghiên cứu danh tiếng như Đại họcCalifornia (UCLA), Đại học Washington (UW), Viện toán học Clay,Viện Heilbronn, ...

Hiện tại (2012) Sage vẫn đang tiếp tục phát triển một cách mạnh mẽvà ngày càng phổ biến trên toàn thế giới. Phiên bản mới nhất củaSAGE hiện tại là SAGE 5.3.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 4 / 13

Page 8: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Hình thành và phát triển

2005 William Stein viết những dòng code đầu tiên của SAGE ởHarvard, đánh dấu sự ra đời của Sage 0.1.

2006 SAGE 1.0 ra mắt tại Sage Days 1 (San Diego).

2007 SAGE 2.0 ra mắt. Cùng năm này, W.Stein nhận được nguồn tàitrợ phát triển từ Microsoft Research, Google, và NSF. Năm 2007cũng là năm bước ngoặt của SAGE với sự kiện SAGE đạt giải vàngtrong lĩnh vực phần mềm dành cho khoa học (scientific softwares) tạikỳ trao giải Les Trophées du Libre Contest.

2007-2012 Các kỳ Sage Days Workshops được tổ chức thành công tạinhiều trường đại học và viện nghiên cứu danh tiếng như Đại họcCalifornia (UCLA), Đại học Washington (UW), Viện toán học Clay,Viện Heilbronn, ...

Hiện tại (2012) Sage vẫn đang tiếp tục phát triển một cách mạnh mẽvà ngày càng phổ biến trên toàn thế giới. Phiên bản mới nhất củaSAGE hiện tại là SAGE 5.3.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 4 / 13

Page 9: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Hình thành và phát triển

2005 William Stein viết những dòng code đầu tiên của SAGE ởHarvard, đánh dấu sự ra đời của Sage 0.1.

2006 SAGE 1.0 ra mắt tại Sage Days 1 (San Diego).

2007 SAGE 2.0 ra mắt. Cùng năm này, W.Stein nhận được nguồn tàitrợ phát triển từ Microsoft Research, Google, và NSF. Năm 2007cũng là năm bước ngoặt của SAGE với sự kiện SAGE đạt giải vàngtrong lĩnh vực phần mềm dành cho khoa học (scientific softwares) tạikỳ trao giải Les Trophées du Libre Contest.

2007-2012 Các kỳ Sage Days Workshops được tổ chức thành công tạinhiều trường đại học và viện nghiên cứu danh tiếng như Đại họcCalifornia (UCLA), Đại học Washington (UW), Viện toán học Clay,Viện Heilbronn, ...

Hiện tại (2012) Sage vẫn đang tiếp tục phát triển một cách mạnh mẽvà ngày càng phổ biến trên toàn thế giới. Phiên bản mới nhất củaSAGE hiện tại là SAGE 5.3.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 4 / 13

Page 10: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Hình thành và phát triển

2005 William Stein viết những dòng code đầu tiên của SAGE ởHarvard, đánh dấu sự ra đời của Sage 0.1.

2006 SAGE 1.0 ra mắt tại Sage Days 1 (San Diego).

2007 SAGE 2.0 ra mắt. Cùng năm này, W.Stein nhận được nguồn tàitrợ phát triển từ Microsoft Research, Google, và NSF. Năm 2007cũng là năm bước ngoặt của SAGE với sự kiện SAGE đạt giải vàngtrong lĩnh vực phần mềm dành cho khoa học (scientific softwares) tạikỳ trao giải Les Trophées du Libre Contest.

2007-2012 Các kỳ Sage Days Workshops được tổ chức thành công tạinhiều trường đại học và viện nghiên cứu danh tiếng như Đại họcCalifornia (UCLA), Đại học Washington (UW), Viện toán học Clay,Viện Heilbronn, ...

Hiện tại (2012) Sage vẫn đang tiếp tục phát triển một cách mạnh mẽvà ngày càng phổ biến trên toàn thế giới. Phiên bản mới nhất củaSAGE hiện tại là SAGE 5.3.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 4 / 13

Page 11: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Hình thành và phát triển

2005 William Stein viết những dòng code đầu tiên của SAGE ởHarvard, đánh dấu sự ra đời của Sage 0.1.

2006 SAGE 1.0 ra mắt tại Sage Days 1 (San Diego).

2007 SAGE 2.0 ra mắt. Cùng năm này, W.Stein nhận được nguồn tàitrợ phát triển từ Microsoft Research, Google, và NSF. Năm 2007cũng là năm bước ngoặt của SAGE với sự kiện SAGE đạt giải vàngtrong lĩnh vực phần mềm dành cho khoa học (scientific softwares) tạikỳ trao giải Les Trophées du Libre Contest.

2007-2012 Các kỳ Sage Days Workshops được tổ chức thành công tạinhiều trường đại học và viện nghiên cứu danh tiếng như Đại họcCalifornia (UCLA), Đại học Washington (UW), Viện toán học Clay,Viện Heilbronn, ...

Hiện tại (2012) Sage vẫn đang tiếp tục phát triển một cách mạnh mẽvà ngày càng phổ biến trên toàn thế giới. Phiên bản mới nhất củaSAGE hiện tại là SAGE 5.3.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 4 / 13

Page 12: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Những ai đang phát triển SAGE?

Sage Developers Map

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 5 / 13

Page 13: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Mục tiêu mà SAGE luôn hướng tới ...1 Hữu ích: SAGE luôn vươn tới mục tiêu trở thành một công cụ quan trọng

giúp cho quá trình làm việc với các đối tượng toán học trở nên dễ dànghơn.

2 Hiệu suất cao: Ngày càng nhanh và mạnh.3 Luôn là phần mềm tự do và nguồn mở: Mã nguồn của SAGE sẽ luôn công

khai để mọi người đều có thể tiếp cận và thậm chí có thể dễ dàng thayđổi cho phù hợp với công việc của mình.

4 Dễ cài đặt: Dễ dàng cài đặt bất kể bạn dùng Linux, Mac OSX hayWindows.

5 Tính tương tác cao: SAGE tạo ra một môi trường làm việc giúp ngườidùng dễ dàng tương tác với các phần mềm khoa học khác như PARI,GAP, Singular, Maxima, Maple, ...

6 Tài liệu chi tiết: SAGE có hệ thống tài liệu hướng dẫn chi tiết với mộtkhối lượng lớn các ví dụ cụ thể.

7 Có thể mở rộng: SAGE được thiết kế để việc thêm các kiểu dữ liệu, cácđoạn mã, các gói lệnh mới, ... trở nên dễ dàng.

8 Thân thiện với người dùng: Khi dùng SAGE, bạn có thể dễ dàng tìm hiểuđược những chức năng mà SAGE có ứng với đối tượng mà bạn đang làmviệc hoặc nghiên cứu, thậm chí có thể thay đổi mã nguồn để phù hợp vớicông việc và yêu cầu của bạn.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 6 / 13

Page 14: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE tại Khoa Toán-Cơ-Tin học Đại học KHTN

Trong những năm gần đây, khoa Toán-Cơ-Tin học, trường Đại họcKHTN đã bước đầu ứng dụng SAGE trong quá trình giảng dạy vànghiên cứu.

Một số khóa học về Tối ưu, Xác suất thống kê, Tính toán xấp xỉ, ...sử dụng SAGE trong quá trình giảng dạy và học tập, thay thế cho cácphần mềm trả phí như Maple, Matlab, hay Mathematica.

SAGE cũng thường xuyên được sử dụng trong một số dự án nghiêncứu của Khoa trong các lĩnh vực Đại số, Tổ hợp, ...

Các buổi seminar giới thiệu, hướng dẫn sử dụng SAGE cho sinh viêndiễn ra hết sức thành công và bước đầu đạt hiệu quả khả quan. Mộtsố cán bộ, sinh viên của Khoa tham gia viết gói lệnh, dịch tài liệuhướng dẫn sử dụng SAGE, ...

Trong tương lai, SAGE sẽ trở thành một trong những phần mềm đượcsử dụng rộng rãi trong quá trình giảng dạy và nghiên cứu của Khoa.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 7 / 13

Page 15: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE tại Khoa Toán-Cơ-Tin học Đại học KHTN

Trong những năm gần đây, khoa Toán-Cơ-Tin học, trường Đại họcKHTN đã bước đầu ứng dụng SAGE trong quá trình giảng dạy vànghiên cứu.

Một số khóa học về Tối ưu, Xác suất thống kê, Tính toán xấp xỉ, ...sử dụng SAGE trong quá trình giảng dạy và học tập, thay thế cho cácphần mềm trả phí như Maple, Matlab, hay Mathematica.

SAGE cũng thường xuyên được sử dụng trong một số dự án nghiêncứu của Khoa trong các lĩnh vực Đại số, Tổ hợp, ...

Các buổi seminar giới thiệu, hướng dẫn sử dụng SAGE cho sinh viêndiễn ra hết sức thành công và bước đầu đạt hiệu quả khả quan. Mộtsố cán bộ, sinh viên của Khoa tham gia viết gói lệnh, dịch tài liệuhướng dẫn sử dụng SAGE, ...

Trong tương lai, SAGE sẽ trở thành một trong những phần mềm đượcsử dụng rộng rãi trong quá trình giảng dạy và nghiên cứu của Khoa.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 7 / 13

Page 16: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE tại Khoa Toán-Cơ-Tin học Đại học KHTN

Trong những năm gần đây, khoa Toán-Cơ-Tin học, trường Đại họcKHTN đã bước đầu ứng dụng SAGE trong quá trình giảng dạy vànghiên cứu.

Một số khóa học về Tối ưu, Xác suất thống kê, Tính toán xấp xỉ, ...sử dụng SAGE trong quá trình giảng dạy và học tập, thay thế cho cácphần mềm trả phí như Maple, Matlab, hay Mathematica.

SAGE cũng thường xuyên được sử dụng trong một số dự án nghiêncứu của Khoa trong các lĩnh vực Đại số, Tổ hợp, ...

Các buổi seminar giới thiệu, hướng dẫn sử dụng SAGE cho sinh viêndiễn ra hết sức thành công và bước đầu đạt hiệu quả khả quan. Mộtsố cán bộ, sinh viên của Khoa tham gia viết gói lệnh, dịch tài liệuhướng dẫn sử dụng SAGE, ...

Trong tương lai, SAGE sẽ trở thành một trong những phần mềm đượcsử dụng rộng rãi trong quá trình giảng dạy và nghiên cứu của Khoa.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 7 / 13

Page 17: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE tại Khoa Toán-Cơ-Tin học Đại học KHTN

Trong những năm gần đây, khoa Toán-Cơ-Tin học, trường Đại họcKHTN đã bước đầu ứng dụng SAGE trong quá trình giảng dạy vànghiên cứu.

Một số khóa học về Tối ưu, Xác suất thống kê, Tính toán xấp xỉ, ...sử dụng SAGE trong quá trình giảng dạy và học tập, thay thế cho cácphần mềm trả phí như Maple, Matlab, hay Mathematica.

SAGE cũng thường xuyên được sử dụng trong một số dự án nghiêncứu của Khoa trong các lĩnh vực Đại số, Tổ hợp, ...

Các buổi seminar giới thiệu, hướng dẫn sử dụng SAGE cho sinh viêndiễn ra hết sức thành công và bước đầu đạt hiệu quả khả quan. Mộtsố cán bộ, sinh viên của Khoa tham gia viết gói lệnh, dịch tài liệuhướng dẫn sử dụng SAGE, ...

Trong tương lai, SAGE sẽ trở thành một trong những phần mềm đượcsử dụng rộng rãi trong quá trình giảng dạy và nghiên cứu của Khoa.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 7 / 13

Page 18: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE tại Khoa Toán-Cơ-Tin học Đại học KHTN

Trong những năm gần đây, khoa Toán-Cơ-Tin học, trường Đại họcKHTN đã bước đầu ứng dụng SAGE trong quá trình giảng dạy vànghiên cứu.

Một số khóa học về Tối ưu, Xác suất thống kê, Tính toán xấp xỉ, ...sử dụng SAGE trong quá trình giảng dạy và học tập, thay thế cho cácphần mềm trả phí như Maple, Matlab, hay Mathematica.

SAGE cũng thường xuyên được sử dụng trong một số dự án nghiêncứu của Khoa trong các lĩnh vực Đại số, Tổ hợp, ...

Các buổi seminar giới thiệu, hướng dẫn sử dụng SAGE cho sinh viêndiễn ra hết sức thành công và bước đầu đạt hiệu quả khả quan. Mộtsố cán bộ, sinh viên của Khoa tham gia viết gói lệnh, dịch tài liệuhướng dẫn sử dụng SAGE, ...

Trong tương lai, SAGE sẽ trở thành một trong những phần mềm đượcsử dụng rộng rãi trong quá trình giảng dạy và nghiên cứu của Khoa.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 7 / 13

Page 19: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Bắt đầu với Sage

Tải và cài đặt

Tải trực tiếp mã nguồn (source package) của SAGE và cài đặt.

Tải SAGE hoàn chỉnh (binary package) đã nén sẵn từ trang chủ củaSAGE.

Tải file VMWare image đối với những người sử dụng Windows.

Sử dụng online tại http://www.sagenb.org

Bạn có thể sử dụng SAGE thông qua ...

Notebook với giao diện đồ họa tương tác giống như một trang web.

Giao diện dòng lệnh.

Viết các chương trình hoàn chỉnh và sử dụng SAGE để chạy.

Tích hợp các thư viện của SAGE trong các đoạn code Python.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 8 / 13

Page 20: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Bắt đầu với Sage

Tải và cài đặt

Tải trực tiếp mã nguồn (source package) của SAGE và cài đặt.

Tải SAGE hoàn chỉnh (binary package) đã nén sẵn từ trang chủ củaSAGE.

Tải file VMWare image đối với những người sử dụng Windows.

Sử dụng online tại http://www.sagenb.org

Bạn có thể sử dụng SAGE thông qua ...

Notebook với giao diện đồ họa tương tác giống như một trang web.

Giao diện dòng lệnh.

Viết các chương trình hoàn chỉnh và sử dụng SAGE để chạy.

Tích hợp các thư viện của SAGE trong các đoạn code Python.

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 8 / 13

Page 21: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE - Notebook

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 9 / 13

Page 22: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE - Giao diện dòng lệnh

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 10 / 13

Page 23: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

SAGE có thể làm được gì?

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 11 / 13

Page 24: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Demo một số chức năng của SAGE

File: SAGE Demo at [email protected]

1 Lý thuyết số

2 Đại số

3 Tổ hợp - Lý thuyết đồ thị

4 Phương trình vi phân

5 Đồ họa 2D

6 Đồ họa 3D

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 12 / 13

Page 25: Sfd2012Hanoi  Hoang Anh Duc - sagetalk

Một số link về SAGE

1 Trang chủ http://www.sagemath.org/

2 SAGE Wiki http://wiki.sagemath.org/

3 Online Notebook http://www.sagenb.org/

4 SAGE Interact http://interact.sagemath.org

5 SAGE Blog http://planet.sagemath.org/

6 Nhóm hỗ trợ sage-supporthttp://groups.google.com/group/sage-support/

7 Nhóm phát triển sage-develhttp://groups.google.com/group/sage-devel/

Hoàng Anh Đức (HUS) Giới thiệu phần mềm SAGE 15/09/2012 13 / 13