University of Leicester

computer science

Research in Semantics

Introduction

The broad aim of my research is to study and develop semantic models, principles and theories, which

  • increase our general understanding of the theory and fundamentals of programming and computation;
  • underpin and clarify our understanding of existing programming languages and systems, and can be used as a basis for analysis, specification, verification, and testing; and
  • may lead to the development of fundamentally new languages and systems.

I use mathematical tools, including domain theory and especially category theory, and work within specialised frameworks such as (structural) operational semantics, higher order abstract syntax, classical and constructive logics. A key feature of my work is the regular use of categorical logic and categorical type theory.

I am involved with programs and programming in a broad sense. I work with existing tools such as C++, Java, ML, Haskell (HUGS), Isabelle, HOL; and develop and study new systems of computation and programming within these meta-frameworks.

My work also consists of analysing and understanding programming paradigms and methods, such as higher order typed programming, object-oriented programming, and tactical theorem proving.

This work has been supported over the years by APPSEM, the ESPRIT CLICS project, the EPSRC, the LMS, and the SERC.

For specific details of some of my more recent research work, please see the links below.

Research Themes

Programming language semantics research makes use of techniques from mathematical logic, category theory and type theory to develop the foundations of programming languages with a long term goal of producing new and better programming languages and environments. I am interested in axiomatic, operational, categorical and denotational semantics. One creates mathematical models and methods which inform language design and assist with the development of logical systems for specifying and reasoning about program properties. More specifically this research

  • aims to increase our general understanding of the theory and fundamentals of programming and computation;
  • aims to underpin and clarify our understanding of existing programming languages and systems, and can be used as a basis for analysis, specification, verification, and testing; and
  • can lead to the development of fundamentally new languages and systems.

  1. Mathematical Models of Variable Binding: In the last decade we have advanced our understanding of the formal notion of variable binding considerably. Presheaf categories have been shown to provide models of standard languages with variable binding, such as (variants of) the lambda calculus, as initial algebras. This is a considerable advancement over older models in which expressions with binders could only be realised as alpha-equivalence classes of elements of initial algebras. The important gain here is the initial algebra gives rise to a clear principle of structural induction. My own work has developed particular kinds of presheaf category models, and a PhD thesis could be based upon the further development of these models and the associated reasoning principles.
  2. Computer Systems for Reasoning About Binding: The Hybrid system was developed in Isabelle HOL. It is a metalogic which can be used to reason about languages with binding. One translates the object language into Hybrid, and then uses Hybrid's reasoning principles (such as induction and coinduction) to prove properties of the language. There are a variety of research avenues to explore, ranging from applications of Hybrid which could involve the testing of Hybrid and its comparison with other systems of reasoning with binders, to the further development of the Hybrid system itself.
| [University Home]|[Faculty of Science]|[MCS Home]|[CS Home]||[University Index A-Z]|[University Search]|[University Help]|

Author: Roy Crole (R.Crole@mcs.le.ac.uk), T: +44 (0)116 252 3404 .
© University of Leicester April 2006. Last modified: 18th June 2008, 23:41:35.
CS Web Maintainer. This document has been approved by the Head of Department.