Robert Kowalski | |
---|---|
Born | Bridgeport, Connecticut, U.S. | 15 May 1941
Nationality | British |
Alma mater | University of Chicago University of Bridgeport (BA) Stanford University (MSc) University of Warsaw University of Edinburgh (PhD) |
Known for | Logic programming Prolog Horn clause Event calculus |
Awards | IJCAI Award for Research Excellence (2011) |
Scientific career | |
Fields | Logic Computer science |
Institutions | University of Edinburgh Imperial College London |
Thesis | Studies in the Completeness and Efficiency of Theorem-Proving by Resolution (1970) |
Doctoral advisor | Bernard Meltzer |
Doctoral students |
Robert Anthony Kowalski (born 15 May 1941) is an American-British logician and computer scientist, whose research is concerned with developing both human-oriented models of computing and computational models of human thinking. [1] He has spent most of his career in the United Kingdom.
He was educated at the University of Chicago, University of Bridgeport (BA in mathematics, 1963), Stanford University (MSc in mathematics, 1966), University of Warsaw and the University of Edinburgh (PhD in computer science, 1970). [1]
He was a research fellow at the University of Edinburgh (1970–75) and has been at the Department of Computing, Imperial College London since 1975, attaining a chair in Computational logic in 1982 and becoming Emeritus Professor in 1999. [1]
He began his research in the field of automated theorem proving, developing both SL-resolution [2] with Donald Kuehner and the connection graph proof procedure. [3] He developed SLD resolution and the procedural interpretation of Horn clauses, [4] which underpin the operational semantics of backward reasoning in logic programming. With Maarten van Emden, [5] he also developed the minimal model and the fixpoint semantics of Horn clauses, which underpin the logical semantics of logic programming.
With Marek Sergot, he developed both the event calculus [6] and the application of logic programming to legal reasoning. [7] [8] Together, Kowalski and Sergot supervised one of the first use cases of a legal expert system. [9] With Fariba Sadri, he developed an agent model [10] [11] in which beliefs are represented by logic programs and goals are represented by integrity constraints.
Kowalski was one of the developers of abductive logic programming, in which logic programs are augmented with integrity constraints and with undefined, abducible predicates. [12] [13] This work led to the demonstration with Phan Minh Dung and Francesca Toni that most logics for default reasoning can be regarded as special cases of assumption-based argumentation. [14] [15]
In his 1979 book, Logic for Problem Solving, [16] Kowalski argues that logical inference provides a simple and powerful model of problem solving that can be used by both humans and computers. In his 2011 book, Computational Logic and Human Thinking - How to be Artificially Intelligent, [17] he argues that the use of computational logic can help ordinary people to improve their natural language communication skills, and that in combination with decision theory, it can be used to improve their practical problem-solving abilities.
In joint work with Fariba Sadri, he has developed the logic and computer language LPS, [18] (Logic Production Systems), which integrates much of his previous work on computational logic. He has continued his interest in the development of artificial intelligence. [19]
Kowalski was elected a Fellow of the American Association for Artificial Intelligence in 1991, of the European Co-ordinating Committee for Artificial Intelligence in 1999, and the Association for Computing Machinery in 2001. [1] In 2011, he received the IJCAI Award for Research Excellence, "for his contributions to logic for knowledge representation and problem solving, including his pioneering work on automated theorem proving and logic programming". [20] In 2012, he received the Japan Society for the Promotion of Science Award for Eminent Scientists for 2012–2014. [21] In 2021, he received the Inaugural CodeX Prize for his work with Fariba Sadri and Marek Sergot "in acknowledgment of their work on the application of logic programming to the formalization and analysis of the British Nationality Act. The authors' seminal article, "The British Nationality Act as a Logic Program," published in 1986 in the Communications of the ACM journal, is one of the first and best-known works in computational law, and one of the most widely cited papers in the field." [22]
Automated theorem proving is a subfield of automated reasoning and mathematical logic dealing with proving mathematical theorems by computer programs. Automated reasoning over mathematical proof was a major motivating factor for the development of computer science.
Knowledge representation and reasoning is a field of artificial intelligence (AI) dedicated to representing information about the world in a form that a computer system can use to solve complex tasks, such as diagnosing a medical condition or having a natural-language dialog. Knowledge representation incorporates findings from psychology about how humans solve problems and represent knowledge, in order to design formalisms that make complex systems easier to design and build. Knowledge representation and reasoning also incorporates findings from logic to automate various kinds of reasoning.
Logic programming is a programming, database and knowledge representation paradigm based on formal logic. A logic program is a set of sentences in logical form, representing knowledge about some problem domain. Computation is performed by applying logical reasoning to that knowledge, to solve problems in the domain. Major logic programming language families include Prolog, Answer Set Programming (ASP) and Datalog. In all of these languages, rules are written in the form of clauses:
Prolog is a logic programming language that has its origins in artificial intelligence, automated theorem proving and computational linguistics.
Computer science is the study of the theoretical foundations of information and computation and their implementation and application in computer systems. One well known subject classification system for computer science is the ACM Computing Classification System devised by the Association for Computing Machinery.
The Fifth Generation Computer Systems was a 10-year initiative launched in 1982 by Japan's Ministry of International Trade and Industry (MITI) to develop computers based on massively parallel computing and logic programming. The project aimed to create an "epoch-making computer" with supercomputer-like performance and to establish a platform for future advancements in artificial intelligence. Although FGCS was ahead of its time, its ambitious goals ultimately led to commercial failure. However, on a theoretical level, the project significantly contributed to the development of concurrent logic programming.
Logic in computer science covers the overlap between the field of logic and that of computer science. The topic can essentially be divided into three main areas:
The expression computational intelligence (CI) usually refers to the ability of a computer to learn a specific task from data or experimental observation. Even though it is commonly considered a synonym of soft computing, there is still no commonly accepted definition of computational intelligence.
Legal informatics is an area within information science.
A physical symbol system takes physical patterns (symbols), combining them into structures (expressions) and manipulating them to produce new expressions.
The event calculus is a logical theory for representing and reasoning about events and about the way in which they change the state of some real or artificial world. It deals both with action events, which are performed by agents, and with external events, which are outside the control of any agent.
Keith Leonard Clark is an Emeritus Professor in the Department of Computing at Imperial College London, England.
A deductive language is a computer programming language in which the program is a collection of predicates ('facts') and rules that connect them. Such a language is used to create knowledge based systems or expert systems which can deduce answers to problem sets by applying the rules to the facts they have been given. An example of a deductive language is Prolog, or its database-query cousin, Datalog.
The following outline is provided as an overview of and topical guide to artificial intelligence:
SLD resolution is the basic inference rule used in logic programming. It is a refinement of resolution, which is both sound and refutation complete for Horn clauses.
Abductive logic programming (ALP) is a high-level knowledge-representation framework that can be used to solve problems declaratively, based on abductive reasoning. It extends normal logic programming by allowing some predicates to be incompletely defined, declared as abducible predicates. Problem solving is effected by deriving hypotheses on these abducible predicates as solutions of problems to be solved. These problems can be either observations that need to be explained or goals to be achieved. It can be used to solve problems in diagnosis, planning, natural language and machine learning. It has also been used to interpret negation as failure as a form of abductive reasoning.
Computational thinking (CT) refers to the thought processes involved in formulating problems so their solutions can be represented as computational steps and algorithms. In education, CT is a set of problem-solving methods that involve expressing problems and their solutions in ways that a computer could also execute. It involves automation of processes, but also using computing to explore, analyze, and understand processes.
A legal expert system is a domain-specific expert system that uses artificial intelligence to emulate the decision-making abilities of a human expert in the field of law. Legal expert systems employ a rule base or knowledge base and an inference engine to accumulate, reference and produce expert knowledge on specific subjects within the legal domain.
This glossary of artificial intelligence is a list of definitions of terms and concepts relevant to the study of artificial intelligence (AI), its subdisciplines, and related fields. Related glossaries include Glossary of computer science, Glossary of robotics, and Glossary of machine vision.