Professor David Duke
- Position: Professor of Computer Science
- Areas of expertise: formal method mathematics for program construction, Z, Object-Z, refinement, databases programming languages computer graphics; functional programming; Haskell,
- Email: D.J.Duke@leeds.ac.uk
- Phone: +44(0)113 343 6800
- Location: 6.24 E C Stoner Building
- Website: My home page | LinkedIn | GoogleScholar | ResearchGate
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. The history model that I introduced has been further developed.
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-dcale graph visualization, and visualization of multi-field topology for continuuous data- the (Joint Contour Net). have substantia practical experience withThe Visualization Toolkit (VTK).More generally I'm interested in software engineering, modularity and support for rigorous formal methods.I'm also interested in refinement of specifications to code or more generally to implemented systems, which may be hybrids of software, human and/or other components.I have worked extensively in functional programming using Haskell to parallelise challenging computations in topological data analysis including work on multi-field topology, the Joint Contour Net
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
- novel application domains cognative models, systems of interactors
(ii) high performance graphics and visualization, esp fo large scale data:
- multi-field topology
- linking depiction to semantics
(iii) pure functional programming - applications in big data analysis (scivis)
- 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
- IEEE and IEEE Computer Society
- Fellow of the European Association for Computer Graphics
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