\documentclass[12pt]
%\begin{htmlonly}
%\end{htmlonly}
{slides}
\usepackage{color}
% .~/Desktop/slides/selfaware/selfaware1-sli.tex
% /u/jmc/w04/asl  The abstract for this talk

\begin{document}


\begin{slide}
  \begin{center}
    \textcolor{red}{WHAT ARTIFICIAL INTELLIGENCE NEEDS FROM
      SYMBOLIC LOGIC}
  \end{center}
  \begin{center}
    John McCarthy, Stanford University \\
    mccarthy@stanford.edu \\
    http://www-formal.stanford.edu/jmc/ \\
    \today
  \end{center}

The goal of artificial intelligence research is human-level AI.
Logical AI is an approach.  It requires mathematical logic with
\textcolor{blue}{human-level expressiveness} both in the formulas it 
can include and in the reasoning steps it allows.

Here are the topics.

$\bullet$ What is logical AI?

$\bullet$ The common sense informatic situation

$\bullet$ Relevant history of logic

$\bullet$ Problems with logical AI

$\bullet$ Nonmonotonic reasoning

%$\bullet$ Interactive theorem provers

$\bullet$ Domain dependent control of reasoning

$\bullet$ Concepts as objects

$\bullet$ Contexts as objects

$\bullet$ Partially defined objects

$\bullet$ Self-awareness

$\bullet$ Remarks and references


\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\begin{slide}
  \begin{center}
    \textcolor{red}{LOGICAL AI}
  \end{center}

$\bullet$ Logical AI proposes computer systems that represent what
they know about the world by sentences in a suitable mathematical
logical language.  It achieves goals by
\textcolor{blue}{\emph{inferring}} that a certain strategy of action
is appropriate to achieve the goal.  It then carries out that
strategy, using observations also expressed as logical sentences.

$\bullet$ If \emph{inferring} is taken as \emph{deducing} in (say)
first order logic, and the logical language is taken as a first order
language, this is \textcolor{blue}{inadequate} for human-level AI.
Extended inference mechanisms are certainly required, and extended
languages are probably required.

$\bullet$ Much AI research and all practical applications today have
more modest goals than human-level AI.  Many of them use weaker logics 
that seem more computationally tractable.

$\bullet$ A rival approach to AI is based on imitating the neural
structures of human and animal intelligence.  So far the ability to
understand and imitate these structures has been inadequate.

\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\begin{slide}
  \begin{center}
    \textcolor{red}{THE RELEVANT DEVELOPMENTS IN MATHEMATICAL LOGIC}
  \end{center}
  
  $\bullet$ Leibniz, Boole, Frege, and Peirce all expected that
  mathematical logic would apply to human affairs.  Leibniz was
  explicit about replacing argument by calculation.  We take this
  as implying that common sense reasoning would be covered by formal 
  logic.
  
  $\bullet$ Leibniz's goal for logic might be described as
  \textcolor{blue}{\emph{human level expressiveness}}.  We'll see why
  it didn't work, but we hope it can be made to work.
  
  $\bullet$ Frege gave us first order logic, which G\"odel proved
  complete.  No proper extension of first order logic is true in all
  interpretations.  We'll see that nonmonotonic extensions can be made
  that are true in \textcolor{blue}{\emph{preferred interpretations}}.
  
  $\bullet$ Whitehead and Russell's \emph{Principia Mathematica}
  was an unsuccessfull start on a practical system.
  
  $\bullet$ G\"odel's arithmetization of metamathematics was a step
  towards human-level expressiveness.  More readable and computable 
  representations are needed for computation.  I recommend Lisp, but a 
  more expressive abstract syntax that provided for expressions with
  bound variables would be better.
  
  $\bullet$ What about incompleteness?  No time to say more than
  humans are also incomplete.
  
  $\bullet$ In principle, set theory (ZFC) is an adequately expressive
  language for mathematics---and for AI also.
  
  $\bullet$ However, all these logical systems are monotonic.

\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{slide}
  \begin{center}
    \textcolor{red}{NONMONOTONIC REASONING}
  \end{center}

% nonmon step by step - Tom
Pre-1980 logical systems are almost all monotonic in the sense that if 
$A$ is a set of sentences such that $A \vdash p$ and $A \subset B$, then 
$B \vdash p$.  Likewise for $A \models p$.

$\bullet$ Leibniz, Boole and Frege all expected that mathematical
logic would reduce argument to calculation.  \textcolor{red}{A major
  reason why Leibniz's hope hasn't been realized is the lack of
  formalized nonmonotonic reasoning.}  Unfortunately, it's not the
