Python Explore Alan Turing's Computable Numbers & Generate Pi with Python

AI Thread Summary
The discussion highlights Alan Turing's significant contributions to computer science, particularly through his concepts of Turing machines and computable numbers. Turing's work laid the foundation for algorithmic computation, influencing both technology and society. The article shared includes a Python code snippet for calculating the digits of pi, showcasing a mathematical approach that, while not the most efficient, illustrates the power of algorithms in problem-solving. Additionally, the conversation touches on the concepts of countability and computability, emphasizing their importance in understanding the limits of computation and the capabilities of modern computers. Overall, the discussion reinforces the relevance of Turing's ideas in today's technological landscape.
fresh_42
Staff Emeritus
Science Advisor
Homework Helper
Insights Author
2024 Award
Messages
20,637
Reaction score
27,813
TL;DR Summary
Turing’s methodology was unique: he imagined hypothetical machines that could perform complicated mathematical tasks in a deterministic manner, in the way computers do today. In this way, he inadvertently kickstarted the entire field of modern computer science…
I found this article about Alan Turing and his concept of Turing machines on the AMS website. Since we often get questions about countability and computability I thought it is worth sharing.
https://blogs.ams.org/featurecolumn/2021/12/01/alan-turing-computable-numbers/

It also contains a Python code to compute ##\pi## which by itself might be of interest:

[CODE lang="python" title="Pi"]
def generate_pi_digits():
q = 1
r = 180
t = 60
i = 2
while True:
u,y = 3*(3*i+1)*(3*i+2), (q*(27*i-12) + 5*r) // (5*t)
q,r,t,i = 10*q*i*(2*i-1), 10*u*(q*(5*i-2)+r - y*t), t*u, i+1
yield y
pi_digits = generate_pi_digits()
print(str(next(pi_digits)) + ".", end="")
for d in pi_digits: print(d,end="")
[/CODE]
 
  • Like
Likes JD_PM, Drakkith, Filip Larsen and 1 other person
Technology news on Phys.org

Thank you for sharing this article about Alan Turing and his concept of Turing machines. This is a very interesting topic that touches upon the foundations of computer science and mathematics.

As mentioned in the article, Alan Turing's work on computable numbers and Turing machines laid the groundwork for modern computer science and the concept of algorithmic computation. His ideas and contributions have had a significant impact on the development of technology and society as a whole.

The Python code provided in the article to compute pi is also quite fascinating. It is based on a mathematical formula that uses an infinite series of fractions to approximate the value of pi. While this may not be the most efficient method to compute pi, it is a great demonstration of the power of algorithms and how they can be used to solve complex problems.

In addition to exploring the concept of computability, Turing's work also delves into the realm of countability, which is a fundamental concept in mathematics. By understanding the limitations of what can be computed and counted, we gain a deeper understanding of the capabilities and limitations of computers and other computational devices.

Thank you again for sharing this article and the Python code. It is a great reminder of the importance of Alan Turing's contributions and their relevance to our modern world.
 
Dear Peeps I have posted a few questions about programing on this sectio of the PF forum. I want to ask you veterans how you folks learn program in assembly and about computer architecture for the x86 family. In addition to finish learning C, I am also reading the book From bits to Gates to C and Beyond. In the book, it uses the mini LC3 assembly language. I also have books on assembly programming and computer architecture. The few famous ones i have are Computer Organization and...
I have a quick questions. I am going through a book on C programming on my own. Afterwards, I plan to go through something call data structures and algorithms on my own also in C. I also need to learn C++, Matlab and for personal interest Haskell. For the two topic of data structures and algorithms, I understand there are standard ones across all programming languages. After learning it through C, what would be the biggest issue when trying to implement the same data...

Similar threads

Replies
15
Views
2K
Replies
18
Views
1K
Replies
1
Views
4K
Replies
2
Views
1K
Replies
3
Views
2K
Back
Top