Olivia Di Matteo
About News Research People Positions Group conduct

Quantum software and algorithms research


The QSAR group works on designing and implementing the software that enables us to write and run algorithms on quantum computers. It was established in 2022 in the Department of Electrical and Computer Engineering at UBC, and is a part of Quantum BC.

QSAR group logo



Group members work on a broad array of research projects which typically fall into one of the following categories: quantum software and compilation, noise characterization and mitigation, and quantum algorithm development.

Software and compilation

Quantum compilation is the process of translating a high-level description of a quantum algorithm into a set of instructions that is executed on hardware. It's a process with many moving parts that typically involve solving computationally hard problems.

Areas of investigation include:

  • Developing automated compilation tools that scale into the 100s of qubits or more
  • Optimizing techniques for cutting and partitioning large quantum circuits
  • Exploring how machine learning and can help us select the best compilation techniques and devices for an algorithm
  • Leveraging differentiable quantum programming to learn how to compile quantum circuits, and do so in a way that preserves differentiability

Ultimately, we are interested in doing the "hard part" (such as the optimization process in the gif below), so that users of quantum software don't need to worry about what happens under the hood, and can focus instead on writing quantum algorithms.

Graphic of the quantum compilation stack.

Gif of optimizing a quantum circuit.

Noise characterization and mitigation

In order to improve the operation of our quantum computers, we need good tools to learn about and characterize their behaviour, and quantify how well they work. We are interested in:

Gif of optimizing to learn
	     overrotation angles.

Quantum algorithms

Differentiable quantum transforms being used in an error mitigation pipeline.

Compared to classical computing, there are relatively few known quantum algorithms, and even fewer that will one day achieve the substantial speedups needed to solve life-sized problems.

Our group works on both co-designing and implementing software that facilitates our reasoning about algorithms, and exploring how it can be used to develop new algorithms and applications.

Projects our members are working on include:

  • Developing qutrit and qudit simulation tools for the open-source framework PennyLane
  • Exploring the use of higher-level quantum systems like qutrits and qudits for variational algorithms
  • Applying quantum computing and quantum machine learning to problems in nuclear, particle, and condensed-matter physics
  • Development and implementation of new differentiable quantum transforms


Current members


For prospective graduate students

I am no longer accepting applications from prospective graduate students for a Fall 2023/Winter 2024 start.

For UBC undergraduate students

I am open to supervising undergraduate students. If you know how to program and are interested in exploring quantum computing for a co-op term, summer research project, honours thesis, or a directed studies course, please get in touch with your CV, link to a GitHub profile if you have one, and details about what topics you are most interested in.

Group code of conduct

All QSAR group members are expected to uphold the following codes of professional and scientific conduct. The text below is partially based on CoCs of the Tropini, Avasthi, and Willis labs.

The CoC was last updated on 2022-12-11. As a group, we will review and update it together on at least a yearly basis (in particular, following an influx of new members) so that everyone has the opportunity to contribute their ideas.

Professional conduct

Scientific conduct