670 likes | 830 Views
15-299: Mathematical Foundations of Computer Science Ten Powerful Ideas and applications. Professor Bruce Maggs Carnegie Mellon University. I am a substitute teacher… for an entire semester. Professor Steven Rudich, who developed this course is spending a year on sabbatical at Berkeley.
E N D
15-299: Mathematical Foundations of Computer ScienceTen Powerful Ideasand applications Professor Bruce Maggs Carnegie Mellon University
I am a substitute teacher… for an entire semester. Professor Steven Rudich, who developed this course is spending a year on sabbatical at Berkeley.
A little bit about me… Grew up mainly in Urbana, Illinois, but also lived in Sofia, Bulgaria; Belgrade Yugoslavia; Bucharest, Romania; Honolulu, Hawaii; and Moscow, USSR. Began my university education at the University of Illinois, but transferred to M.I.T., where I received my bachelors, masters, and Ph.D. degrees in 1985, 1986, and 1989, respectively. Stayed at M.I.T. for a year as a postdoctoral associate, then spent 3.5 years at NEC Research Institute in Princeton, before coming to Carnegie Mellon. I’ve been here for 4 years.
Putting you on the spot. • Four guys want to cross a bridge in the dark of night. They have one flashlight and the bridge can hold only two people at once. Their walking speeds allow them to cross in 1, 2, 5, and 10 minutes, respectively. Is it possible for them to all cross in 17 minutes in such a way that no one walks in the dark?
That was a Microsoft interview question. • Why do you think that they ask such questions, as opposed to asking for a piece of code to do binary search?
The future belongs to the computer scientist who has: • A complete grasp of the fundamental problems and solutions of today • The ability to fearlessly formulate and solve the problems of tomorrow
Course Content • A survey of the fundamental theoretical ideas in Computer Science as they occur in a variety of important applications • Effective problem solving, learning, and communication techniques.
Please feel free to ask questions!
We will encounter many of the foundational ideas of computer science. Examples include . . . . .
Growth Rates Time Input Size
Recursion ? ?
We will study applications that showcase the big ideas of computer science.
Multiplication and Factoring p, q pq
Induction has many guises Master their interrelationship • Formal Arguments • Loop Invariants • Recursion • Algorithm Design • Recurrences
Exemplification:Try out a problem or solution on small examples.
Representation:Understand the relationship between different representations of the same information or idea 1 2 3
Modularity: Decompose a complex problem into simpler subproblems
Abstraction: Abstract away the inessential features of a problem =
Refinement:The best solution comes from a process of repeatedly refining and inventing alternative solutions
Build your toolbox of abstract structures and concepts. Know the capacities and limits of each tool.
= Similarity:A significant form of intellectual progress is to be able to classify and manipulate distinct objects with regard to a sense in which they are similar. 13 = 21 (modulo 2)
Please feel free to ask questions!
((( ))) Stationary Hand Wiggling Hand You have a question or comment of any nature You have something relevant to say to what is being spoken now
Martial Arts 101 • The novicemakes a hugemotion • The black belt makes a small motion • The master makes a tiny motion
Scanning the brains of master problem solvers • The better the problem solver, the less brain activity is evident. The real masters show almost no brain activity! Simple and to the point
Aside to college students • It is natural to think that you are really getting your money’s worth when the professor says very complicated things, but the real value is when the professor makes complex things simple. Value Simplicity
Aside to college students • A good martial arts student will attentively repeat each fundamental technique many times. In contrast, many college students tune out when a concept (e.g., depth first search) is taught more than once. The better students listen carefully in order to refine and develop their understanding. Repetition Is An Opportunity