Turing Machines, Busy Beavers, and Big Questions about Computing



Similar documents
CAs and Turing Machines. The Basis for Universal Computation

Turing Machines, Part I

CS 3719 (Theory of Computation and Algorithms) Lecture 4

6.080 / Great Ideas in Theoretical Computer Science Spring 2008

CSE 135: Introduction to Theory of Computation Decidability and Recognizability

CS154. Turing Machines. Turing Machine. Turing Machines versus DFAs FINITE STATE CONTROL AI N P U T INFINITE TAPE. read write move.

Circuit diagrams and symbols (1)

WRITING PROOFS. Christopher Heil Georgia Institute of Technology

Turing Machines: An Introduction

Notes on Complexity Theory Last updated: August, Lecture 1

NP-Completeness and Cook s Theorem

Solutions Q1, Q3, Q4.(a), Q5, Q6 to INTLOGS16 Test 1

Introduction to Turing Machines

24 Uses of Turing Machines

3515ICT Theory of Computation Turing Machines

Oracle Turing machines faced with the verification problem

Discrete Mathematics and Probability Theory Fall 2009 Satish Rao, David Tse Note 10

What Is Singapore Math?

KS3 Computing Group 1 Programme of Study hours per week

(IALC, Chapters 8 and 9) Introduction to Turing s life, Turing machines, universal machines, unsolvable problems.

PUSD High Frequency Word List

Primes in Sequences. Lee 1. By: Jae Young Lee. Project for MA 341 (Number Theory) Boston University Summer Term I 2009 Instructor: Kalin Kostadinov

6.080/6.089 GITCS Feb 12, Lecture 3

Lecture 2: Universality

Formal Languages and Automata Theory - Regular Expressions and Finite Automata -

Handout #1: Mathematical Reasoning

Kenken For Teachers. Tom Davis June 27, Abstract

Grade 7/8 Math Circles Sequences and Series

Public Key Cryptography: RSA and Lots of Number Theory

Computability Theory

Computation Beyond Turing Machines

Finding ASCII Codes for Special Fonts and Characters

RSA Encryption. Tom Davis October 10, 2003

MATH10040 Chapter 2: Prime and relatively prime numbers

Today s Topics... Intro to Computer Science (cont.) Python exercise. Reading Assignment. Ch 1: 1.5 (through 1.5.2) Lecture Notes CPSC 121 (Fall 2011)

14.1 Rent-or-buy problem

One natural response would be to cite evidence of past mornings, and give something like the following argument:

Instruction Set Design

Why Can t We All Just Get Along?

Background Biology and Biochemistry Notes A

Section 1.5 Exponents, Square Roots, and the Order of Operations

Lies My Calculator and Computer Told Me

Universal Turing Machine: A Model for all Computational Problems

Sudoku puzzles and how to solve them

CSE 373: Data Structure & Algorithms Lecture 25: Programming Languages. Nicki Dell Spring 2014

Answer: The relationship cannot be determined.

BBC Learning English Talk about English Business Language To Go Part 1 - Interviews

Cosmological Arguments for the Existence of God S. Clarke

Quick Tricks for Multiplication

Page 18. Using Software To Make More Money With Surveys. Visit us on the web at:

How To Proofread

Describe the process of parallelization as it relates to problem solving.

02-201: Programming for Scientists

Colour by Numbers Image Representation

Theory of Computation Chapter 2: Turing Machines

arrays C Programming Language - Arrays

COMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa

Software Engineering. Introduc)on

1 Description of The Simpletron

No Solution Equations Let s look at the following equation: 2 +3=2 +7

Clock Arithmetic and Modular Systems Clock Arithmetic The introduction to Chapter 4 described a mathematical system

TesT AuTomATion Best Practices

Reading 13 : Finite State Automata and Regular Expressions

5 Homogeneous systems

Decimal Notations for Fractions Number and Operations Fractions /4.NF

Mathematical goals. Starting points. Materials required. Time needed

The fundamental question in economics is 2. Consumer Preferences

Matrices 2. Solving Square Systems of Linear Equations; Inverse Matrices

CHAPTER 1 ENGINEERING PROBLEM SOLVING. Copyright 2013 Pearson Education, Inc.

ONLINE SAFETY TEACHER S GUIDE:

Ch. 11.2: Installment Buying

Session 6 Number Theory

Introduction to computer science

15 Prime and Composite Numbers

