school of computing 1 course overview changing perspectives across the course ganesh gopalakrishnan...
TRANSCRIPT
![Page 1: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/1.jpg)
School of Computing 1
Course OverviewChanging Perspectives across the
course
Ganesh Gopalakrishnan
CS 3100, Fall 2010
School of Computing
University of Utah
![Page 2: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/2.jpg)
School of Computing 2
CS 3100 Learning Objectives
Reinforce discrete math
Understand state machines
You will use these ideas in writing formal documentation for yoursoftware / hardware designs in the field
Example : UML state diagrams for vending machines
Example : The structure of inputs taken by a tool you design
![Page 3: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/3.jpg)
School of Computing 3
CS 3100 Learning Objectives
Understand more complex computational structures
Example : what happens if we have one stack
Understand how Machines and Textual representations can denoteLanguages
Example : RE and NFA / DFA
Understand when non-determinism becomes ESSENTIALExample :
THERE IS NO DPDA FOR { W W^R | W in sigma* }There is no deterministic parsing scheme for
this language
![Page 4: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/4.jpg)
School of Computing 4
Largely, things were about patterns
|| ||| || ||| || ||| || ….
We studied that sometimes delicately specified patterns disappearwhen blended with “white noise”
Example : { (^j )^j | j >= 0 } has CONTEXT-FREE patterns
This pattern is destroyed if you UNION this language with
(* )*
OR Worse still, { ( , ) } ^ *
Much like Mozart can be drowned by Cacophony !
![Page 5: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/5.jpg)
School of Computing 5
How far can we carry these “tricks” forward ?Can we define the notion of THE MOST POWERFUL COMPUTER ON EARTH?
(According to who? To Baby Huey? To Clifford? … Fred Flintston? )
Can we define the ULTIMATE COMPUTER?
No other computational approach can be more powerful?
That space / time / memory are arbitrary quantities?
What is “screaming fast” may not be so in 10 years?
Recall : in 1993, Pentium-2 clocked at a “screaming” 68 MHz
![Page 6: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/6.jpg)
School of Computing 6
On Computation
Ganesh Gopalakrishnan
CS 3100, Fall 2010
School of Computing
University of Utah
![Page 7: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/7.jpg)
School of Computing 7
Why Compute?
Tool usage is a measure of intelligence and power
Information processing tools have, historically, been widely sought
![Page 8: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/8.jpg)
School of Computing 8
Info. processing helped calculate artillery ranges!
![Page 9: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/9.jpg)
School of Computing 9
Early Info. Processing Tools were Clunky and Big! (e.g. Babbage’s Difference Engine, now rebuilt at the London Museum)
![Page 10: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/10.jpg)
School of Computing 10
With Advances in Electronics have come Faster Computing Devices!
![Page 11: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/11.jpg)
School of Computing 11
These Computers are now Everywhere!
![Page 12: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/12.jpg)
School of Computing 12
They will soon replace bar-codes on milk-cans!(RFID tags being experimented by Wal-mart).
(Photo courtesy of wikipedia.)
![Page 13: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/13.jpg)
School of Computing 13
Supercomputers have eliminated the need to do experiments by building scale models of airplanes, or mixing (dangerous) chemicals !
IBM BlueGene
Does 400 Trillion
multiplications per second !
(Photo courtesy of IBM.)
![Page 14: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/14.jpg)
School of Computing 14
Virtual Roll-out of Boeing 787 “Dreamliner”
Entire Airplane beingDesigned and Flown inside a Computer (Simulation Program).
The first plane to fly isthe real one (not a mockup model).
(Photo courtesy of Boeing.)
![Page 15: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/15.jpg)
School of Computing 15
Such supercomputers can now safely simulate explosions !
This simulation employed 600 processors for approximately 1 week in a sophisticated parallel application to simulate all of the fluid dynamics, thermodynamics, chemical reactions and structural mechanics of this system from fundamental laws of physics.
![Page 16: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/16.jpg)
School of Computing 16
* How do we understand various manifestations of computation in a unified manner?* How do we study the essential properties of computing devices?
We want approaches that allow us to separate the Essential from the Accidental
> Computers are changing in design details
> They were growing predictably fast for several decades
> Their I/O modalities keep changing (punched card, command line, point and click, gesture)
> Forgetting all these Accidental aspects, what Essential properties are true for ALL computing devices?
![Page 17: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/17.jpg)
School of Computing 17
* How do we understand various manifestations of computation in a unified manner?
* How do we study the essential properties of computing devices?
Answer : * build abstract machines devoid of “sundry details”Conundrum: * Several such formal models (abstract machines) have been proposed
Fundamental Result (“Church’s Thesis”): All these models are equivalent!
![Page 18: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/18.jpg)
School of Computing 18
Alonzo Church : 1903 - 1995
http://en.wikipedia.org/wiki/Alonzo_Church
![Page 19: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/19.jpg)
School of Computing 19
Alan Turing’s model (“Turing Machine”) was formulated in the 1930s [Turing, 1912 – tragically 1954]
![Page 20: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/20.jpg)
School of Computing 20
Gordon Brown’s Apology:
PM's apology to codebreaker Alan Turing: we were inhumane
• Enigma genius chemically castrated for being gay• Admission comes 55 years after Turing took his life
http://www.guardian.co.uk/world/2009/sep/11/pm-apology-to-alan-turing
![Page 21: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/21.jpg)
School of Computing 21
Interesting factoid: Church was Turing’s PhD advisor (well, Turing had done most of his work, then went to Princeton to “officially earn a PhD”)
![Page 22: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/22.jpg)
School of Computing 22
First, let us see the full taxonomy of computational devices
![Page 23: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/23.jpg)
School of Computing 23
Models of computation proposed by Church and Turing:
LambdaLambdaLambda…
Naw Naw NawJolly good advisor,It is TAPE, HEAD, Halt, Loop
![Page 24: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/24.jpg)
School of Computing 24
Universality of Lambda Calculus
S and K are universal !!
S = L x y z . x z (y z)
K = L x y . x
![Page 25: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/25.jpg)
School of Computing 25
Two-counter machines are universal
Two infinite-precision integer countersare enough to express ALL computations
![Page 26: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/26.jpg)
School of Computing 26
Two Stacks (plus finite control) are enough
![Page 27: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/27.jpg)
School of Computing 27
Two infinite stacks are like one infinite tape …
![Page 28: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/28.jpg)
School of Computing 28
A Single-Instruction RISC Computer
subleq a, b, c ; Mem[b] = Mem[b] - Mem[a] ; if (Mem[b] ≤ 0) goto c
http://en.wikipedia.org/wiki/One_instruction_set_computer
![Page 29: School of Computing 1 Course Overview Changing Perspectives across the course Ganesh Gopalakrishnan CS 3100, Fall 2010 School of Computing University of](https://reader036.vdocuments.mx/reader036/viewer/2022062409/56649ee45503460f94bf308c/html5/thumbnails/29.jpg)
School of Computing 29
All these are Turing Complete!
Church Complete,Darn It !!
Har Har Har !
Go Touring !! Take a walk !!