Charles Yuan arrived in Madison for the first time just after a blizzard. He recently completed his PhD at MIT in Cambridge, MA, so winter is something he already understands, but he noted that people in Madison went about their regular day despite the inches of snow left by the blizzard. Yuan comes to UW-Madison to research and teach about quantum computing and programming languages and wants his students to learn to combine “the mathematical principles of what makes computation easy or hard with hands-on experience to push the technology to its limits.”
Hometown:
Pittsburgh, PA
Educational/professional background:
Massachusetts Institute of Technology, PhD; Carnegie Mellon University, BS
What are your areas of focus?
Programming languages and quantum computing
What main issue do you address or problem do you seek to solve in your work?
I study how to program a quantum computer to practically realize quantum algorithms.
Quantum computers promise incredible speedups for tasks such as simulation, search, and optimization. However, achieving this speedup in practice forces us to fundamentally rethink the abstractions, such as data structures and control flow, that we use to write algorithms as programs. My research thus builds a new software stack of languages, libraries, and compilers to manipulate and reason about quantum information.
How did you get into your field of research?
I’ve always been interested in how we can productively use emerging computer systems. This interest led me to do research in programming languages – the study of what makes computer programs correct, efficient, secure, and adaptable – and apply these principles to new technologies such as quantum computers that we are only beginning to understand.
Please describe your work for people without a background in computer science:
You may have noticed the soaring public and media interest in quantum computers in recent days. Since the nineties, theorists have known that a quantum computer can solve problems in mathematical optimization, physical simulation, and secure communication that are fundamentally out of the reach of any computer today. In the last two years, industrial labs including those at Google, IBM, and Microsoft have reached critical milestones in building a hardware quantum computer that is large and reliable enough to support these applications.
But building the quantum computer is only one challenge. The other is programming it — turning an abstract algorithm that offers a quantum computational speedup into a concrete piece of software that delivers this speedup in practice. Here, programmers will need new languages and tools – quantum analogues of C++ and Python – to correctly work with the phenomena such as superposition, entanglement, and interference that underlie quantum computers.
My research uses the mathematical theories of quantum mechanics and programming languages to reveal how difficult this task is — how programming a quantum computer like a classical computer can negate its ability to solve problems faster than a classical computer. My research also builds the solution — new programming principles, languages, and tools that enable us to correctly implement quantum algorithms on emerging hardware.
Quantum computers can solve certain problems vastly more efficiently than classical computers. For example, they can simulate the binding of a protein and a drug molecule, enabling us to discover new medicines more quickly and reliably. They can optimize networks under constraints, which could lead to faster airline routes and package deliveries. Finally, they can transmit information in physically secure ways, which keep online communication private against powerful adversaries.
What’s one thing you hope students who take a class with you will come away with?
The nature of programming and computing is shifting fast under our feet. It will be more important than ever in coming years to understand how we can practically realize the claimed benefits of any emerging technology. And in these times of change, we can still set ourselves apart as computer scientists by combining the mathematical principles of what makes computation easy or hard with hands-on experience to push the technology to its limits.
Do you feel your work relates in any way to the Wisconsin Idea? If so, please describe how.
Today, the public is feeling uneasy about the role of computers in society, and rightfully in terms of the impact of automation in the workplace and in daily life. As a computer scientist, I work to identify both the value and the costs of the future of computation. We all benefit from knowing how truthful and timely our predictions are about the power of emerging technology. And we all benefit from the next generation being able to productively and responsibly harness this future.
What attracted you to UW-Madison?
Madison, the city, brings great students and colleagues from all around the world.
What was your first visit to campus like?
I landed just after a blizzard and just before the snowplows had time to clear the streets. I remember seeing everyone walk and drive right through several inches of snow and thinking, “this must be just an average day here.” Later, I learned that the day’s snow had caught many locals by surprise.
What are you looking forward to doing or experiencing in Madison?
I’m looking forward to trying out water activities on the lakes for the first time and to seeing Wisconsin’s Bluff Country.
Hobbies/other interests:
Biking, hiking