only reason.

$\bullet$ We concentrate on one form of nonmonotonic
reasoning---finding \emph{the minimal models} according to some
ordering $<$ of interpretations.  Let $A(P;Z;C)$ be an axiom involving a
vector $P$ of predicate and function symbols and two other vectors
$Z$ and $C$.  We minimize $P$ according to the ordering, letting $Z$ vary and 
holding the predicates $C$ constant.
The formula is

\begin{equation}
  \label{eq:a1}
  \begin{array}[l]{l}
A(P:Z;C) \land (\forall P'\ Z')(A(P',Z';C) \rightarrow \lnot (P' < P)).
  \end{array}
\end{equation}

$\bullet$ The important special case is \emph{circumsription} in which 
the ordering relation is
\begin{equation}
  \label{eq:a2}
  \begin{array}[l]{l}
P \leq P' \equiv (\forall x)(P(x) \rightarrow P'(x)).
  \end{array}
\end{equation}

$\bullet$ A simple class of circumscriptive theories minimizes an
abnormality predicate $ab$.

$\bullet$ A simple theory of which objects fly has the axiom 

\begin{equation}
  \label{eq:fly1}
  \begin{array}[l]{l}
\textcolor{blue}{\mbox{FLY1:}} \\
\quad\quad \lnot ab(aspect1(x)) \rightarrow \lnot flies(x) \\
\quad\quad\quad \quad \mbox{Objects normally don't fly} \\
\quad\quad bird(x) \rightarrow ab(aspect1(x)) \\
\quad\quad bird(x) \land \lnot ab(aspect2(x)) \rightarrow flies(x) \\
\quad\quad ostrich(x) \rightarrow bird(x) \\
\quad\quad ostrich(x) \rightarrow ab(aspect2(x)) \\
\quad\quad ostrich(x) \land \lnot ab(aspect3(x) \rightarrow \lnot
flies(x)  \\
  \end{array}
\end{equation}

If we circumscribe the predicate $ab$ in the axiom FLY1, varying the
predicate flies and holding $bird$ and $ostrich$ constant, we will
conclude that those objects that fly are the birds that are not
ostriches.  
\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{slide}

We can elaborate the FLY1 theory by conjoining additional
assertions \textcolor{blue}{before we circumscribe $ab$}.  For example,

\begin{equation}
  \label{eq:a}
  \begin{array}[l]{l}
\textcolor{blue}{\mbox{moreFLY:}} \\
bat(x) \rightarrow ab(aspect1(x)) \\
bat(x) \land \lnot ab(aspect4(x)) \rightarrow flies(x) \\
penguin(x) \rightarrow bird(x) \\
penguin(x) \rightarrow ab(aspect2(x)) \\
penguin(x) \land \lnot ab(aspect3(x) \rightarrow \lnot
flies(x). \\
  \end{array}
\end{equation}

The circumscription
then gives that the flying objects consist of bats and the birds that
are neither ostriches nor penguins.  Unfortunately, simple abnormality
theories are insufficient for formalizing common sense and more 
elaborate nonmmonotonic reasoning is needed.
\vfill
\end{slide}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{slide}
  \begin{center}
    \textcolor{red}{THE COMMON SENSE INFORMATIC SITUATION}
  \end{center}

% /u/jmc/w99/commonsense.tex=2177
  
  $\bullet$ Reaching human-level expressiveness requires logical 
  language that can express what humans do in \textcolor{blue}{the 
  common sense informatic situation.}
  
  $\bullet$ A theory $T$ used by the agent is open to extension to a
  theory $T'$ by adding facts taking into account more phenomena.

% The process of adding new facts may involve non-monotonic reasoning, 
 %changing the representation that is used to capture new phenomena,
 %or simplifying (part of) the representation to enable reasoning.
    
  $\bullet$ The objects and other entities under consideration are
  incompletely known and are not fully characterized by what is known
  about them.

% Part of the lack of knowledge is due to time and space, future events are not
 % known (yet), and past or distant events are not observable.  Other lack
 % of knowledge is due to the lack of invention of a theory that can
 % describe the phenonmen. A fourth lack of knowledge is due to
 % intentional imprecision.
    
  $\bullet$ Most of the entities considered are never fully defined.

% Most of the entities considered are never fully defined.  Some may
 % not be fully definable (e.g. a game) some might be definable
 % (e.g. a law) but we intentionally are not that precise.  This lack of 
 % precision is valuable as it allows flexibility later.

% This imprecision is also necessary for communication with other
 % reasoners in their own CSIS.  Our concepts and phenomena do not
 % alogn exactly with their's, but as we both allow imprecision and
 % partial definition, they can be related.

    
  $\bullet$ The informatic situation itself is an object about which
  facts are known.  This human capability is not used in most human
  reasoning, and very likely animals don't have it.

% Reasoning about social situations, where there are other reasoners
 % (who are in the CSIS)  often requires taking the limitations and
 % ??? of the CSIS into account
  
  $\bullet$ Many of the objects considered are examples of
  \emph{natural kinds} which can be identified by simple criteria in
  common situaations but about which there is more to be learned. 
  Example: A child learns to identify lemons in the store as small
  yellow fruit, but lemons share a complex biology.  It helps the
  child that the store does not have a continuum of fruits between
  lemons and oranges.
  
  $\bullet$ The thinking doable in logic is connected with lower
  level mental activity.  Consider getting car keys from ones pocket.

% The CSIS presumes that the reasoner is in a typical earth-like,
 % human scale, setting. Other settings may not allow such an
 % approach.  E.g. a brain in a vat implemented on top of Life
 % automata might require exact reasoning to interact with its environment.

  $\bullet$ Science, mathematics, and logic are imbedded in common
  sense.  That's why articles and books on these subjects have words
  in addition to the formulas.

\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{slide}
  \begin{center}
    \textcolor{red}{THE CSIS IN MATHEMATICS}
  \end{center}
  \begin{quotation}
    \textcolor{blue}{``The development of mathematics toward greater
      precision has led, as is well known, to the formalization of
      large parts of it, so that one can prove any theorem using
      nothing but a few mechanical rules.''}
  \end{quotation}
  This is the first sentence of G\"odel's 1931 paper on
  incompleteness.  It illustrates that mathematics is done within the
  common sense informatic situation.
  
  $\bullet$ Consider the phrases ``toward greater precision'', ``as is
  well known'', and ``mechanical rules''.\\
$\bullet$ The first two are inherently imprecise, but G\"odel is not
to be faulted for using them.\\
$\bullet$ ``mechanical rules'' was imprecise in 1931, but G\"odel
later considered that Turing had made it precise.\\
$\bullet$ Human-level expressiveness requires such terms.  In logic
they must be treated with weak axioms, i.e. giving up hope of
if-and-only-if definitions.  But there has to be more.
\begin{quote}
      \textcolor{blue}{``Note that the class $A$ in Axiom B1 and the class $B$ in Axioms 
      B5-B8 are not fully defined, since nothing is said about those 
      sets which are not pairs (triples), whether or not they belong 
      to $A$ ($B$).''}, p. 37, vol. II.
\end{quote}
The second quotation is directly metamathematical, giving advice to 
the reader not expressible in the theory being developed.


\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{slide}
  \begin{center}
    \textcolor{red}{INDIVIDUAL CONCEPTS AND PROPOSITIONS AS OBJECTS}
  \end{center}
  
  $\bullet$ Since individual concepts and propositions can be
  discussed as objects in natural language, they probably must also be
  objects in a logical language useful for human level AI.%  Modal logic is a
%  historical accident, having started with Lewis's idea of
%  \emph{strict implication} as opposed to material implication.
% don't say that - Tom


% There are paradoxes.  

$\bullet$ $Knows(Pat,TTelephone(MMike))$ is how I say that Pat knows
Mike's telephone number.\\  $Dials(Pat,Telephone(Mike))$ is the action of
Pat dialing the number.  Thus $MMike$ is the concept of Mike. 
%$\hat 
%Mike \hat \lnot \hat \land \hat equiv \hat \forall \hat \exists \hat =$

\begin{equation}
  \label{eq:lassie}
  \begin{array}[l]{l}
\bullet (\forall x)(Puppy(x,Lassie) \\
\rightarrow Knows_{dog}(Lassie, 
LLocation_{dog}(CConcept_{dog}(x))))
  \end{array}
\end{equation}

is how we say that Lassie knows
the location of all her puppies.  $CConcept_{dog}(x)$ is a dog's
concept of the object $x$, very likely different from a human's concept.


$\bullet$ The AI programs of Stuart Shapiro and Len Schubert use
concepts as objects.


\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\begin{slide}
  \begin{center}
    \textcolor{red}{CONTEXTS AS OBJECTS}
  \end{center}

$\bullet$ Informal human reasoning always operates within a context
but can switch from one context to another and can relate entities
belonging to diffierent contexts.

$\bullet$ Our candidate for human-level expressiveness is to make
contexts into logical objects and to include in our logical language
relations among contexts and relations among the values of
expresssions in different contexts.

$\bullet$ Our examples take the form of context: expression.

$\bullet$ [These slides: I = John McCarthy], [Sherlock Holmes stories:
Detective(Holmes)], [Literary history: Sherlock Holmes was named after 
Oliver Wendell Holmes Sr., whom Conan Doyle admired as a medical
detective.]

$\bullet$ Formal example: The contexts for an Air Force database and a
General Electric database give different prices for the jet engine
GE721.  The AF database price includes a spare parts kit and GE doesn't.
\begin{equation}
  \label{eq:context1}
  \begin{array}[l]{l}
\mbox{Outer context}:\\ (AFdbase:Price(GE721) =\\
\quad GEdbase:(Price(GE721)) \\
\quad + GEdbase: (Price(\mbox{spare-parts-kit}(GE721)))
  \end{array}
\end{equation}

$\bullet$ Reasoning in limited contexts may serve to isolate from each
other contexts whose ``truths'' are mutually inconsistent.



\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{slide}
  \begin{center}
    \textcolor{red}{PARTIALLY DEFINED OBJECTS}
  \end{center}

$\bullet$ Exactly what ice and rocks constitute Mount Everest is 
not definite.  It is definite that the mountain was climbed in 1953.

$\bullet$ Exactly what constitutes the wants of the United States is
not definite.  It is definite that the United States wanted Iraq to
withdraw from Kuwait in 1990.

$\bullet$ We can deal with partially defined objects by giving weak
axioms---i.e. not requiring necessary and sufficient conditions.

$\bullet$ The semantics of theories with partially defined objects
seems obscure to me.

$\bullet$ Slogan: \textcolor{red}{Build solid theoretical structures
  on foundations of semantic quicksand.}  Euclid did that.

\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{slide}
  \begin{center}
    \textcolor{red}{SELF-AWARENESS}
  \end{center}

$\bullet$ A human can be aware of his intentions, hopes, fears,
knowledge of a domain,  non-knowledge.  A language with human-level 
expressiveness will have terms for these.

$\bullet$ Self-awareness is a recent evolutionary development, and is
only partial in humans.  It can be greater in machines.

$\bullet$ The language used should have functions and predicates
corresponding to its own \textcolor{blue}{\emph{abstract syntax}}. 
Lisp syntax will help.  So will having concepts and contexts as
objects.

$\bullet$ It's not clear whether other improvements in symbolic logic are
needed to make self-aware computer systems.



\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{slide}
  \begin{center}
    \textcolor{red}{SUMMARY}
  \end{center}
Here's what AI needs from symbolic logic.

$\bullet$ Systems with concepts as objects and contexts as objects.

$\bullet$ Systems allowing partially defined objects.

$\bullet$ Heavy duty set theory.  More generally, systems good for
proving theorems within and not morely theorems about.  Enough 
definitions and theorems so that proofs are as short as informal 
proofs---indeed direct transcriptions of informal proofs.

$\bullet$ Systems whose theories are objects that can be reasoned
about in higher level formal theories.



\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{slide}
  \begin{center}
    \textcolor{red}{REMARKS AND REFERENCES}
  \end{center}
  
  $\bullet$ One common reaction to the idea of nonmonotonic reasoning
  is that it can all be done with probability theory.  They're
  different but related.
  
  Nonmonotonic reasoning is often used to form the propositions to 
  which a Bayesian will ascribe probabilities.  An example is the 
  proposition that there are no material objects relevant to 
  a problem except for those whose existence follows from the known 
  facts.  In the well known missionaries and cannibals problem this 
  excludes the existence of a bridge or something wrong with the boat.
  
$\bullet$ The biggest unmet requirement for computer programs to
achieve goals using logical AI is the ability to describe domain
dependent reasoning strategies, preferably declaratively.  This 
includes resource bounded reasoning.

$\bullet$ Another problem is connecting thinking with lower 
level computational processes.

$\bullet$ References are be at the URL \\
http://www-formal.stanford.edu/jmc/asl.html.

\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\end{document}

$\bullet$ 

\begin{slide}
  \begin{center}
    \textcolor{red}{}
  \end{center}


\vfill
\end{slide}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Mike recommends
paraconsistency
quotes
resource bounded reasoning





