Overview
Background
Software Engineering. Ian's research interests are in formal methods for software development.
Errors in a compiler for a programming language can generate errors in the myriad of programs they compile. Our research is looking at verifying optimisation phases of a compiler.
Concurrent programs are difficult to reason about due to the interleaving of execution of concurrent threads leading to an explosion of possible execution sequences. Our research is developing techniques for rely/guarantee reasoning about concurrent programs.
Both the above research strands make use of the Isabelle/HOL theorem prover.
Availability
- Emeritus Professor Ian Hayes is:
- Available for supervision
- Media expert
Fields of research
Qualifications
- Bachelor (Honours) of Science (Advanced), University of New South Wales
- Doctor of Philosophy, University of New South Wales
Research interests
-
Reasoning about concurrent programs
-
Verified compiler optimisations
Works
Search Professor Ian Hayes’s works on UQ eSpace
1992
Journal Article
Multi-relations in Z: A cross between multi-sets and binary relations
Hayes, Ian (1992). Multi-relations in Z: A cross between multi-sets and binary relations. Acta Informatica, 29 (1), 33-62. doi: 10.1007/BF01178565
1991
Journal Article
Case studies in systematic software development
Hayes, Ian J. (1991). Case studies in systematic software development. Science of Computer Programming, 17 (1-3), 250-251. doi: 10.1016/0167-6423(91)90042-v
1991
Journal Article
The semantics of programming languages: An elementary introduction using structural operational semantics
Hayes, Ian J. (1991). The semantics of programming languages: An elementary introduction using structural operational semantics. Science of Computer Programming, 16 (3), 278-279. doi: 10.1016/0167-6423(91)90011-l
1991
Conference Publication
A Case Study in Timed Refinement: A Central Heater
Mahony, Brendan and Hayes, Ian (1991). A Case Study in Timed Refinement: A Central Heater. 4th Refinement Workshop, Cambridge, United Kingdom, 9–11 January 1991. London: Springer London. doi: 10.1007/978-1-4471-3756-6_8
1991
Conference Publication
Interpretations of Z Schema Operators
Hayes, Ian (1991). Interpretations of Z Schema Operators. Z User Workshop, Oxford 1990 , Oxford United Kingdom, 17–18 December 1990. London: Springer London. doi: 10.1007/978-1-4471-3540-1_2
1990
Conference Publication
A Generalisation of Bags in Z
Hayes, Ian (1990). A Generalisation of Bags in Z. Z User Workshop , Oxford, , 15 December 1989. London: Springer London. doi: 10.1007/978-1-4471-3877-8_7
1987
Journal Article
Laws of programming
Hoare, C. A.R., Hayes, I. J., Jifeng, He, Morgan, C. C., Roscoe, A. W., Sanders, J. W., Sorensen, I. H., Spivey, J. M. and Sufrin, B. A. (1987). Laws of programming. Communications of the ACM, 30 (8), 672-686. doi: 10.1145/27651.27653
1986
Journal Article
Specification directed module testing
Hayes, Ian J. (1986). Specification directed module testing. IEEE Transactions on Software Engineering, SE-12 (1), 124-133. doi: 10.1109/tse.1986.6312926
1986
Conference Publication
Using mathematics to specify software
Hayes I.J. (1986). Using mathematics to specify software. First Australian Software Engineering Conference. Software Engineering: Path to Computer Systems Reliability, Canberra, Aust, *. Inst of Engineers.
1985
Journal Article
APPLYING FORMAL SPECIFICATION TO SOFTWARE DEVELOPMENT IN INDUSTRY
Hayes, Ian J. (1985). APPLYING FORMAL SPECIFICATION TO SOFTWARE DEVELOPMENT IN INDUSTRY. IEEE Transactions on Software Engineering, SE-11 (2), 169-178. doi: 10.1109/TSE.1985.232191
1978
Journal Article
Some remarks on "Ambiguous Machine Architecture"
Hayes, Ian J. (1978). Some remarks on "Ambiguous Machine Architecture". ACM SIGARCH Computer Architecture News, 6 (8), 23-24. doi: 10.1145/1216467.1216473
Funding
Current funding
Supervision
Availability
- Emeritus Professor Ian Hayes is:
- Available for supervision
Before you email them, read our advice on how to contact a supervisor.
Supervision history
Current supervision
-
Doctor Philosophy
Design and verification of concurrent systems
Principal Advisor
Other advisors: Dr Larissa Meinicke
-
Doctor Philosophy
Verifying Compiler Optimisation Passes
Associate Advisor
Other advisors: Associate Professor Mark Utting
-
Doctor Philosophy
Concurrent valuation algebras
Associate Advisor
Other advisors: Dr Larissa Meinicke
Completed supervision
-
2022
Doctor Philosophy
Operational Hazard Analysis and the Safety-Aware Concept Development Method
Principal Advisor
Other advisors: Emeritus Professor Paul Bailes
-
2009
Doctor Philosophy
Progress-based verification and derivation of concurrent programs
Principal Advisor
-
-
2008
Doctor Philosophy
Transformation Rules for Probabilistic Programs: An Algebraic Approach
Principal Advisor
-
2006
Doctor Philosophy
INCREMENTAL COMPILATION IN LANGUAGE-BASED ENVIRONMENTS
Principal Advisor
-
2014
Doctor Philosophy
Controlling the Generation of Multiple Counterexamples in LTL Model Checking
Associate Advisor
-
2012
Master Philosophy
FORMAL PROPERTY PRESERVATION AND TRANSFORMATION IN SOFTWARE EVOLUTION
Associate Advisor
Other advisors: Associate Professor Graeme Smith
-
2004
Doctor Philosophy
Towards an object-oriented refinement calculus
Associate Advisor
-
2002
Doctor Philosophy
DATA REFINEMENT AND DATA TYPES IN THE REFINEMENT CALCULUS FOR LOGIC PROGRAMS
Associate Advisor
Media
Enquiries
Contact Emeritus Professor Ian Hayes directly for media enquiries about:
- Computer software development
- Engineering - software
- Real-time systems - IT
- Software development
- Software engineering
Need help?
For help with finding experts, story ideas and media enquiries, contact our Media team: