Skip to main content

Jifeng He at Oxford and Beyond: An Appreciation

  • Chapter
  • First Online:
Theories of Programming and Formal Methods

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 16.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

References

  1. 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

  2. Bowen, J.P. (ed.): Towards Verified Systems, Real-Time Safety Critical Systems, vol. 2. Elsevier, Amsterdam (1994)

    Google Scholar 

  3. 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

  4. Bowen, J.P.: A personal formal methods archive. ResearchGate (2019). https://doi.org/10.13140/RG.2.2.31943.65447

  5. Bowen, J.P.: FACS events, 2018–2020. FACS FACTS 2020(1), 7–21 (2020). https://www.bcs.org/media/5204/facs-dec19.pdf

  6. 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

    Article  Google Scholar 

  7. 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

    Article  Google Scholar 

  8. 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

    Article  MATH  Google Scholar 

  9. 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

  10. 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

  11. 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

  12. 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

    Chapter  Google Scholar 

  13. 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

  14. 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

  15. 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

  16. 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

  17. Bowen, J.P., Zhu, H. (eds.): UTP 2016. LNCS, vol. 10134. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-52228-9

    Book  Google Scholar 

  18. 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

  19. 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)

    Google Scholar 

  20. 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

    Chapter  Google Scholar 

  21. He, J.: Provably Correct Systems: Modelling of Communication Languages and Design of Optimized Compilers. International Series in Software Engineering. McGraw-Hill, New York (1994)

    Google Scholar 

  22. 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

  23. 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

  24. 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

  25. 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

    Article  MATH  Google Scholar 

  26. 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

    Article  MathSciNet  MATH  Google Scholar 

  27. 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

    Chapter  Google Scholar 

  28. 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

    Chapter  Google Scholar 

  29. 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

    Chapter  Google Scholar 

  30. 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

    Chapter  MATH  Google Scholar 

  31. 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

    Article  MathSciNet  MATH  Google Scholar 

  32. 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

    Google Scholar 

  33. 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

    Chapter  Google Scholar 

  34. 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

    Article  Google Scholar 

  35. 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

    Article  MathSciNet  MATH  Google Scholar 

  36. He, J., Seidel, K., McIver, A.: Probabilistic models for the guarded command language. Sci. Comput. Program. 28, 171–192 (1997)

    Article  MathSciNet  MATH  Google Scholar 

  37. 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)

    Google Scholar 

  38. 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

    Article  MATH  Google Scholar 

  39. 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

    Chapter  Google Scholar 

  40. 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

  41. 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

    Article  Google Scholar 

  42. Hoare, C.A.R.: Communicating Sequential Processes. International Series in Computer Science, Prentice Hall, Hoboken (1985)

    Google Scholar 

  43. Hoare, C.A.R.: Recommendation letter (2002). Private communication via K. He (May 2023)

    Google Scholar 

  44. Hoare, C.A.R., He, J.: The weakest prespecification. Technical Monograph PRG-44, Oxford University Computing Laboratory, Programming Research Group, Oxford, UK, June 1985

    Google Scholar 

  45. 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

    Article  MathSciNet  MATH  Google Scholar 

  46. 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

    Article  MathSciNet  MATH  Google Scholar 

  47. 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

  48. 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

    Article  MathSciNet  MATH  Google Scholar 

  49. Hoare, C.A.R., He, J.: Unifying Theories of Programming. Series in Computer Science, Prentice Hall, Hoboken (1998)

    Google Scholar 

  50. 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

    Article  MathSciNet  MATH  Google Scholar 

  51. Hoare, C.A.R., et al.: Laws of programming. Commun. ACM 30(8), 672–686 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  52. 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

    Article  MathSciNet  MATH  Google Scholar 

  53. 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

    Chapter  Google Scholar 

  54. 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

  55. 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

  56. 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

  57. Li, Y., He, J.: Formalising Verilog: operational semantics and bisimulation. Technical report 217, UNU/IIST, P.O. Box 3058, Macau SAR, China, November 2000

    Google Scholar 

  58. 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

  59. 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

  60. 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

    Chapter  Google Scholar 

  61. Milner, R.: A Calculus of Communicating Systems. Springer, Heidelberg (1980). https://doi.org/10.1007/3-540-10235-3_11

  62. 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

  63. 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

  64. 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

    Chapter  MATH  Google Scholar 

  65. 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

    Chapter  Google Scholar 

  66. Scolefield, D., Zedan, H., He, J.: A specification-oriented semantics for the refinement of real-time systems. Theor. Comput. Sci. 131, 219–241 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  67. 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

  68. 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

    Article  MathSciNet  MATH  Google Scholar 

  69. 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

    Article  MATH  Google Scholar 

  70. 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

  71. 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

  72. 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

    Article  MATH  Google Scholar 

  73. Zhou, C., Hoare, C.A.R., Ravn, A.P.: A calculus of durations. Inf. Process. Lett. 40(5), 269–276 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  74. 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

  75. 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

    Chapter  Google Scholar 

  76. 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

    Chapter  MATH  Google Scholar 

  77. 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)

    Google Scholar 

  78. 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

  79. 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

    Article  Google Scholar 

  80. 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

    Article  Google Scholar 

Download references

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

Authors

Corresponding author

Correspondence to Jonathan P. Bowen .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

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)

Publish with us

Policies and ethics