Keith Clark (computer scientist)


Keith Leonard Clark is an Emeritus Professor in the Department of Computing at Imperial College London, England.

Education

Clark studied Mathematics at Durham University, graduating in 1964 with a first-class degree. Clark then continued his studies at Cambridge University, taking a second undergraduate degree in Philosophy in 1966. He earned a Ph.D. in 1980 from the University of London with thesis titled Predicate logic as a computational formalism.

Career

Clark undertook Voluntary Service Overseas from 1967-1968 as a teacher of Mathematics at a school in Sierra Leone. He lectured in Computer Science at the Mathematics Department of Queen Mary College from 1969 to 1975. In 1975 he moved to Imperial College London, where he became a Senior Lecturer in the Department of Computer Science and joined Robert Kowalski in setting up the Logic programming group. From 1987 to 2009 he was Professor of Computational Logic at Imperial College.
Clark's key contributions have been in the field of logic programming. His 1978 paper on negation as failure was arguably the first formalisation of a non-monotonic logic. His 1981 paper on a relational language for parallel programming introduced concurrent logic programming. This was the programming paradigm adopted by the ambitious 1980s Japanese Fifth Generation Research Project with the goal of producing knowledge processing parallel computers. It was selected for its suitability for parallel execution even though it lacked the natural knowledge representation features of Prolog.
Since 2010 Clark has worked closely with Peter Robinson of the University of Queensland on the TeleoR/QuLog language combination for programming multi-tasking communicating agents optionally controlling robotic devices. TeleoR is a rule based programming language that is a major extension of the Teleo-Reactive Procedures language T-R proposed by Nils Nilsson. T-R is a descendant of generalised hierarchical triangular table STRIPS plans, the planner of Shakey the robot, the first reasoning robot. QuLog is a flexibly typed hybrid language combining logic programming, functional programming and multi-threaded agent action programming. TeleoR is an application specific syntactic extension of QuLog.

Business Interests

In 1980, with colleague Frank McCabe, he founded an Imperial College spin-off company, Logic Programming Associates, to develop and market Prolog systems for micro-computers and to provide consultancy on expert systems and other logic programming applications. The company's star product was MacProlog. It had had a user interface exploiting all the graphic user interface primitives of the Mac's OS, and primitives allowing bespoke Prolog based applications to be built with application specific interfaces. Clark has also acted as a Consultant to IBM, Hewlett-Packard and Fujitsu among other companies.

Selected publications