Academic Staff

The List of LFCS Academic Staff

Name and Research Interests

Julian Bradfield (Director of Institute)

  • Modal and temporal logics 
  • Model-checking, concurrency, independence logics, descriptive complexity and set theory
  • UML and modelling languages

Rik Sarkar (Deputy Director)

  • Datascience and Machine learning. Privacy, Fairness, Explainable ML. Optimisation algorithms.
  • Topological Data analysis. Topology in ML.
  • Network Analysis and graph machine learning.
  • AI for Biomedical Engineering -- diagnostics, interpretability, molecule design.
  • Robotics: interpretable methods, analytics.

Stuart Anderson

  • Design and analysis of dependable systems
  • Formal proof in systems  development

Myrto Arapinis

  • Verification of cryptographic protocols: verification of security properties, detection of attacks, formal models, protocol composition
  • Privacy in mobile telephony, electronic voting, statistical databases

David Aspinall

  • Computer security (particularly proof-carrying code)
  • Type systems for specification and programming languages 
  • Proof development environments

Peter Buneman 

  • Databases: data models, query languages, semistructured data, data provenance, databases and programming languages
  • Programming languages: functional programming and type systems 
  • Bioinformatics and scientific databases
  • Mathematical phylogeny

Yang Cao

  • Database systems

  • Transaction processing

  • Data-driven query optimization

  • Graph computations

  • Data quality

James Cheney

  • Programming languages
  • Logic
  • Scientific databases
  • Provenance
  • Verification

Mary Cryan

  • Randomized algorithms, especially algorithms for sampling and counting
  • Learning theory
  • Algorithms for computational biology

Vincent Danos

  • Foundational approaches to quantitative biology 
  • Syntaxes for representing, modelling, and understanding large protein networks
  • Concurrent and stochastic systems

Tariq Elahi

  • Analysis and design of privacy enhancing
  • Secure networks and communications
  • Privacy for the Internet of Things (IoT)

Kousha Etessami 

In general, theoretical computer science.  More specifically: 

  • Automated verification, logic, algorithms and computational complexity theory, algorithmic game theory, equilibrium computation, analysis of probabilistic systems, Markov decision processes, stochastic games, automata theory, model checking, analysis of infinite-state systems, finite model theory and descriptive complexity.

Wenfei Fan

  • Database theory and systems: big data, data integration, data quality, query languages, database security, XML, distributed query processing, integrity constraints, and applications
  • Web data management: computation, social networks, integrity constraits
  • Logic and computation

Aris Filos-Ratsikas

  • Algorithms and complexity for economic environments
  • Game theory and mechanism design
  • Computational social choice theory
  • Computational fair division
  • Competitive markets
  • Machine learning for games and markets

Michael Fourman - Emeritus

  • Formal models of digital systems
  • System-design tools
  • Proof assistants
  • Categorical semantics
  • Propositional planning

Raul Garcia-Patron Sanchez 

  • Quantum computation with near-term quantum devices
  • Quantum simulation

  • Classical algorithms to simulate noisy quantum devices
  • Quantum information theory

Stephen Gilmore

  • Formal methods of program development
  • Formal specifications
  • Software engineering
  • Concurrent systems

Rob van Glabbeek

  • Comparative Concurrency Semantics
  • Mathematical models and formal languages for the representation of distributed systems and the verification of statements about them
  • Foundational work investigating the possibilities of such models and languages

Andrew D. Gordon

  • Computer security
  • Programming languages and their semantics and logics
  • Probabilistic programming for machine learning

Paulo Guagliardo

  • Database theory and systems
  • Semantics of query languages
  • Logic in computer science

Heng Guo

  • Computational complexity classifications
  • Rapid  mixing of random cluster dynamics
  • Uniform sampling and the Lovász Local Lemma

Chris Heunen 

  • Quantum programming languages
  • Category theory
  • Quantum logic
  • Foundations of quantum theory
  • Quantum computing

Jane Hillston (Head of School of Informatics)

  • Quantitative formal modelling
  • Markov processes and performance modelling
  • Fluid approximation techniques
  • Collective adaptive systems

