Keynote Talk: Logic and AI – The Last 50 Years

June 21, 2017 at 1:22 PM
Bob Kowalski ( was a research fellow at the University of Edinburgh (1970–75) and has been at Imperial College London since 1975, attaining a chair in Computational logic in 1982 and becoming Emeritus Professor in 1999.

Fifty years ago in 1967, the research community working in Logic and AI was tiny. Everyone knew everyone else, and most communication between researchers was by word of mouth or correspondence. If you didn’t work in Stanford, MIT, Carnegie Mellon or Edinburgh, you were seriously disadvantaged.In 1967, Pat Hayes and I started our PhDs in Edinburgh. Bernard Meltzer was our Ph.D. supervisor, and John Alan Robinson, who developed resolution logic, was in Edinburgh on sabbatical. Bernard started the Journal of Artificial Intelligence in 1970, and co-edited the influential series of Machine Intelligence Workshop Proceedings with Donald Michie. The workshops attracted a wide range of researchers, mainly from the UK and USA, including Cordell Green and John McCarthy from Stanford. There was much excitement about Cordell’s application of resolution to a wide range of AI applications.The high hopes for resolution logic were challenged by researchers, including Marvin Minsky, Carl Hewitt, Gerald Sussman and Terry Winograd, at MIT. The resulting intellectual skirmishes between advocates of logical and procedural approaches to knowledge representation led to the development of logic programming and Prolog in 1972. My contributions to this development were greatly assisted by visits to Alain Colmerauer in Marseille.Over the subsequent years, we have seen the Fifth Generation Project with its focus on the application of logic programming to AI applications, the rise of the internet, and now big data and deep learning. But the fundamental challenge to Computer Science of the relationship between declarative (logical) and imperative (procedural) representations is still unresolved.Motivated by this challenge, Fariba Sadri and I are developing LPS (Logic-based Production System), as an imperative language with a logical interpretation. Programs include logic programs, interpreted as beliefs, and a logical reconstruction of production rules, interpreted as goals. Computation executes actions, to satisfy a global imperative of making the goals true in a model of the world determined by the beliefs. There is an online prototype of LPS, developed in the CLOUT (Computational Logic for Use in Teaching) project, to teach logic and computing to children.