Professor David Duke

Professor David Duke



I started my PhD working in  database design, extending the NIAM Object-Role Modelling technique to address database dynamics.

My PhD (KeyCentre for Software Technology, University of Queensland) set out the denotational semantics of the Object-Z specification language that I helped to develop as a bridge between formal methods and object oriented development

I have worked extensively on adapting formal methods for specifying interactive systems via abstractions called 'interactors', including ground breaking  work that links systems with modes of cognitive processing 'syndetic' modeling.

In computer graphics I'm interested in 'minimal graphics' inspired by differences in artistic traditions.In visualzation my work includes graph and technology for large-scale graph visualization, and

with Hamish Carr ground-breaking work on extracting and visualising multi-field topology of continuous data , including aplications in nuclear fission, oceanography.

I have substantia practical experience withThe Visualization Toolkit (VTK).

I have worked extensively in functional programming using Haskell to parallelise challenging computations in topological data analysis including work on.

One recent  PhD project examined profiling for optimized Haskel, resulting in improvements to the GHC code-base. Other Haskell work  includes:

- streaming implementation of iso-surfaces for vis(lazy polytypic grid project

- pure fuctional  solution to the IEE Vis 2008 contest. Haskell at TB scale

-multiple DSLs in vis

combinators for local search (with Richard Sennington)


Research interests

My work and research interests lie in multiple  areas:

(i)rigorous methods for software development, including formal specification, refinement, verification;

- Z, Object-Z

- their application to challenging problems: concurrency, parallelism

- software engineering

-  ur functional programming ep. Haskell

(ii) high performance graphics and visualization, esp fo large scale data:

- multi-field topology

- linking depiction to semantics

(iii) pure functional programming - applications in data  analysis

- profiling support

(iv) computer graphics New techniques for image synthesis, that draw on different artistics traditions, and exploit affect see e.g.'minimal graphics'



  • PhD computer science (UQ)
  • BSc Honours( 1st class) Computer Science

Professional memberships

  • ACM
  • IEEE and IEEE Computer Society
  • Fellow of the European Association for Computer Graphics

Student education

 My teaching expertise is extremely broad, I have previously taught: software engineering, introductory programming, systems programming,  networks,concurrency (theory and practice) algorithms and data structures, discrete models, computer graphics, networks,  operating systems, and scientific visualization. 

I served as Head of School from 2012 until 2017 when I was forced to step back due to illness. I am currently unable to accept phd students.

One of my initiatives wass the creation of new programmes in High Performance Graphics and Games Engineering to address a UK skills shortage in this area.

Research groups and institutes

  • Computational Science and Engineering