This is the home page for Quantum Computing. Despite two course numbers, there is only one section, meeting TR 12:30-1:45PM in RMB 309. Undergraduate students should register for EE599-001. Graduate students should register for EE699-010. Here is the one-page poster overviewing the course.
Although many course materials will be posted here, the course Canvas site will be the primary place for course announcements. You are expected to use Canvas and materials linked here. The best way to schedule office meetings, physical or virtual, is via email with "QC" in the Subject line.
The course is designed as a hardware elective for CPE majors that is also very accessible to CS and EE majors. It covers programming of quantum systems and some fundamental quantum algorithms, but is taught from a computer engineering point of view: how hardware implementing operations on entangled superpostions is integrated into a usable computer system. The emphasis is on system design and operation, not the quantum phenomena themselves. Thus, the goal of the course is to provide students with a better understanding of what quantum computers can and cannot do, quantum gates and basic algorithms used, how quantum computing systems are architected as computational accelerators, and how quantum-inspired methods can be employed without using quantum phenomena.
The only prerequisites for this course are a basic understanding of digital logic, as conveyed by CPE282 or EE280, and familiarity with programming in some langauge (e.g., C/C++, Python, or Verilog). The particular programming environments used for simulations will be explained in the course. The course does not assume students have significant computer architecture background. For example, students who have earned engineering standing in CS, EE, or CPE are well qualified.
This is a new course in its first offering Spring 2026, so it is still under development. Content may even be adjusted somewhat during the Spring to better suit the particular mix of students in the class. The tentative course content is:
The main goals are that students will be able to:
Grading will be based on several homeworks/projects (total 50%) plus in-person midterm exam (20%) and final (30%). The projects will be using simulation tools that will be explained in the lectures throughout the course; currently, the most likely tools to use would be Verilog and Python+Qiskit. Students taking the course for graduate credit (including all registered for EE699-010) will have somewhat larger projects than undergrads.
Professor Hank Dietz would normally be in the
Davis Marksbury Building; see his home page for
complete contact info. Regular office hour times are listed
there. He has an "open-door" policy that whenever his door is
open and he's not busy with someone else, he's available -- and
yup, there really is a slow-update live camera in
his office so you can check. The best method to contact him
is to email hankd@engr.uky.edu using "QC" in the
subject line for anything related to this course. If
appropriate, individual Zoom meetings also can be scheduled via
email.
Professor Dietz is the James F. Hardymon Chair in Networking and
the Director of Undergraduate Studies for Computer Engineering.
He has been working and publishing in the quantum and
quantum-inspired computing field since 2017. Relative to quantum
computing, he likes to describe himself as "an A+ in the
computing aspects and a C- in the physics" -- the opposite
emphasis compared to most people in the field. Dietz has a long
history in parallel supercomputing, and his research group built
the world's first Linux PC cluster supercomputer in 1994.
Unfortunately, that technology has led to the proliferation of
huge supercomputers that consume embarrassing amounts of power.
Thus, his interest in quantum computing is primarily driven by a
desire to dramatically reduce power consumed per unit of
computation. Dietz has built several compilers targeting
quantum computers, as well as multiple quantum computation
simulators for them to target, and has been developing a new
quantum-inspired computing model called PBP (Parallel Bit Pattern)
computing.