Download presentation
Presentation is loading. Please wait.
Published byRussell Martin Modified over 9 years ago
1
Computation
2
Binary Numbers http://faculty.mc3.edu/pvetere/Applets/APPLETS/NUMSYS/applet_frame.htm Decimal numbers Binary numbers
3
Representing Text Decide how many characters we need to represent. Determine the required number of bits. Ascii: 7 bits. Can encode 2 7 = 128 different symbols.
4
Ascii http://www.krisl.net/cgi-bin/ascbin.pl
5
Representing Text Four … 01000110 01101111 01110101 01110010
6
When We Need More Characters 简体字 What about things like:
7
When We Need More Characters Answer: Unicode: 32 bits. Over 4 million characters. http://www.unicode.org/charts/ 简体字 What about things like:
8
Digital Images
9
RGB The red channel
10
RGB The green channel
11
RGB Red GreenBlue
12
Representing Pictures
13
Representing Sounds
14
Representing Programs public static TreeMap create() throws IOException { Integer freq; String word; TreeMap result = new TreeMap (); JFileChooser c = new JFileChooser(); int retval = c.showOpenDialog(null); if (retval == JFileChooser.APPROVE_OPTION) { Scanner s = new Scanner( c.getSelectedFile()); while( s.hasNext() ) { word = s.next().toLowerCase(); freq = result.get(word); result.put(word, (freq == null ? 1 : freq + 1)); } return result; }
15
The Roots of Modern Technology 5 th c B.C. Aristotelian logic invented 1642 Pascal built an adding machine 1694 Leibnitz reckoning machine
16
The Roots, continued 1834 Charles Babbage’s Analytical Engine Ada writes of the engine, “The Analytical Engine has no pretensions whatever to originate anything. It can do whatever we know how to order it to perform.” The picture is of a model built in the late 1800s by Babbage’s son from Babbage’s drawings.
17
The Roots: Logic 1848 George Boole The Calculus of Logic chocolate nuts mint chocolate and nuts and mint
18
Boolean Logic PQ PPP QP QP QP QP QP QP Q True FalseTrue False TrueFalse True FalseTrueFalse TrueFalse True
19
Using Boolean Logic PQ PPP QP QP Q(P Q) Q P ((P Q) Q) True FalseTrue False TrueFalse TrueFalse True False TrueFalseTrue
20
How Big Are the Truth Tables? PQR True False TrueFalseTrue False True FalseTrueFalse True False
21
2n2n
22
Increased Power of Quantified Logic TaiShanHasTail SmokyHasTail PuffyHasTail ChumpyHasTail SnowflakeHasTail
23
Increased Power of Quantified Logic Panda(TaiShan). Bear(Smoky). x (Panda(x) Bear(x, Tail)). x (Bear(x) HasPart(x)). x (Bear(x) Animal(x)). x (Animal(x) Bear(x)). x (Animal(x) y (Mother-of(y, x))). x ((Animal(x) Dead(x)) Alive(x)).
24
Using Quantified Logic (FOL) We can represent what we know as a set of logical formulas and then manipulate them.
25
Using Quantified Logic Panda(TaiShan). Bear(Smoky). x (Panda(x) Bear(x, Tail)). x (Bear(x) HasPart(x, Tail)). x (Bear(x) Animal(x)). x (Animal(x) y (Mother-of(y, x))). x ((Animal(x) Dead(x)) Alive(x)).
26
Search
27
Breadth-First Search Is this a good idea?
28
Depth-First Search
29
Scalability Solving hard problems requires search in a large space. To play master-level chess requires searching about 8 ply deep. So about 35 8 or 2 10 12 nodes must be examined.
30
Growth Rates of Functions
31
Scalability To play one master-level game 2 10 12 nodes Seconds since Big Bang 3 10 17 Number of sequential games since Big Bang 150,000
32
The Advent of the Computer 1945 ENIAC The first electronic digital computer
33
1949 EDVAC The first stored program computer
34
Programs Are Just Strings (Bits) public static TreeMap create() throws IOException { Integer freq; String word; TreeMap result = new TreeMap (); JFileChooser c = new JFileChooser(); int retval = c.showOpenDialog(null); if (retval == JFileChooser.APPROVE_OPTION) { Scanner s = new Scanner( c.getSelectedFile()); while( s.hasNext() ) { word = s.next().toLowerCase(); freq = result.get(word); result.put(word, (freq == null ? 1 : freq + 1)); } return result; }
35
Moore’s Law http://www.intel.com/technology/mooreslaw/
36
How It Has Happened
37
How Much Computer Power Might It Take? http://www.frc.ri.cmu.edu/~hpm/book97/ch3/index.html
38
How Much Compute Power is There? From Hans Moravec, Robot Mere Machine to Transcendent Mind 1998.
39
Kurweil’s Vision http://www.pocket-lint.co.uk/news/news.phtml/12920/13944/Computers- match-humans-by-2030.phtml
40
Limits to What We Can Compute Are there fundamentally uncomputable things? Does God exist? What’s the best way to run a country? Does this puzzle have a solution?
41
Mathematics in the Early 20 th Century 1900 Hilbert’s program and the effort to formalize mathematics 1931 Kurt Gödel’s paper, On Formally Undecidable Propositions 1937 Alan Turing’s paper, On Computable Numbers with an application to the Entscheidungs problem
42
What Can We Do? 1.Can we make all true statements theorems? 2.Can we decide whether a statement is a theorem?
43
Gödel’s Incompleteness Theorem Kurt Gödel showed, in the proof of his Incompleteness Theorem [Gödel 1931], that the answer to question 1 is no. In particular, he showed that there exists no decidable axiomatization of Peano arithmetic that is both consistent and complete.
44
The Entscheidungsproblem Does there exist an algorithm to decide, given an arbitrary sentence w in first order logic, whether w is valid (i.e.,must be true)?
45
Turing Machines At each step, the machine must: ● choose its next state, ● write on the current square, and ● move left or right.
46
An Example
47
The Church-Turing Thesis Turing machines Lambda calculus Standard programming languages like Java Conway’s game of life DNA computing All formalisms powerful enough to describe everything we think of as a computational algorithm are equivalent.
48
The Game of Life Playing the game The rules: ● A dead cell with exactly three live neighbors becomes a live cell (birth). ● A live cell with two or three live neighbors stays alive (survival). ● In all other cases, a cell dies or remains dead (overcrowding or loneliness). A game halts iff it reaches some stable configuration.
49
Back to the Entscheidungsproblem 1.Given a Turing machine M, we can construct a logical formula F that is true iff M ever halts. 2.If there were a solution to the Entscheidungsproblem, then we could determine the truth of F and thus be able to decide whether M ever halts. 3.But there is no procedure for determining (in the general case) whether M halts. 4.So there is no solution to the Entscheidungsproblem. Theorem: The Entscheidungsproblem is unsolvable. Proof: (A variant of Turing’s proof)
50
The Halting Problem Turing machine, M input string, w Does M halt on w? Accept Reject
51
An Example of a Similar Question Does this program halt on all inputs? times3(x: positive integer) = While x 1 do: If x is even then x = x/2. Else x = 3x + 1. Let’s try it.
52
The Halting Problem Is Undecidable Proof: If it were decidable, then some TM M H would decide it. M H would implement the specification: halts( ) = If is a Turing machine description and M halts on input w then accept. Else reject.
53
Trouble Trouble(x: string) = if halts(x, x) then loop forever, else halt. What is Trouble( )? What is halts( )? ● If halts reports that Trouble( ) halts, Trouble ________. ● If halts reports that Trouble( ) does not halt, Trouble __________.
54
Another Undecidable Problem The Post Correspondence Problem
55
A PCP Instance With a Simple Solution iXY 1 baab 2 abbb 3 abaa 4 baaababa
56
A PCP Instance With a Simple Solution iXY 1 baab 2 abbb 3 abaa 4 baaababa Solution: 3, 4, 1
57
Another PCP Instance iXY 1 11011 2 010 3 001110
58
A PCP Instance With No Simple Solution iXY 1 11011 2 011011 3 1110
59
A PCP Instance With No Simple Solution iXY 1 11011 2 011011 3 1110 Shortest solution has length 252.
60
A Tiling Problem Given a finite set T of tiles of the form: Is it possible to tile an arbitrary surface in the plane?
61
A Set of Tiles That Cannot Tile the Plane
62
Is the Tiling Problem Decidable? Wang’s conjecture: If a given set of tiles can be used to tile an arbitrary surface, then it can always do so periodically. In other words, there must exist a finite area that can be tiled and then repeated infinitely often to cover any desired surface. But Wang’s conjecture is false.
63
The Implications The Entscheidungs problem is undecidable. There’s no black box reasoning engine for FOL. Would quantum computing change the picture? Does undecidability doom our attempt to make artificial copies of ourselves?
64
Is Decidability Enough?
65
Boolean Logic, Again PQ PPP QP QP Q(P Q) Q P ((P Q) Q) True FalseTrue False TrueFalse TrueFalse True False TrueFalseTrue How many steps would it take a deterministic Turing machine to examine this table?
66
Nondeterminism P is True P is False Q is True Q is False
67
Nondeterministically Deciding SAT PQ PPP QP QP Q(P Q) Q P ((P Q) Q) True FalseTrue False TrueFalse TrueFalse True False TrueFalseTrue How many steps in a single path of the process of examining this table?
68
P and NP P – problems that are solvable deterministically in polynomial time. NP – problems that are solvable nondeterministically in polynomial time.
69
The Traveling Salesman Problem Given n cities and the distances between each pair of them, find the shortest tour that returns to its starting point and visits each other city exactly once along the way. 15 20 25 8 9 23 40 10 4 7 3 28
70
The Traveling Salesman Problem 15 20 25 8 9 23 40 10 4 7 3 28 Given n cities: Choose a first cityn Choose a secondn-1 Choose a thirdn-2 … n!
71
The Traveling Salesman Problem Can we do better than n! ● First city doesn’t matter. ● Order doesn’t matter. So we get (n-1!)/2.
72
The Growth Rate of n! 2211479001600 36126227020800 4241387178291200 5120141307674368000 67201520922789888000 7504016355687428096000 840320176402373705728000 936288018121645100408832000 103628800192432902008176640000 113991680036 3.6 10 41
73
The Traveling Salesman Problem
74
Solving it Nondeterministically 15 20 25 8 9 23 40 10 4 7 3 28 First, we change the problem slightly. New problem: Given a value n, is there a tour of length less than n?
75
SAT and Traveling Salesman DND SAT2n2n n Traveling Salesmann!n!n
76
Growth Rates of Functions, Again
77
P and NP P – problems that are solvable deterministically in polynomial time. NP – problems that are solvable nondeterministically in polynomial time. NP-complete – NP problems that are at least as hard as every other NP-complete problem.
78
Does Complexity Doom AI?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.