diff --git a/src/doc/en/website/root_index.html b/src/doc/en/website/root_index.html index 0daea8b0cfa..f93cd0fb170 100644 --- a/src/doc/en/website/root_index.html +++ b/src/doc/en/website/root_index.html @@ -85,6 +85,12 @@

Sage Documentation

A Tour of Sage
Tutorial
+
+
Korean
+
+
A Tour of Sage
+
Tutorial
+
Portuguese
@@ -163,6 +169,12 @@

Sage Documentation

A Tour of Sage
Tutorial
+
+
Korean
+
+
A Tour of Sage
+
Tutorial
+
Portuguese
diff --git a/src/doc/ko/a_tour_of_sage/conf.py b/src/doc/ko/a_tour_of_sage/conf.py new file mode 100644 index 00000000000..bdfc76541fe --- /dev/null +++ b/src/doc/ko/a_tour_of_sage/conf.py @@ -0,0 +1,40 @@ +# nodoctest +# Numerical Sage documentation build configuration file, created by +# sphinx-quickstart on Sat Dec 6 11:08:04 2008. +# +# This file is execfile()d with the current directory set to its containing dir. +# +# The contents of this file are pickled, so don't put values in the namespace +# that aren't pickleable (module imports are okay, they're removed automatically). +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +from sage_docbuild.conf import release +from sage_docbuild.conf import * # NOQA + +# Add any paths that contain custom static files (such as style sheets), +# relative to this directory to html_static_path. They are copied after the +# builtin static files, so a file named "default.css" will overwrite the +# builtin "default.css". html_common_static_path imported from sage_docbuild.conf +# contains common paths. +html_static_path = [] + html_common_static_path + +# General information about the project. +project = 'Sage 탐색' +name = 'a_tour_of_sage' +language = 'ko' + +# The name for this set of Sphinx documents. If None, it defaults to +# " v documentation". +html_title = project + ' v' + release + +# Output file base name for HTML help builder. +htmlhelp_basename = name + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, author, document class [howto/manual]). +latex_documents = [ + ('index', name + '.tex', project, + 'The Sage Development Team', 'manual'), +] diff --git a/src/doc/ko/a_tour_of_sage/eigen_plot.png b/src/doc/ko/a_tour_of_sage/eigen_plot.png new file mode 100644 index 00000000000..925264764f1 Binary files /dev/null and b/src/doc/ko/a_tour_of_sage/eigen_plot.png differ diff --git a/src/doc/ko/a_tour_of_sage/index.rst b/src/doc/ko/a_tour_of_sage/index.rst new file mode 100644 index 00000000000..f70ded4e7f0 --- /dev/null +++ b/src/doc/ko/a_tour_of_sage/index.rst @@ -0,0 +1,135 @@ +===================== +Sage에 오신 것을 환영합니다 +===================== + +이것은 Sage와 그것을 계산기로 사용하는 것에 대한 간단한 안내입니다. + +Sage의 명령 줄은 "``sage:``" 프롬프트 메시지로 시작합니다. 다음 예제들을 실험하려면 +프롬프트 메시지 다음 부분만 입력하면 됩니다. + +:: + + sage: 3 + 5 + 8 + +Jupyter 노트북에서 Sage를 사용하는 경우, 마찬가지로, 프롬프트 메시지 이후의 +모든 내용을 입력 셀에 넣고 :kbd:`Shift-Enter` 를 눌러 해당 출력을 얻으세요. + +지수 기호는 '거듭제곱'을 의미합니다. + +:: + + sage: 57.1^100 + 4.60904368661396e175 + +우리는 Sage에서 :math:`2 \times 2` 행렬의 역행렬을 계산합니다. + +:: + + sage: matrix([[1, 2], [3, 4]])^(-1) + [ -2 1] + [ 3/2 -1/2] + +여기에서 간단한 함수의 적분을 계산합니다. + +:: + + sage: x = var('x') # δημιουργίας συμβολικής μεταβλητής + sage: integrate(sqrt(x) * sqrt(1 + x), x) + 1/4*((x + 1)^(3/2)/x^(3/2) + sqrt(x + 1)/sqrt(x))/((x + 1)^2/x^2 - 2*(x + 1)/x + 1) + - 1/8*log(sqrt(x + 1)/sqrt(x) + 1) + 1/8*log(sqrt(x + 1)/sqrt(x) - 1) + +여기에서 Sage는 이차 방정식을 풉니다. 기호 ``==`` 는 Sage에서 등식을 나타냅니다. + +:: + + sage: a = var('a') + sage: S = solve(x^2 + x == a, x); S + [x == -1/2*sqrt(4*a + 1) - 1/2, x == 1/2*sqrt(4*a + 1) - 1/2] + +결과는 등식 목록입니다. + +.. link + +:: + + sage: S[0].rhs() # δεξί μέρος της εξίσωσης (rhs = right hand side) + -1/2*sqrt(4*a + 1) - 1/2 + +Sage는 다양한 함수의 그래프를 생성할 수 있습니다. + +:: + + sage: show(plot(sin(x) + sin(1.6*x), 0, 40)) + +.. image:: sin_plot.* + + +Sage는 매우 강력한 계산기입니다. 이를 확인하려면 무작위 숫자로 이루어진 +:math:`500 \times 500` 행렬을 생성해 보세요 + +:: + + sage: m = random_matrix(RDF, 500) + +Sage는 행렬의 고유값을 계산하고 그래픽으로 표시하는 데 1초가 걸립니다. + +.. link + +:: + + sage: e = m.eigenvalues() # περίπου 1 δευτερόλεπτο + sage: w = [(i, abs(e[i])) for i in range(len(e))] + sage: show(points(w)) + +.. image:: eigen_plot.* + + +Sage는 수백만 또는 수십억 자리의 큰 숫자도 처리할 수 있습니다. + +:: + + sage: factorial(100) + 93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000 + +:: + + sage: n = factorial(1000000) # περίπου 1 δευτερόλεπτο + sage: len(n.digits()) + 5565709 + +여기에서 우리는 :math:`\pi` 의 적어도 100자리 숫자를 계산합니다. + +:: + + sage: N(pi, digits=100) + 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068 + +여기에서 Sage는 두 변수 다항식을 인수분해합니다. + +:: + + sage: R. = QQ[] + sage: F = factor(x^99 + y^99) + sage: F + (x + y) * (x^2 - x*y + y^2) * (x^6 - x^3*y^3 + y^6) * + (x^10 - x^9*y + x^8*y^2 - x^7*y^3 + x^6*y^4 - x^5*y^5 + + x^4*y^6 - x^3*y^7 + x^2*y^8 - x*y^9 + y^10) * + (x^20 + x^19*y - x^17*y^3 - x^16*y^4 + x^14*y^6 + x^13*y^7 - + x^11*y^9 - x^10*y^10 - x^9*y^11 + x^7*y^13 + x^6*y^14 - + x^4*y^16 - x^3*y^17 + x*y^19 + y^20) * (x^60 + x^57*y^3 - + x^51*y^9 - x^48*y^12 + x^42*y^18 + x^39*y^21 - x^33*y^27 - + x^30*y^30 - x^27*y^33 + x^21*y^39 + x^18*y^42 - x^12*y^48 - + x^9*y^51 + x^3*y^57 + y^60) + sage: F.expand() + x^99 + y^99 + +Sage는 1억이 양의 정수의 합으로 표현될 수 있는 방법을 계산하는 데 1초 미만이 소요됩니다. + +:: + + sage: z = Partitions(10^8).cardinality() # περίπου .1 δευτερόλεπτα + sage: z + 1760517045946249141360373894679135204009... + +Sage는 세계에서 가장 고급스러운 오픈소스 수학 소프트웨어입니다. diff --git a/src/doc/ko/a_tour_of_sage/sin_plot.png b/src/doc/ko/a_tour_of_sage/sin_plot.png new file mode 100644 index 00000000000..ef4e87c69c1 Binary files /dev/null and b/src/doc/ko/a_tour_of_sage/sin_plot.png differ diff --git a/src/doc/ko/tutorial/conf.py b/src/doc/ko/tutorial/conf.py new file mode 100644 index 00000000000..0fb23b7e921 --- /dev/null +++ b/src/doc/ko/tutorial/conf.py @@ -0,0 +1,43 @@ +# nodoctest +# Sage documentation build configuration file, created by +# sphinx-quickstart on Thu Aug 21 20:15:55 2008. +# +# This file is execfile()d with the current directory set to its containing dir. +# +# The contents of this file are pickled, so don't put values in the namespace +# that aren't pickleable (module imports are okay, they're removed automatically). +# +# All configuration values have a default; values that are commented out +# serve to show the default. + +from sage_docbuild.conf import release +from sage_docbuild.conf import * # NOQA + +# Add any paths that contain custom static files (such as style sheets), +# relative to this directory to html_static_path. They are copied after the +# builtin static files, so a file named "default.css" will overwrite the +# builtin "default.css". html_common_static_path imported from sage_docbuild.conf +# contains common paths. +html_static_path = [] + html_common_static_path + +# Add a small edit button. +html_theme_options.update({ + 'source_edit_link': os.path.join(source_repository, 'blob/develop/src/doc/ko/tutorial', '{filename}'), +}) + +# General information about the project. +project = "Tutorial" + +# The name for this set of Sphinx documents. +html_title = project +html_short_title = project + +# Output file base name for HTML help builder. +htmlhelp_basename = 'sage_tutorial' + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, author, document class [howto/manual]). +latex_documents = [ + ('index', 'sage_tutorial.tex', 'Tutorial', + 'The Sage Development Team', 'manual'), +] diff --git a/src/doc/ko/tutorial/index.rst b/src/doc/ko/tutorial/index.rst new file mode 100644 index 00000000000..ba0f7650f75 --- /dev/null +++ b/src/doc/ko/tutorial/index.rst @@ -0,0 +1,31 @@ +.. Sage documentation master file, created by sphinx-quickstart on Thu Aug 21 20:15:55 2008. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +.. _tutorial: + +=================================== +Sage 세미나에 오신 것을 환영합니다 +=================================== + +Sage는 대수학, 기하학, 수론, 암호학, 수치 계산 및 기타 관련 분야의 연구와 +교육을 지원하는 무료 오픈소스 수학 소프트웨어입니다. Sage의 개발 모델과 기술 +모두가 개방성, 커뮤니티 및 협업에 강한 강조를 두고 있습니다. 우리는 차를 +만들고, 바퀴를 다시 발명하지 않습니다. Sage의 주요 목표는 Maple, Mathematica, +Magma 및 MATLAB의 지속 가능하고 무료이며 오픈소스 대안을 만드는 것입니다. + +이 세미나는 몇 시간 만에 Sage에 익숙해지는 가장 좋은 방법입니다. HTML 또는 PDF +버전에서 읽을 수 있으며 또는 Sage 노트북에서 읽을 수도 있습니다 (Sage에서 +``Help`` 옵션을 클릭한 다음 ``Tutorial`` 옵션을 클릭하여 세미나를 통해 상호 +작용할 수 있습니다). + +이 작품은 다음 라이선스에 따라 제공됩니다 `Creative Commons Attribution-Share Alike +3.0 License`__. + +__ http://creativecommons.org/licenses/by-sa/3.0/ + +.. toctree:: + :maxdepth: 2 + + introduction + interactive_shell diff --git a/src/doc/ko/tutorial/interactive_shell.rst b/src/doc/ko/tutorial/interactive_shell.rst new file mode 100644 index 00000000000..c5b9984ac46 --- /dev/null +++ b/src/doc/ko/tutorial/interactive_shell.rst @@ -0,0 +1,95 @@ +.. _chapter-interactive_shell: + +********* +대화형 셸 +********* + +``sage`` 명령으로 Sage 인터프리터를 시작하면 많은 함수와 클래스가 도입된 수정된 +버전의 ``IPython`` 셸이 시작됩니다. + +.. CODE-BLOCK:: text + + ┌────────────────────────────────────────────────────────────────────┐ + │ SageMath version X.X, Release Date: YYYY-MM-DD │ + │ Using Python X.X.X. Type "help()" for help. │ + └────────────────────────────────────────────────────────────────────┘ + sage: + +Sage를 종료하려면 :kbd:`Ctrl+d` (또는 ``quit`` 또는 ``exit``)를 입력하세요. + +(시그널을 통한 종료인 ``kill -9`` 와 같은 방법을 피하십시오. 이 방법은 일부 +프로세스를 종료하지 못하거나 임시 파일을 정리하지 못할 수 있습니다.) + +유용한 바로 가기 키와 명령어 +============================ + +- ``?`` -- 함수에 대한 도움말 표시 + +- ``??`` -- 함수의 소스 코드 표시 + +- ``help()`` -- 명령 또는 클래스 매뉴얼 표시 (``q`` 종료를 위해) + +- ``!`` -- 어떤 UNIX 명령어를 입력하기 전에 사용하세요 + +- ``_`` -- 마지막 비어 있지 않은 출력 + +- ``__`` -- 끝에서 두 번째 비어 있지 않은 출력 + +- ``ih``, ``_oh`` -- 세션 명령어의 입력과 출력 목록 + +- :kbd:`Ctrl+r` -- 과거 명령어에서 검색하기 + +- ``%history`` 또는 ``%hist`` -- 현재 세션의 모든 이전 명령어 목록을 반환합니다 + +- ``%time`` --명령어 앞에 오고 실행 시간을 표시합니다 + +- ``timeit()`` -- 반복 실행 후 명령어 실행 시간 정보를 표시합니다. 명령어는 + 문자열로 입력됩니다 (``""`` 내부) + +- ``cputime()`` -- 처리 시간을 표시합니다; 예시 [1]_ + +- ``walltime()`` -- ``cputime()`` 와 유사한 명령어이지만 '실제' 시간을 + 측정합니다. 벽시계가 측정하는 것처럼 + +- ``%macro`` -- 매크로 명령어 생성 (여러 명령어의 단축키); 예제 [2]_. + +- ``logstart`` -- 세션 입력 명령어 기록 시작; ``load()`` 명령어를 사용하여 + 로드하고 다시 실행합니다 + +- ``save_session()`` -- 세션 저장 + +- ``load_session()`` -- 세션 불러오기 + +일부 예시 +========= + +.. [1] ``cputime()`` + +.. skip + +:: + + sage: t = cputime() + sage: a = int(1938) ^ int(99484) + sage: b = 1938 ^ 99484 + sage: c = pari(1938) ^ pari(99484) + sage: cputime(t) + 0.11 + +.. [2] ``%macro`` + +.. skip + +:: + + sage: E = EllipticCurve([1,2,3,4,5]) + sage: M = ModularSymbols(37) + sage: %hist + E = EllipticCurve([1,2,3,4,5]) + M = ModularSymbols(37) + %hist + sage: %macro em 1-2 + Macro `em` created. To execute, type its name (without quotes). + === Macro contents: === + E = EllipticCurve([Integer(1),Integer(2),Integer(3),Integer(4),Integer(5)]) + M = ModularSymbols(Integer(37)) diff --git a/src/doc/ko/tutorial/introduction.rst b/src/doc/ko/tutorial/introduction.rst new file mode 100644 index 00000000000..2f97c23dd60 --- /dev/null +++ b/src/doc/ko/tutorial/introduction.rst @@ -0,0 +1,116 @@ +***** +소개 +**** + +Sage의 첫인상을 보고 싶다면, 여기에 있습니다. Sage는 주로 Python을 기반으로 +하지만 사용을 위해 Python의 지식은 필요하지 않습니다. 예를 들면: + +:: + + sage: 2 + 2 + 4 + sage: factor(-2007) + -1 * 3^2 * 223 + + sage: A = matrix(4, 4, range(16)); A + [ 0 1 2 3] + [ 4 5 6 7] + [ 8 9 10 11] + [12 13 14 15] + + sage: factor(A.charpoly()) + x^2 * (x^2 - 30*x - 80) + + sage: m = matrix(ZZ, 2, range(4)) + sage: m[0,0] = m[0,0] - 3 + sage: m + [-3 1] + [ 2 3] + + sage: E = EllipticCurve([1, 2, 3, 4, 5]); # Ελλειπτική καμπύλη + sage: E + Elliptic Curve defined by y^2 + x*y + 3*y = x^3 + 2*x^2 + 4*x + 5 + over Rational Field + sage: E.anlist(10) + [0, 1, 1, 0, -1, -3, 0, -1, -3, -3, -3] + sage: E.rank() + 1 + + sage: k = 1/(sqrt(3)*I + 3/4 + sqrt(73)*5/9); k + 36/(20*sqrt(73) + 36*I*sqrt(3) + 27) + sage: N(k) + 0.165495678130644 - 0.0521492082074256*I + sage: N(k, 30) # 30 "bits" + 0.16549568 - 0.052149208*I + sage: latex(k) + \frac{36}{20 \, \sqrt{73} + 36 i \, \sqrt{3} + 27} + +.. _installation: + +설치 +==== + +Sage `Installation Guide +`_ 를 참조하세요 (`이 +링크 <../../en/installation/index.html>`_ 는 설치 가이드의 로컬 복사본으로 +이동합니다). + +컴퓨터에 Sage가 설치되어 있지 않은 경우, https://sagecell.sagemath.org 에서 +시도해 볼 수 있습니다. + +Sage는 "배터리 포함"입니다. 즉, Sage는 Python, IPython, PARI, GAP, Singular, +Maxima, NTL, GMP 등을 사용하지만 별도로 설치할 필요가 없습니다. 이들은 Sage +배포본에 포함되어 있습니다. 그러나 Sage의 일부 기능을 사용하려면 Macaulay 또는 +KASH 등 관련 프로그램이 이미 컴퓨터에 설치되어 있어야 합니다. + + +Sage 사용 방법 +============== + +Sage를 여러 가지 방법으로 사용할 수 있습니다. + + +- **대화형 셸:** :ref:`chapter-interactive_shell` 참조, + +- **노트북 그래픽 환경:** ``sage -n jupyter`` 를 실행하세요.· 확인하세요 + `the Jupyter documentation on-line `_, + +- **프로그램:** 해석되고 컴파일된 프로그램을 작성하거나, Sage 라이브러리를 + 사용하는 Python 스크립트를 작성합니다 + +Sage의 장기적 목표 +================= + +- **유용한:** Sage의 대상은 수학 학생, 교사 및 연구 수학자입니다. 목표는 + 대수학, 기하학, 수론, 미적분학, 수치 계산 등 수학적 구조를 탐색하고 실험할 수 + 있는 소프트웨어를 제공하는 것입니다. Sage는 수학 객체를 대화식으로 실험하는 + 것을 용이하게 합니다. + +- **효율적인:** Sage는 GMP, PARI, GAP 및 NTL과 같은 최적화되고 성숙한 + 소프트웨어를 사용하므로 특정 기능에서 매우 빠릅니다. + +- **무료 및 오픈 소스:** 소스 코드는 자유롭게 이용 가능하고 읽을 수 있어야 + 합니다. 이렇게 함으로써 사용자들은 시스템이 실제로 무엇을 하는지 이해하고 + 보다 쉽게 확장할 수 있습니다. 수학자들이 정리를 주의 깊게 읽어야만 정리를 + 보다 깊게 이해할 수 있는 것처럼, 계산을 하는 사람들도 소스 코드를 읽음으로써 + 컴퓨팅 프로세스를 더 깊이 이해할 수 있습니다. Sage를 논문에 사용하는 경우, + 독자들이 항상 Sage 및 해당 소스 코드에 무료로 액세스 할 수 있도록 하고 사용한 + Sage 버전을 아카이브하고 재배포할 수 있습니다. + +- **사용하기 쉬운:** Sage는 Linux, OS X 및 Windows용 소스 코드에서 쉽게 빌드될 + 수 있어야 합니다. 이렇게 함으로써 사용자들은 시스템을 수정할 수 있는 유연성을 + 가질 수 있습니다. + +- **협력적인:** 대부분의 다른 컴퓨터 대수 시스템에 강력한 인터페이스를 + 제공하며, PARI, GAP, Singular, Maxima, KASH, Magma, Maple 및 Mathematica를 + 포함합니다. Sage는 기존의 수학 소프트웨어를 통합하고 확장하는 것을 목표로 + 합니다. + +- **종합적인 안내서:** 세미나, 프로그래밍 가이드, 참조 매뉴얼 및 팁으로 수학적 + 배경에 대한 많은 예제와 토론을 제공합니다. + +- **확장 가능한:** 새로운 데이터 유형을 정의하거나 내장된 유형에서 유추하고 + 다양한 언어로 작성된 코드를 사용할 수 있어야 합니다. + +- **사용하기 편리한**: 각 구성 요소에 대한 제공된 기능을 이해하기 쉽고 문서 및 + 소스 코드의 표시. 사용자 지원 수준이 높습니다