Course Introduction
1 Today’s Information
1.1 Learning Goals for Today
- Build curiosity for quantum computers and what they can do
- Develop ideas for productive group problem solving
- Familiarity with course structure
1.2 Announcements/Logistics
- Office Hours this week only: T/Th 12:30-1:30, 3:30-4:00
- Upcoming Assignments:
- Getting to know you quiz (due today)
- PSet Rough Draft (due Sunday)
- Exit Ticket (due by 8am before next class)
- Course Assistant drop-in hours TBD
- “What I Did Over the Summer”
2 What do you know about quantum computers? What will you know about quantum computers?
2.1 Testing your current understanding:
Which can solve more problems?
- A regular (classical) computer with \(n\) bits and \(T\) time steps/cycles.
- A quantum computer with \(n\) (qu)bits and \(T\) time steps/cycles?
- Each of these computers can solve problems that the other can not.
- A regular (classical) computer with \(n\) bits and \(T\) time steps/cycles.
There are problems a quantum computer can solve that no classical computers can solve.
- True
- False
- Unknown
Quantum computers can solve NP-Hard problems, like the traveling salesperson problem.
- True
- False
- Unknown
There are problems for which there is an exponential asymptotic time advantage for a quantum computer over a classical computer.
- True
- False
- Unknown
2.2 What we will learn in this class:
- Use standard terminology and mathematical tools of quantum computing to effectively describe and analyze quantum algorithms and protocols for cryptography, game-playing, disturbance-free detection, factoring, searching, and error correction.
- Describe properties of quantum mechanics (like entanglement, measurement, no-cloning, superposition, negative and complex phases), and build intuition as to why these properties lead to advantages over standard computation in computing and information tasks.
- Appreciate the limits of quantum computation and recognize when hype is used to minimize those limitations.
- Develop strategies to become a better learner and collaborator
3 Learning and Collaborating
The first learning goal of the course has nothing to do with algorithms:
Develop strategies to become a better learner and collaborator.
3.1 Learning
Think of something you are good at. How did you get good at it? Did you ever make mistakes? What did you do when you made a mistake?
Because learning is a process, and mistakes are one of the best ways to learn, I give you lots of opportunities to make mistakes:
- Problem sets are graded on effort, not correctness
- Quizzes and exams have unlimited revisions and credit/no-credit grading
3.1.1 Group Work
We will do group problem solving in class almost every period. This will help you learn course content
- by trying to explain your thinking to others
- by asking questions
- by making mistakes
It will also help you to learn to be a better team member and to meet lots of other cool CS students! I will always provide the solution in class after you’ve had a chance to work on it in groups.
In groups we are going to brainstorm ways to manage challenges that arise in group work: - go/CS33groups