Abstract
This paper provides an overview of Jifeng He’s academic achievements while at Oxford University in the UK, and later in Macau and Shanghai, together with his legacy internationally. He was an important researcher on the European ESPRIT ProCoS projects and Working Group on “Provably Correct Systems”. Subsequently and most notably, this led to collaboration with Tony Hoare on Unifying Theories of Programming (UTP), resulting in a jointly authored book and later conference series on the subject. Jifeng returned to his native China in 1998, first at the United Nations University in Macau and then at the East China Normal University in Shanghai from 2005 to 2019. In recent years, Jifeng has been the founder of an Artificial Intelligence (AI) research institute, focusing on the application of AI technology in large-scale industrial software systems. His scientific contributions have been recognized through his election to membership of the Chinese Academy of Sciences. This paper is structured in broadly chronological order, starting with a brief biography and then covering Jifeng He’s academic contributions successively in Oxford, Macau, and Shanghai. The paper concludes with an overall appreciation of his major achievements.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Bjørner, D., et al.: A ProCoS project description: ESPRIT BRA 3104. Bull. Eur. Assoc. Theor. Comput. Sci. 39, 60–73 (1989). http://researchgate.net/publication/256643262
Bowen, J.P. (ed.): Towards Verified Systems, Real-Time Safety Critical Systems, vol. 2. Elsevier, Amsterdam (1994)
Bowen, J.P.: A relational approach to an algebraic community: from Paul Erdős to He Jifeng. In: Liu et al. [58], pp. 54–66. https://doi.org/10.1007/978-3-642-39698-4_4
Bowen, J.P.: A personal formal methods archive. ResearchGate (2019). https://doi.org/10.13140/RG.2.2.31943.65447
Bowen, J.P.: FACS events, 2018–2020. FACS FACTS 2020(1), 7–21 (2020). https://www.bcs.org/media/5204/facs-dec19.pdf
Bowen, J.P.: Review on theories of programming: the life and works of tony Hoare. Form. Aspects Comput. 34(3–4), 1–3 (2022). https://doi.org/10.1145/3560267
Bowen, J.P., Gordon, M.J.C.: A shallow embedding of Z in HOL. Inf. Softw. Technol. 37(5–6), 269–276 (1995). https://doi.org/10.1016/0950-5849(95)99362-Q
Bowen, J.P., He, J.: An approach to the specification and verification of a hardware compilation scheme. J. Supercomput. 19(1), 23–39 (2001). https://doi.org/10.1023/A:1011184310224
Bowen, J.P., He, J.: An algebraic approach to hardware compilation. In: Gabbar, H.A. (ed.) Modern Formal Methods and Applications, pp. 151–176. Springer, Dordrecht (2006). https://doi.org/10.1007/1-4020-4223-X_7
Bowen, J.P., He, J., Hale, R.W.S., Herbert, J.M.J.: Towards verified systems: the SAFEMOS project. In: Mitchell, C., Stavridou, V. (eds.) Mathematics of Dependable Systems, Institute of Mathematics and Its Applications Conference Series, vol. 55, pp. 23–48. Oxford University Press (1995). http://researchgate.net/publication/2525857
Bowen, J.P., He, J., Page, I.: Hardware compilation. In: Bowen [2], chap. 10, pp. 193–207. https://doi.org/10.1016/B978-0-444-89901-9.50019-7
Bowen, J.P., He, J., Pandya, P.K.: An approach to verifiable compiling specification and prototyping. In: Deransart, P., Maluszyński, J. (eds.) PLILP 1990. LNCS, vol. 456, pp. 45–59. Springer, Heidelberg (1990). https://doi.org/10.1007/BFb0024175
Bowen, J.P., He, J., Xu, Q.: An animatable operational semantics of the Verilog hardware description language. In: ICFEM 2000: Third IEEE International Conference on Formal Engineering Methods, pp. 199–207. IEEE (2000). https://doi.org/10.1109/ICFEM.2000.873820
Bowen, J.P., et al.: Provably correct systems – FTRTFT’94 tutorial. In: Third International School and Symposium, Formal Techniques in Real Time and Fault Tolerant Systems. No. [COORD JB 7/1] in ProCoS document, Christian-Albrechts-Universität, Lübeck, Germany, September 1994. http://researchgate.net/publication/2420842, School Material
Bowen, J.P., Hoare, C.A.R., Langmaack, H., Olderog, E.R., Ravn, A.P.: A ProCoS II project final report: ESPRIT basic research project 7071. Bull. Eur. Assoc. Theor. Comput. Sci. 59, 76–99 (1996). http://researchgate.net/publication/2255515
Bowen, J.P., Hoare, C.A.R., Langmaack, H., Olderog, E.R., Ravn, A.P.: A ProCoS-WG working group final report: ESPRIT working group 8694. Bull. Eur. Assoc. Theor. Comput. Sci. 64, 63–72 (1998). http://researchgate.net/publication/2527052
Bowen, J.P., Zhu, H. (eds.): UTP 2016. LNCS, vol. 10134. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-52228-9
Bowen, J.P., Li, Q., Xu, Q. (eds.): Theories of Programming and Formal Methods: Essays Dedicated to Jifeng He on the Occasion of His 80th Birthday, LNCS, vol. 14080. Springer, Berlin, Heidelberg (2023). https://doi.org/10.1007/978-3-031-40436-8
Hale, R.W.S., He, J.: A real-time programming language. In: Bowen, J.P. (ed.) Towards Verified Systems, Real-Time Safety Critical Systems, vol. 2, chap. 6, pp. 115–130. Elsevier (1994)
He, J.: Hybrid parallel programming and implementation of synchronised communication. In: Borzyszkowski, A.M., Sokołowski, S. (eds.) MFCS 1993. LNCS, vol. 711, pp. 537–546. Springer, Heidelberg (1993). https://doi.org/10.1007/3-540-57182-5_45
He, J.: Provably Correct Systems: Modelling of Communication Languages and Design of Optimized Compilers. International Series in Software Engineering. McGraw-Hill, New York (1994)
He, J.: A new roadmap for linking theories of programming. In: Bowen and Zhu [17], pp. 26–43. https://doi.org/10.1007/978-3-319-52228-9_2
He, J., Bowen, J.P.: Compiling specification for ProCoS language PLR\(_0\). ProCoS document [OU HJF 6], Oxford University Computing Laboratory (1991). http://researchgate.net/publication/319069362
He, J., Bowen, J.P.: Time interval semantics and implementation of a real-time programming language. In: Fourth Euromicro Workshop on Real-Time Systems, pp. 110–115. IEEE (1992). https://doi.org/10.1109/EMWRT.1992.637480
He, J., Bowen, J.P.: Specification, verification and prototyping of an optimized compiler. Form. Aspects Comput. 6(6), 643–658 (1994). https://doi.org/10.1007/BF03259390
He, J., Hoare, C.A.R.: From algebra to operational semantics. Inf. Process. Lett. 45, 75–80 (1993). https://doi.org/10.1016/0020-0190(93)90219-Y
He, J., Hoare, C.A.R., Sanders, J.W.: Data refinement refined resume. In: Robinet, B., Wilhelm, R. (eds.) ESOP 1986. LNCS, vol. 213, pp. 187–196. Springer, Heidelberg (1986). https://doi.org/10.1007/3-540-16442-1_14
He, J., Page, I., Bowen, J.P.: Towards a provably correct hardware implementation of Occam. In: Milne, G.J., Pierre, L. (eds.) CHARME 1993. LNCS, vol. 683, pp. 214–225. Springer, Heidelberg (1993). https://doi.org/10.1007/BFb0021726
He, J.: Transaction calculus. In: Butterfield, A. (ed.) UTP 2008. LNCS, vol. 5713, pp. 2–21. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-14521-6_2
He, J., Hoare, C.A.R.: CSP is a retract of CCS. In: Dunne, S., Stoddart, B. (eds.) UTP 2006. LNCS, vol. 4010, pp. 38–62. Springer, Heidelberg (2006). https://doi.org/10.1007/11768173_3
He, J., Hoare, C.A.R.: CSP is a retract of CCS. Theor. Comput. Sci. 411(11–13), 1311–1337 (2010). https://doi.org/10.1016/j.tcs.2009.12.012
He, J., Hoare, C.A.R.: Unifying theories of programming. In: RelMiCS: 4th International Seminar on Relational Methods in Computer Science, pp. 97–99. Warsaw, Poland, September 1998
He, J., Li, Q.: A hybrid relational modelling language. In: Gibson-Robinson, T., Hopcroft, P., Lazić, R. (eds.) Concurrency, Security, and Puzzles. LNCS, vol. 10160, pp. 124–143. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-51046-0_7
He, J., Li, Q.: A new roadmap for linking theories of programming and its applications on GCL and CSP. Sci. Comput. Program. 162, 3–34 (2018). https://doi.org/10.1016/j.scico.2017.10.009
He, J., Li, X., Liu, Z.: rCOS: a refinement calculus of object systems. Theor. Comput. Sci. 365(1–2), 109–142 (2006). https://doi.org/10.1016/j.tcs.2006.07.034
He, J., Seidel, K., McIver, A.: Probabilistic models for the guarded command language. Sci. Comput. Program. 28, 171–192 (1997)
He, J., Xu, Q.: An operational semantics of a simulator algorithm. In: Arabnia, H.R. (ed.) Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications, PDPTA 2000, 24–29 June 2000, Las Vegas, Nevada, USA. CSREA Press (2000)
He, J., Xu, Q.: Advanced features of Duration Calculus and their applications in sequential hybrid programs. Form. Aspects Comput. 15(1), 84–99 (2003). https://doi.org/10.1007/s001650300001
He, J., Zheng, J.: Simulation approach to provably correct hardware compilation. In: Langmaack, H., de Roever, W.-P., Vytopil, J. (eds.) FTRTFT ProCoS 1994. LNCS, vol. 863, pp. 336–350. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-58468-4_172
He, J., Zhu, H.: Formalising VERILOG. In: Proceedings of the 2000 7th IEEE International Conference on Electronics, Circuits and Systems, ICECS 2000, Jounieh, Lebanon, 17–20 December 2000, pp. 412–415. IEEE (2000). https://doi.org/10.1109/ICECS.2000.911568
He, J., Zhu, H., Pu, G.: A model for BPEL-like languages. Front. Comput. Sci. China 1(1), 9–19 (2007). https://doi.org/10.1007/s11704-007-0002-7
Hoare, C.A.R.: Communicating Sequential Processes. International Series in Computer Science, Prentice Hall, Hoboken (1985)
Hoare, C.A.R.: Recommendation letter (2002). Private communication via K. He (May 2023)
Hoare, C.A.R., He, J.: The weakest prespecification. Technical Monograph PRG-44, Oxford University Computing Laboratory, Programming Research Group, Oxford, UK, June 1985
Hoare, C.A.R., He, J.: The weakest prespecification: Part I. Fund. Inform. 9(1), 51–84 (1986). https://doi.org/10.3233/FI-1986-9104
Hoare, C.A.R., He, J.: The weakest prespecification: Part II. Fund. Inform. 9(2), 217–251 (1986). https://doi.org/10.3233/FI-1986-9205
Hoare, C.A.R., He, J., Bowen, J.P., Pandya, P.: An algebraic approach to verifiable compiling specification and prototyping of the ProCoS level 0 programming language. In: Directorate-General XIII of the Commission of the European Communities (ed.) ESPRIT ’90 Conference, pp. 804–818. Kluwer Academic Publishers (1990). https://doi.org/10.1007/978-94-009-0705-8_65
Hoare, C.A.R., He, J., Sanders, J.W.: Prespecification in data refinement. Inf. Process. Lett. 25(2), 71–76 (1987). https://doi.org/10.1016/0020-0190(87)90224-9
Hoare, C.A.R., He, J.: Unifying Theories of Programming. Series in Computer Science, Prentice Hall, Hoboken (1998)
Hoare, C.A.R., He, J., Sampaio, A.: Normal form approach to compiler design. Acta Informatica 30(8), 701–739 (1993). https://doi.org/10.1007/BF01191809
Hoare, C.A.R., et al.: Laws of programming. Commun. ACM 30(8), 672–686 (1987)
Hoare, C.A.R., He, J.: The weakest prespecification. Inf. Process. Lett. 24, 127–132 (1987). https://doi.org/10.1016/0020-0190(87)90106-2
Hoare, C.A.R., He, J.: A trace model for pointers and objects. In: Guerraoui, Rachid (ed.) ECOOP 1999. LNCS, vol. 1628, pp. 1–18. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48743-3_1
Jones, C.: List of Tony Hoare’s publications. In: Jones and Misra [55], pp. 394–315. https://doi.org/10.1145/3477355.3477375, Appendix D
Jones, C.B., Misra, J. (eds.): Theories of Programming: The Life and Works of Tony Hoare, ACM Books, vol. 39. Association for Computing Machinery (2021). https://doi.org/10.1145/3477355
Li, X., Liu, Z., He, J.: A formal semantics of UML sequence diagram. In: Proceedings of the Australian Software Engineering Conference (ASWEC), pp. 168–177. IEEE (2004). https://doi.org/10.1109/ASWEC.2004.1290469
Li, Y., He, J.: Formalising Verilog: operational semantics and bisimulation. Technical report 217, UNU/IIST, P.O. Box 3058, Macau SAR, China, November 2000
Liu, Z., Woodcock, J.C.P., Zhu, H. (eds.): Theories of Programming and Formal Methods, LNCS, vol. 8051. Springer, Berlin, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39698-4
Liu, Z.: Linking formal methods in software development – a reflection on the development of rCOS. In: Bowen et al. [18], this volume. https://doi.org/10.1007/978-3-031-40436-8_3
Liu, Z., He, J., Li, X.: rCOS: refinement of component and object systems. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2004. LNCS, vol. 3657, pp. 183–221. Springer, Heidelberg (2005). https://doi.org/10.1007/11561163_9
Milner, R.: A Calculus of Communicating Systems. Springer, Heidelberg (1980). https://doi.org/10.1007/3-540-10235-3_11
Möller, B., Hoare, C.A.R., Müller, M.E., Struth, G.: A discrete geometric model of concurrent program execution. In: Bowen and Zhu [17], pp. 1–25. https://doi.org/10.1007/978-3-319-52228-9_1
Mu, R., Li, Q.: A Coq implementation of the program algebra in Jifeng He’s new roadmap for linking theories of programming. In: Bowen et al. [18], this volume. https://doi.org/10.1007/978-3-031-40436-8_15
Scholefield, D., Zedan, H., He, J.: A predicative semantics for the refinement of real-time systems. In: Brookes, S., Main, M., Melton, A., Mislove, M., Schmidt, D. (eds.) MFPS 1993. LNCS, vol. 802, pp. 230–249. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-58027-1_11
Scholefield, D., Zedan, H., He, J.: Real-time refinement: semantics and application. In: Borzyszkowski, A.M., Sokołowski, S. (eds.) MFCS 1993. LNCS, vol. 711, pp. 693–702. Springer, Heidelberg (1993). https://doi.org/10.1007/3-540-57182-5_60
Scolefield, D., Zedan, H., He, J.: A specification-oriented semantics for the refinement of real-time systems. Theor. Comput. Sci. 131, 219–241 (1994)
Sheng, F., Zhu, H., He, J., Yang, Z., Bowen, J.P.: Theoretical and practical aspects of linking operational and algebraic semantics for MDESL. ACM Trans. Softw. Eng. Methodol. 28(3), 14:1–14:46 (2019). https://doi.org/10.1145/3295699
Sheng, F., Zhu, H., He, J., Yang, Z., Bowen, J.P.: Theoretical and practical approaches to the denotational semantics for MDESL based on UTP. Form. Aspects Comput. 32(2–3), 275–314 (2020). https://doi.org/10.1007/s00165-020-00513-4
Sherif, A., Cavalcanti, A., He, J., Sampaio, A.: A process algebraic framework forspecification and validation of real-time systems. Form. Aspects Comput. 22, 153–191 (2010). https://doi.org/10.1007/s00165-009-0119-6
Woodcock, J.: Hoare and He’s unifying theories of programming. In: Jones and Misra [55], chap. 13, pp. 287–315. https://doi.org/10.1145/3477355.3477369
Woodcock, J., Cavalcanti, A., Foster, S., Oliveira, M., Sampaio, A., Zeyda, F.: UTP, Circus, and Isabelle. In: Bowen et al. [18], this volume. https://doi.org/10.1007/978-3-031-40436-8_2
Xu, Q., de Roever, W.P., He, J.: The rely-guarantee method for verifying shared variable concurrent programs. Form. Aspects Comput. 9(2), 149–174 (1997). https://doi.org/10.1007/BF01211617
Zhou, C., Hoare, C.A.R., Ravn, A.P.: A calculus of durations. Inf. Process. Lett. 40(5), 269–276 (1991)
Zhu, H., Bowen, J.P., He, J.: Deriving operational semantics from denotational semantics for Verilog. In: APSEC 2001: Eighth Asia-Pacific Software Engineering Conference, pp. 177–184. IEEE (2001). https://doi.org/10.1109/APSEC.2001.991475
Zhu, H., Bowen, J.P., He, J.: From operational semantics to denotational semantics for Verilog. In: Margaria, T., Melham, T. (eds.) CHARME 2001. LNCS, vol. 2144, pp. 449–464. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-44798-9_34
Zhu, H., Bowen, J.P., He, J.: Soundness, completeness and non-redundancy of operational semantics for Verilog based on denotational semantics. In: George, C., Miao, H. (eds.) ICFEM 2002. LNCS, vol. 2495, pp. 600–612. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-36103-0_61
Zhu, H., He, J.: A semantics of Verilog using duration calculus. In: Proceedings of the International Conference on Software: Theory and Practice, pp. 421–432 (August 2000)
Zhu, H., He, J., Li, J., Bowen, J.P.: Algebraic approach to linking the semantics of web services. In: Fifth IEEE International Conference on Software Engineering and Formal Methods (SEFM 2007), 10–14 September 2007, London, England, UK, pp. 315–328. IEEE Computer Society (2007). https://doi.org/10.1109/SEFM.2007.4
Zhu, H., He, J., Li, J., Bowen, J.P.: Algebraic approach to linking the semantics of web services. Innov. Syst. Softw. Eng. 7(3), 209–224 (2011). https://doi.org/10.1007/s11334-011-0172-1
Zhu, H., He, J., Li, J., Pu, G., Bowen, J.P.: Linking denotational semantics with operational semantics for web services. Innov. Syst. Softw. Eng. 6(4), 283–298 (2010). https://doi.org/10.1007/s11334-010-0134-z
Acknowledgements
Jonathan Bowen is grateful for financial support provided by Museophile Limited. The comments from the reviewers were very helpful in improving the final version of this paper. Influenced by [59], the number of references in this paper is also 80 to match Jifeng’s birthday. Finally, both authors are extremely grateful for many years of collaboration with Jifeng, more fully referenced elsewhere [4], and wish him a very happy 80th birthday.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this chapter
Cite this chapter
Bowen, J.P., Zhu, H. (2023). Jifeng He at Oxford and Beyond: An Appreciation. In: Bowen, J.P., Li, Q., Xu, Q. (eds) Theories of Programming and Formal Methods. Lecture Notes in Computer Science, vol 14080. Springer, Cham. https://doi.org/10.1007/978-3-031-40436-8_1
Download citation
DOI: https://doi.org/10.1007/978-3-031-40436-8_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-40435-1
Online ISBN: 978-3-031-40436-8
eBook Packages: Computer ScienceComputer Science (R0)