Doctoral INPhINIT Fellowships Programme - Quantum for Software Engineering (Q4SE)
Type of Position: PhD Scholarship (Bolsa de Doutoramento)
Type of Contract: Research grant
Duration: 36 Months
Closed at: 2020-Feb-04
Prof.Rui Maranhão Abreu
email@example.com RESEARCH PROJECT/RESEARCH GROUP
Information and Decision Support Systems Group Website
POSITION DESCRIPTION -Research Project / Research Group Description:
It is well-known that Quantum Computing (QC) has the potential to solve complex problems efficiently in various domains and bring breakthroughs in science and technology. Nowadays, quantum applications span over algorithms addressing optimization problems, such as radiotherapy optimization, machine learning techniques, chemistry simulations, and modelling (eg., handling uncertainties when predicting events). The development of QC is also driven by the urgent need of solving ever-complex and large-scale problems, which current (super)computers cannot solve, and QC comes right on time to bring revolutionary computational power to handle such complexity.
Though QC hardware is still immature, as most of the existing QC systems can only handle a limited number of qubits and are affected by noise, this is the time for getting “quantum ready”. This means that industrial and academic research institutions can use this time to learn QC, devise new quantum algorithms, and build QC communities. Specifically, the Quantum for Software Engineering (Q4SE) project aims to establish the theoretical foundations of a QC infrastructure supporting all aspects of software engineering and enable the development of high-quality quantum applications that can assist developers throughout the entire development lifecycle.
We regard Q4SE’s domain as a new sub-field of software engineering that we expect to see growing in the next years, levering quantum languages and frameworks, such as Q# and Qiskit, Consequently, Q4SE will become highly relevant for the software engineering community in the years to come. Currently, there is still no one leading any efforts on Quantum Computing in the Programming Languages and Software Engineering communities.
-Job position description:
The ambition of this project is to develop radically new methods for automated program analysis of classical software applications. It is well known that program analysis is a prohibitive task. Dynamic program analysis of programs is not reliable since it is intrinsically affected by false negatives, in that issues in programs can be identified during testing only if the testing suite exploits them. Static program analysis is, from this point of view, a much more promising alternative because it has the potential of being sound; in other words, at least theoretically, static program analysis should be able to have no false negatives. The problem with static program analysis is that, since its findings are based on a mathematical model of each program under analysis, for such model to be sound it has to overapproximate the set of all the program states that the program can take at run time.
Such overapproximation inevitably leads to false positives. Today’s programs are very large and complex, and depend on additional metadata associated with them, such as deployment descriptors and configuration files. In order to build a sound mathematical model of such a large and complex program, a static analyser has to sacrifice precision, which means that the number of false positive quickly becomes very high—so much so that developers refuse to use static analyzers because of the time wasted in filtering out false positives. In order to reduce the number of false positives, numerous solutions have been proposed, but they all boil down to increasing the model’s precision, which in turn reduces the scalability of the analyser. The main goal of the Q4SE project will be to devise new QC algorithms for static analysis of classical programs, taking advantage of the computational power of quantum computers to resolve the well-known scalability/precision dichotomy
Rui Filipe Lima Maranhão de Abreu