Paul Jackson

  • Formal verification (e.g. of cyber-physical systems and cache-coherence >> protocols) 
  • Automated techniques for hybrid systems verification
  • Interactive theorem proving Formalised mathematics

Ohad Kammar

  • Programming language theory
  • Category theory and logic in computer science

Kyriakos Kalorkoti

  • Computational complexity 
  • Computer algebra
  • Decision problems in group theory

Elham Kashefi

  • Verification of Quantum Technology
  • Quantum Interactive Proof Systems
  • Delegated Quantum Computing
  • Experimental Implementation of Quantum Protocols
  • Foundation of Quantum Mechanics
  • Quantum Parallel Computing
  • New Models for Quantum Computing

Aggelos Kiayias

Cryptography and Computer Security with particular emphasis on:

  • Blockchain based protocols including cryptocurrencies, bitcoin etc

  • E-voting systems, design, implementation, analysis

  • Cryptography for digital content distribution. Privacy-preserving cryptographic protocols.

Markulf Kohlweiss

  • Verification of crytographic implementations

  • Crytographic currencies and zero-knowledge proof systems

  • Privacy and anti-surveillance

  • Ethics in crypography

Leonid Libkin

  • Databases
  • Applications of logic in computer science

John Longley

  • Higher type computability
  • Semantics of programming languages 
  • Program verification

Richard Mayr

  • Automated verification
  • Automata and temporal logic
  • Model-checking and semantic equivalence checking
  • Formal verification of real-time and probabilistic systems
  • Infinite-state Markov chains
  • Stochastic games

Milos Nikolic

  • Database Management Systems
  • In-database learning
  • Stream processing
  • Large-scale data analytics

Andreas Pieris

  • Database Theory
  • Knowledge Representation and Reasoning
  • Logic in Computer Science

Gordon Plotkin

Applications of logic, especially: 

  • The denotational and operational semantics of programming languages 
  • Type-theory
  • Domain-theoretic and categorical analyses of computation
  • General proof theory
  • The semantics of natural language
  • Process calculi and computational biology

Elizabeth Polgreen

  • Program synthesis (algorithms, and applications of)
  • Automated verification including model checking

Ajitha Rajan

Software engineering with particular focus on:

  • Software Testing (test generation, coverage metrics, test oracles, regression testing)
  • Analysis of concurrent programs including CUDA/OpenCL programs 
  • Software complexity metrics and their applications
  • Cost models for testing and maintenance

Donald Sannella

  • Algebraic specification and formal software development
  • Correctness of modular systems
  • Types and functional programming
  • Resource certification for mobile code

Alan Smaill

  • Constructive logics and non-realist semantics
  • Reflection principles and their application within automated reasoning systems
  • Theorem proving in relation to programming

Ian Stark

  • Semantics of computation,
  • Functional programming
  • Concurrency
  • Category theory
  • Domain theory

Perdita Stevens

  • Mathematics and software engineering

Colin Stirling

  • Models of concurrent computation 
  • Modal and temporal logics
  • Verification of program properties

Kami Vaniea

  • Security
  • Human Computer Interaction
  • Usable Privacy and Security

Vesselin Velichkov

  • PGT Admissions Officer of Cyber Security, Privacy and Trust
  • Personal Tutor of Informatics UG Students
  • Project supervision of Honours Project
  • Project supervision of MSC Dissertation

Stratis Viglas

  • Database systems
  • Query optimisation
  • Data stream processing
  • Database theory
  • XML 
  • Peer-to-peer networks 

Philip Wadler

  • Programming languages
  • Functional programming
  • Lambda calculus
  • Propositions-as-types
  • Integrating static and dynamic typing
  • Integrating queries into programming languages
  • Session types and linear logic
  • Web programming
  • Haskell, Erlang, F#, Java, Links, LINQ, Scala, XML, XQuery

Petros Wallden

  • Quantum Computing
  • Quantum Cryptography
  • Quantum Information Theory
  • Foundations of Quantum Mechanics 

Vassilis Zikas

  • Cryptography
  • Computer Security
  • Game Theory
  • Distributed Computing
  • Cryptocurrencies
  • Blockchain Technolgies