101 IELTS Speaking Part Two Topic cards about sports, hobbies and free time A- Z

Multiplication and Division with Rational Numbers

Analysis of Micromouse Maze Solving Algorithms

Could a Managed Services Agreement Save Your Company Tens of Thousands of Dollars Each Year?

Working with whole numbers

xxx Lesson Comprehend the writing process 2. Respond positively to the writing process

Discrete Mathematics and Probability Theory Fall 2009 Satish Rao, David Tse Note 2

Unit 2 Module 3: Generating Examples and Nonexamples

Teachers should read through the following activity ideas and make their own risk assessment for them before proceeding with them in the classroom.

Getting to Know God: Who God Is Week 7: God Is Unchanging LEADER PREPARATION

8 Square matrices continued: Determinants

Unit 4 i5/os Work Management

Life Insurance Buyer's Guide

High School Algebra Reasoning with Equations and Inequalities Solve systems of equations.

Session 7 Fractions and Decimals

Risk, Return and Market Efficiency

Diagrammatic Reasoning Practice Test 1

8 Divisibility and prime numbers

This explains why the mixed number equivalent to 7/3 is 2 + 1/3, also written 2

GOD S BIG STORY Week 1: Creation God Saw That It Was Good 1. LEADER PREPARATION

Interview with David Bouthiette [at AMHI 3 times] September 4, Interviewer: Karen Evans

Transcription:

Turing Machines, usy eavers, and ig Questions about Computing My Research Group Computer Security: computing in the presence of adversaries Last summer student projects: Privacy in Social Networks (drienne Felt) Thwarting Spyware (Meghan Knoll) iding Keys in Software (Carly Simpson) David Evans http://www.cs.virginia.edu/evans Computer Science = Toaster Science = Doing Cool Stuff with Computers? Doing Cool Stuff with Toasters? 3 4 Most Science is bout Information Processes Computer Science Mathematics is about declarative ( what is ) knowledge; Computer Science is about imperative ( how to ) knowledge The Study of Information Processes Which came first, the chicken or the egg? Language ow to describe them ow to predict their properties Logic ow to implement them quickly, cheaply, and reliably Engineering 2 5 ow can a (relatively) simple, single cell turn into a chicken? 6 1

Understanding Information Processes rt: ow to describe information processes Designing programming languages Inventing algorithms Science: Predicting properties What resources will a computation consume? Will a program produce the correct output? Engineering: Implementing processes ow to build hardware and software to efficiently carry out information processes Computers before WWII 7 8 Mechanical Computing Modeling Pencil and Paper...... # C S S 7 2 3 ow long should the tape be? Computing is normally done by writing certain symbols on paper. We may suppose this paper is divided into squares like a child s arithmetic book. lan Turing, On computable numbers, with an application to the Entscheidungsproblem, 1936 9 10 Modeling rains Rules for steps Remember a little For the present I shall only say that the justification lies in the fact that the human memory is necessarily limited. lan Turing Turing s Model...... 0 0 0 0 0 0 0 0 Move: 0 0 0 0 0 0 0 0 0 Move: alt 11 12 2

What makes a good model? Ptolomy Copernicus F = GM 1 M 2 / R 2 Newton Questions about Turing s Model ow well does it match real computers? Can it do everything they can do? Can they do everything it can do? Does it help us understand and reason about computing? 13 14 Power of Turing Machine Universal Machine Can it add? Can it carry out any computation? Can it solve any problem? Description Result tape of a of Turing running Machine M on MInput Input Universal Machine Universal Turing Machine can simulate any Turing Machine running on any Input! 15 16 Church-Turing Thesis ll mechanical computers are equally powerful* *Except for practical limits like memory size, time, energy, etc. There exists a Turing machine that can simulate any mechanical computer ny computer that is powerful enough to simulate a Turing machine, can simulate any mechanical computer Manchester Illuminated Universal Turing Machine, #9 from http://www.verostko.com/manchester/manchester.html 17 18 3

