Sometimes students will contact me, as my email is visible. This time, an undergraduate in Sri Lanka has no number theory courses available and is self-studying.

My own experience is that it helps to run computer experiments; that is how I learned the topic. I took a course in C++ some twenty years ago, and that has served me well. Steep learning curve, though. It helped a good deal when I found I could use the GMP library for large integers. My impression is that many current computer languages have large integers built in.

What computer languages might one recommend for, say, investigations in number theory?

As far as books, she is currently reading Burton. I have requested that and Burn, *A Pathway into Number Theory*, from my library. The one thing I would add to early number theory is quadratic forms, maybe just binary, before attempting quadratic fields. I like that Burns does the automorphism group of a binary quadratic form; he may not call it a group, not sure yet.

Mathematics Educators Asked by Will Jagy on December 27, 2020

5 AnswersBenjamin Hutz has a recent book that could be appropriate: An Experimental Introduction to Number Theory.

This book presents material suitable for an undergraduate course in elementary number theory from a computational perspective. It seeks to not only introduce students to the standard topics in elementary number theory, such as prime factorization and modular arithmetic, but also to develop their ability to formulate and test precise conjectures from experimental data. Each topic is motivated by a question to be answered, followed by some experimental data, and, finally, the statement and proof of a theorem. There are numerous opportunities throughout the chapters and exercises for the students to engage in (guided) open-ended exploration. At the end of a course using this book, the students will understand how mathematics is developed from asking questions to gathering data to formulating and proving theorems.

Regarding languages, in the preface he mentions the following:

The book is not tied into any one computer algebra system, and there are several freely available. The systems SageMath and PARI/GP are two excellent freely available systems. Similarly, Mathematica, Maple, or other commercial software could also be used. Because there are many excellent tutorials for each of these systems freely available, they will not be presented in this book.

Answered by J W on December 27, 2020

Seconding/complementing other answers: Python (and/or Python as a part of Sage) has a command-line interface (on Linux/Unix and on Mac OS) that *does* allow defining variables, pre-loading files that set things up, and so on. Python (and, thus, Sage) has built-in large integers that are easier to use than C++ large integers (in my opinion). And freely available.

EDIT: ... and (I forgot to mention) it is quite easy to use the built-in graphing and graphical capabilities of Sage (especially in the "notebook" mode).

Answered by paul garrett on December 27, 2020

For beginning number theory, Art of Problem Solving has an online course. The textbook used with it, *Introduction to Number Theory* by Matthew Crawford, can be used alone for self-study. (I have not used the course. I have used the textbook.) I tutored a very advanced 9-year-old using this book, and enjoyed it.

I see they also have an intermediate number theory course.

Answered by Sue VanHattum on December 27, 2020

I would recommend Python combined with SageMath, as already recommended by Joseph O'Rourke, or rather SageMath and Python comes naturally.

Python is a modern, and widely used, interpreted language (no compilation needed) it supports big integers via the bignum type. (But using SageMath I think this is tangential, I mention it for completeness mainly.)

SageMath is a free CAS whose user language is essentially Python. SageMath has lots of number theory functionality; its founder William A. Stein is a number theorist.

He also wrote a nice book "Elementary Number Theory: Primes, Congruences, and Secrets" that uses this software; you can check it out on his site.

As you mentioned PARI/gp you might be interested to know that PARI is an integral part of SageMath.

Answered by quid on December 27, 2020

What computer languages might one recommend for, say, investigations in number theory?

I find Mathematica ideal, e.g.:

- "Mod sequences that seem to become constant; and the number 316"
- "Does 53 diverge to infinity in this Collatz-like sequence?"

But: (a) there is a huge start-up learning curve, and (b) Mathematica is not free. Because of the latter, I recommend Sage / SageMath:

Answered by Joseph O'Rourke on December 27, 2020

6 Asked on September 6, 2021

6 Asked on September 5, 2021 by occhima

2 Asked on September 5, 2021 by rusty-core

logic mathematical pedagogy middle school proofs secondary education

0 Asked on September 5, 2021 by w-g

4 Asked on September 5, 2021 by d-r

1 Asked on September 5, 2021

2 Asked on September 5, 2021

2 Asked on September 5, 2021 by lex_i

2 Asked on September 5, 2021 by dirac-academy-of-self-study

middle school resource request secondary education self learning textbooks

1 Asked on September 5, 2021 by ritesh-singh

online online instruction problem solving secondary education undergraduate education

2 Asked on September 5, 2021

graduate education secondary education undergraduate education

8 Asked on September 5, 2021 by user14243

4 Asked on September 5, 2021

7 Asked on September 5, 2021 by user13544

3 Asked on January 19, 2021

1 Asked on January 14, 2021 by cab

4 Asked on January 13, 2021 by john-clever

Get help from others!

Recent Questions

- MouseLook Script “Pops” back to the last value when the script is enabled after being disabled or destroyed
- Unity app crashes when using unmodified custom Android manifest (didn’t find class “UnityPlayerActivity”)
- How do i draw a ray in unity
- How to test consistency of responses?
- How can I understand these variograms?

Recent Answers

- Philipp on How do i draw a ray in unity
- kjetil b halvorsen on How to test consistency of responses?
- eric_kernfeld on How to test consistency of responses?
- Justin Markwell on Unity app crashes when using unmodified custom Android manifest (didn’t find class “UnityPlayerActivity”)
- DMGregory on MouseLook Script “Pops” back to the last value when the script is enabled after being disabled or destroyed

© 2022 AnswerBun.com. All rights reserved.