Jingnan Xie

Research Topics

Computational Complexity

Computational complexity theory focuses on classifying computational problems as 'easy' or 'hard' according to their resource usage. One of the roles of computational complexity theory is to determine the practical limits on what computers (and human beings) can and cannot do. For example, you may learn an undecidable problem named the Halting Problem in CMSC340. This means, no matter how smart a person is, one cannot find an algorithm to solve the Halting Problem.

Automata & Formal Languages

Formal languages provide the theoretical underpinnings for the study of programming languages as well as the foundations for compiler design. They are important in such areas as the study of biological systems, data transmission and compression, computer networks, etc. In computational complexity theory, decision problems are typically defined as formal languages and complexity classes are defined as the sets of formal languages. In logic and foundations of mathematics, formal languages are used to represent the syntax of axiomatic systems.

Computable Analysis

In mathematics and computer science, computable analysis is the study of mathematical analysis from the perspective of computability theory. It was motivated by questions such as: which real numbers and real number functions are computable, and which mathematical tasks in analysis can be solved by algorithmic means? It is concerned with the parts of real analysis and functional analysis that can be carried out in a computable manner.

Quantum Computing

Quantum computing encompasses a broad study of computation grounded in quantum mechanics, including key phenomena such as superposition and entanglement. In this area, we focus on quantum computational models such as quantum finite automata, which illustrate how quantum behavior influences language recognition and the use of computational resources. These models clarify distinctions between classical and quantum approaches in complexity theory and support applications in secure communication, physical system simulation, and emerging computational architectures.

Artificial Intelligence

Artificial intelligence (AI) studies the development of computer systems capable of performing tasks that typically require human intelligence, such as learning, reasoning, perception, decision making, and language understanding. Modern AI encompasses machine learning, deep learning, large language models, and intelligent multi-agent systems. In this area, we investigate AI techniques for applications including medical image analysis, software engineering, and time series forecasting, with an emphasis on trustworthy, collaborative, and hybrid AI systems.

Cybersecurity

Cybersecurity focuses on protecting computer systems, software, and digital information from attacks, vulnerabilities, and unauthorized access. It encompasses secure software development, formal verification, automated software analysis, and vulnerability assessment. In this area, we investigate theoretical foundations for software correctness and security through formal methods and computational models, while also exploring the application of artificial intelligence to software analysis and vulnerability detection.

Selected Publications