What This Means Recap Your cell phone, watch, ipod, etc. has a processor powerful enough to simulate a Turing machine Turing machine can simulate the world s most powerful supercomputer Thus, your cell phone can simulate the world s most powerful supercomputer (it ll just take a lot longer and will run out of memory) computer is something that can carry out well-defined steps ll computers are equally powerful If a machine can simulate any step of another machine, it can simulate the other machine (except for physical limits) What matters is the program that defines the steps 19 20 The usy eaver Game re there problems computers can t solve? Design a Turing Machine that: Uses two symbols (e.g., 0 and 1 ) s with a tape of all 0 s Eventually halts (can t run forever) as N states Goal is to run for as many steps as possible (before halting) Tibor Radó, 1962 21 22 usy eaver: N = 1... 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...... 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0... Move: Move: alt Move: alt (1) = 1 Most steps a 1-state machine that halts can make (2) = 6 23 24 4

0/1/R 1/0/L 1/0/R 1/0/L D E C 0/1/L 1/1/R F 1/1/R 0/0/L 1/1/ 0/1/L 6-state machine found by untrock and Marxen, 2001 0/1/R 1/0/L 1/0/L D 1/0/R 0/0/L 0/1/L E C 1/1/R F 0/1/L 1/1/R 1/1/ (1730 digits) est found before 2001, only 925 digits! 30023277165235628289551030183413401851477543372467525003 73381801735214240760383265881912082978202876698984017860 71345848280422383492822716051848585583668153797251438618 56173020941548768557007853865875730485748722204003076984 40450988713670876150791383110343531646410779192098908371 64477363289374225531955126023251172259034570155087303683 65463087415599082251612993842583069137860727367070819016 05255340770400392265930739979231701547753586298504217125 13378527086223112680677973751790032937578520017666792246 83990885592036293376774476087012844688345547780631649160 18557844268607690279445427980061526931674528213366899174 60886106486574189015401194034857577718253065541632656334 31424232559248670011850671658130342327174896542616040979 71730737166888272814359046394456059281752540483211093060 02474658968108793381912381812336227992839930833085933478 85317657470277606285828915656839229596358626365413938385 67647280513949655544096884565781227432963199608083680945 36421039149584946758006509160985701328997026301708760235 50023959811941059214262166961455282724442921741646549436 38916971139653168926606117092900485806775661787157523545 94049016719278069832866522332923541370293059667996001319 37669855168384885147462515209456711061545198683989449088 56870822449787745514532043585886615939797639351028965232 95803940023673203101744986550732496850436999753711343067 32867615814626929272337566201561282692410545484965841096 15740312114406110889753498991567148886819523660180862466 87712098553077054825367434062671756760070388922117434932 63344477313878371402373589871279027828837719826038006510 50757929252394534506229992082975795848934488862781276290 44163292251815410053522246084552761513383934623129083266 949377380950466643121689746511996847681275076313206 25 26 usy eaver Numbers (1) = 1 (2) = 6 (3) = 21 (4) = 107 (5) = Unknown! The best found so far is 47,176,870 (6) > 10 1730 Finding (5) Why not just try all 5-state Turing Machines? Transitions from on 0: 5 possible states + alt * 2 possible write symbols * 2 possible directions (L, R) = 24 possibilities * 24 transitions from on 1 5 states: (24 2 ) 5 ~ 6.3 * 10 13 27 28 The alting Example Input: a description of a Turing Machine Output: 1 if it eventually halts, 0 if it never halts. Is it possible to design a Turing Machine that solves the alting? Note: the solver must always finish! 0/0/L 1/1/ alting 0 (it never halts) 29 30 5

Example Impossibility Proof! alting */1/R Y alting 1/1/L X 0/0/ alting 31 32 Impossible to make alting If it outputs 0 on the input, the input machine would halt (so 0 cannot be correct) If it outputs 1 on the input, the input machine never halts (so 1 cannot be correct) If it halts, it doesn t halt! If it doesn t halt, it halts! usy eaver Numbers Input: N (number of states) Output: (N) The maximum number of steps a Turing Machine with N states can take before halting Is it possible to design a Turing Machine that solves the usy eaver? 33 34 Summary Challenges Computer Science is the study of information processes: all about problem solving lmost all science today depends on computing ll computers are deeply equivalent Some things cannot be computed by any machine Specify a number bigger than (11111111111111111) on an index card Find a TM with 6 states that halts after more than 10 1730 steps 35 36 6

Computer Science at UVa New Interdisciplinary Major in Computer Science for &S students Take CS150 this Spring Every scientist needs to understand computing, not just as a tool but as a way of thinking Lots of opportunities to get involved in research groups Questions http://www.cs.virginia.edu/evans evans@cs.virginia.edu 37 38 7