big ideas in computing - siks keynote 2017.pdf · taming complexity 4. philosophy of computing. 1:...
TRANSCRIPT
Big Ideas in Computing
Frank van HarmelenDept. of “Computer Science”
VU Amsterdam
Creative Commons License: allowed to share & remix,but must attribute & non-commercial
Health Warning:
This is going to be a pretentious talk
Big Ideas in ComputingThe
Big Ideas in ComputingThe
Based on a course developed together with Hajo Reijers and Ellen Maassen
Why do we need a list of “The Big Ideas in Computing”?
The physicists do it!• Force, mass, acceleration [Newton]
• Conservation of energy [Kelvin]
• Increase of entropy [Clausius]
• Invariance of speed of light [Einstein]
• Quantized nature of time, space and mass [Planck]
• Uncertainty principle [Heisenberg]
Everybody else does it too!
“It is a common practice in science to articulate scientific fields as frameworks of fundamental principles. Robert Hazen and James Trefil have done this for the biological and life sciences, Richard Feynman for physics, andCarl Sagan for astronomy"‐‐ Peter Denning
The impact of such a list• It changes how PC’s and editorial boards think• It changes how you teach your courses• It changes how you train your PhD’s• It changes how you judge a PhD thesis• It changes how other fields perceive us• It changes how the general public perceive us
“The curse of applicability”“Een vakgebied kan zelfs zó nuttig zijn dat al dat nut ‘t naar de keel vliegt. Door hun toepassingen in een wurggreep gehouden, moeten deze onderzoekers moeite doen de alledaagse werkelijkheid flink van zich af te duwen om weer eens diep wetenschappelijk adem te kunnen halen.Een goed voorbeeld van zo'n 'vervloekt' vak is de informatica.”
Authorities on “Computer” Science"Computer science is no more about computers than astronomy is about telescopes”
‐‐ Edsger W. Dijkstra
“We have to think of computation as a principle and computers (only) as the tool”
“Computing is, and always has been, the science of information processes, natural and artificial "
‐‐ Peter Denning
"Professor Shih‐Fu Chang will receive a doctorate for his many groundbreaking contributions to our understanding of the digital universe“
‐‐ Arnold Smeulders
Have others tried this before?
Bill Rapaport’s page with a map of 45(!) years of debate
Have others tried this before?
six categories: communication, computation, coordination, recollection, evaluation, design
Computation is a sequence of representations
Virtual machines organize software as simulations of computing machines.
Abstraction, information hiding, and decomposition are complementary aspects of modularity.
Have others tried this before?
six categories: communication, computation, coordination, recollection, evaluation, design
“Finite representations of real processes always contain errors”
“Messages can be compressed”
“A network of servers is a common, efficient representation of computing systems”
Goals of the talk:1. Convince 2. Propose .
So what do you think are the Big Ideas in Computing?
Your list of “Big Ideas in Computing”
Four parts
1. The Science of Algorithms2. The Science of Data3. Taming Complexity4. Philosophy of Computing
1: The Science of Algorithms
• what is an algorithm• independence of language and machine modelexistence of universal languages
• programs as data, stored program computer, universal machines
• complexity of algorithms: runtime as function of input length
• tractable vs. intractable• computability vs. uncomputability
Existence of universal languages
Every program can be written using only sequence:
step1;step2and loop: while test do action
11
0
Every computer can be built using only one type of component:
NAND(A,B)= 0 iff A=B=1
JavaPythonC++PrologLisp….
• Tiling the plane• Determining wether a context‐free
grammar is ambiguous
• Finding the fastest machine code for higher level language code
• Finding primitives (anti‐derivative)• Writing an anti‐virusprogram that
never executes malicious instruction• Type checking for lambda‐calculus• Determining the Kolmogorov
complexity of a string• Hilbert’s 10th problem (Diophantine
equations)
Uncountably infinitely many problems cannot be computed !
“The police killed the man with a chainsaw”
2: The Science of Data
• Digitisation, encoding in bits• Complexity of data, Shanon information theory, compressibility
• error‐correcting codes• discovering patterns in data, machine learning
Everything can be encoded in bits
155 = v =118 =01110110
=00011000001111000111111011111111…..
= 255,153,31
How much information is there in data
vs
World Blue
Uncompressed 29453 29453
Compressed 1353 155
Sizes:
Information content =
error‐correcting through redundundancy
3: Taming complexity
• algorithmic abstraction: – information hiding, abstraction layers, virtual machines
– specification vs. implementation, program correctness
– modularity (cohesion & coupling), interfaces
– stepwise refinement– problem solving as divide and conquer, recursion– problem solving as state space search
algorithmic abstraction
– information hiding, abstraction layers– divide and conquer, recursion
problem
existing system
Generic problem solving as state‐space search
3: Taming complexity
• data abstraction – Archetypical data structures: tables, trees, graphs, arrays, hash, list, ..
– mutual encodings (e.g. from graph to table, from table to array)
– abstract datatypes
Datastructures and their reductions
Abstract data types
4: Philosophy of Computing• Thinking is computing• Everything is computing“A growing number of physicistsunderstand that the universe is not mathematical, but computational, and physics is in the business of finding an algorithm that can reproduce our observations.”
Joshua Bach (MIT, Harvard)“Biology is today an information science. The output of the system, the mechanics of life, are digitally encoded and read out by a series of reading heads.”
David Baltimore, CalTech, Nobel Prize Winner
“Economists consider the workings of economies as complex information processes that compute optima, and analyze economic systems for their inherent information flows”
“Nature is written in the language of computation, contrary to Galileo’s claim that it is written in mathematics
Steven Wolfram
Goals of the talk:1. Convince 2. Propose ?3. Tickle !.
Remember why this is important
• It changes how PC’s and editorial boards think• It changes how you teach your courses• It changes how you train your PhD’s• It changes how you judge a PhD thesis• It changes how other fields perceive us• It changes how the general public perceive uss