\documentclass[pdf,plainsem,slideColor]{prosper}

\usepackage{xspace}
\usepackage{latexsym}
\usepackage{amssymb}

\usepackage{dl-macros}

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

\def\MiniPage#1#2{\begin{minipage}[t]{.49\hsize}#1\end{minipage}%
\hspace{1ex}\begin{minipage}[t]{.49\hsize}#2\end{minipage}}

\newlength{\ParLen}
\def\Parbox#1#2{\settowidth{\ParLen}{#1}\parbox[t]{\ParLen}{#2}}

\newcommand {\minitab}  {\hspace*{1ex}}
\newcommand {\smalltab} {\hspace*{5mm}}
\newcommand {\tab}      {\hspace*{10mm}}
\newcommand {\bigtab}   {\hspace*{15mm}}
\newcommand {\hugetab}  {\hspace*{20mm}}

\newcommand{\per}{\mathpunct{\mbox{\bf .}}}

%%%%%%%%%% macros %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\newcommand {\smalltabu} {\hspace*{1em}}
\newcommand {\tabu}      {\hspace*{2em}}

\def\card#1{|{#1}|}

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

\semtitle{Description Logics}
\semsubject{Structural Description Logics}
\semauthor{Enrico Franconi}
\sememail{franconi@cs.man.ac.uk}
\semwebpage{http://www.cs.man.ac.uk/\~{}franconi}
\seminstitution{Department of Computer Science, University of Manchester}

\begin{document}

\makesemtitle

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

\begin{slide}{Description Logics}

\begin{itemize}
\item A logical reconstruction and {\em unifying} formalism for the
  representation tools

\begin{itemize}
  \item Frame-based systems
  \item Semantic Networks
  \item Object-Oriented representations
  \item Semantic data models
  \item Ontology languages
  \item $\ldots$
\end{itemize}

\item A {\em structured} fragment of predicate logic
  
\item Provide theories and systems for {\em expressing} structured
  information and for {\em accessing} and {\em reasoning} with it in a
  principled way.

\end{itemize}

\end{slide}

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

\begin{slide}{Applications}

Description logics based systems are currently in use in many applications.
  
  \begin{itemize}

  \item Configuration
  \item Conceptual Modeling
  \item Query Optimization and View Maintenance 
  \item Natural Language Semantics
  \item I3 (Intelligent Integration of Information)
  \item Information Access and Intelligent Interfaces
  \item Terminologies and Ontologies
  \item Software Management
  \item Planning
  \item $\ldots$
  \end{itemize}
  

\end{slide}

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

\begin{slide}{A formalism}


\begin{itemize}
\item Description Logics formalize many {\em Object-Oriented} representation
  approaches.
  
\item As such, their purpose is to disambiguate many imprecise
  representations.
\end{itemize}

\end{slide}

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

\begin{slide}{Frames or Objects}

\begin{itemize}
\item Identifier
\item Class
\item Instance
\item Slot (attribute)
  \begin{itemize}
  \item Value
    \begin{itemize}
    \item Identifier
    \item Default
    \end{itemize}
  \item Value restriction
    \begin{itemize}
    \item Type
    \item Concrete Domain
    \item Cardinality
    \item Encapsulated method
    \end{itemize}
  \end{itemize}
\end{itemize}

\end{slide}

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

\begin{slide}{Ambiguities: classes and instances}

\fbox{\begin{minipage}[t]{.7\textwidth} \noindent $\mbox{\tt Person}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}: {\tt Number}, \\ {\tt SEX}: {\it M},{\it F}, \\ {\tt
    HEIGHT}:  {\tt Number}, \\ {\tt WIFE}: {\tt Person}.$
\end{minipage}
$
\end{minipage} 
}

$\left.\rule{0cm}{2em}\right.$ 

\fbox{\begin{minipage}[t]{.5\textwidth} \noindent $\mbox{\it john}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}:29, \\ {\tt SEX}: {\it M}, \\ {\tt
    HEIGHT}:76, \\ {\tt WIFE}:mary.$
\end{minipage}
$
\end{minipage} 
}

\end{slide}

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

\begin{slide}{Ambiguities: incomplete information}

\fbox{\begin{minipage}[t]{.7\textwidth} \noindent $\mbox{\tt 29'er}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}:29, \\ {\tt SEX}: {\it M}, \\ {\tt
    HEIGHT}: {\tt Number}, \\ {\tt WIFE}: {\tt Person}.$
\end{minipage}
$
\end{minipage} 
}

$\left.\rule{0cm}{2em}\right.$ 

\fbox{\begin{minipage}[t]{.7\textwidth} \noindent $\mbox{\it john}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}:29, \\ {\tt SEX}: {\it M}, \\ {\tt
    HEIGHT}: {\tt Number}, \\ {\tt WIFE}: {\tt Person}.$
\end{minipage}
$
\end{minipage} 
}

\end{slide}

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

\begin{slide}{Ambiguities: is-a}

Sub-class:

\hspace{2em}

\begin{center}

\fbox{\begin{minipage}[t]{.7\textwidth} \noindent $\mbox{\tt Person}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}: {\tt Number}, \\ {\tt SEX}: {\it M},{\it F}, \\ {\tt
    HEIGHT}:  {\tt Number}, \\ {\tt WIFE}: {\tt Person}.$
\end{minipage}
$
\end{minipage} 
}

$\left\Uparrow\rule{0cm}{2em}\right.$ 

\fbox{\begin{minipage}[t]{.7\textwidth} \noindent $\mbox{\tt Male}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}: {\tt Number}, \\ {\tt SEX}: {\it M}, \\ {\tt
    HEIGHT}:  {\tt Number}, \\ {\tt WIFE}: {\tt Female}.$
\end{minipage}
$
\end{minipage} 
}

\end{center}

\end{slide}

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

\begin{slide}{Ambiguities: is-a}

Instance-of:

\hspace{2em}

\begin{center}

\fbox{\begin{minipage}[t]{.7\textwidth} \noindent $\mbox{\tt Male}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}: {\tt Number}, \\ {\tt SEX}: {\it M}, \\ {\tt
    HEIGHT}:  {\tt Number}, \\ {\tt WIFE}: {\tt Female}.$
\end{minipage}
$
\end{minipage} 
}

$\left\Uparrow\rule{0cm}{2em}\right.$ 

\fbox{\begin{minipage}[t]{.5\textwidth} \noindent $\mbox{\it john}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}:35, \\ {\tt SEX}: {\it M}, \\ {\tt
    HEIGHT}:76, \\ {\tt WIFE}:mary.$
\end{minipage}
$
\end{minipage} 
}

\end{center}

\end{slide}

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

\begin{slide}{Ambiguities: is-a}

Instance-of:

\hspace{2em}

\begin{center}

\fbox{\begin{minipage}[t]{.7\textwidth} \noindent $\mbox{\tt 29'er}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}:29, \\ {\tt SEX}: {\it M}, \\ {\tt
    HEIGHT}: {\tt Number}, \\ {\tt WIFE}: {\tt Person}.$
\end{minipage}
$
\end{minipage} 
}

$\left\Uparrow\rule{0cm}{2em}\right.$ 

\fbox{\begin{minipage}[t]{.7\textwidth} \noindent $\mbox{\it john}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}:29, \\ {\tt SEX}: {\it M}, \\ {\tt
    HEIGHT}: {\tt Number}, \\ {\tt WIFE}: {\tt Person}.$
\end{minipage}
$
\end{minipage} 
}

\end{center}

\end{slide}

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

\begin{slide}{Ambiguities: relations}

Implicit relation:

\hspace{2em}

\begin{center}

\fbox{\begin{minipage}[t]{.5\textwidth} \noindent $\mbox{\it john}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}:35, \\ {\tt SEX}: {\it M}, \\ {\tt
    HEIGHT}:76, \\ {\underline {\tt WIFE}}:mary.$
\end{minipage}
$
\end{minipage} 
}

$\left.\rule{0cm}{2em}\right.$ 

\fbox{\begin{minipage}[t]{.6\textwidth} \noindent $\mbox{\it mary}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}:32, \\ {\tt SEX}: {\it F}, \\ {\tt
    HEIGHT}:59, \\ {\underline {\tt HUSBAND}}:john.$
\end{minipage}
$
\end{minipage} 
}

\end{center}

\end{slide}

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

\begin{slide}{Ambiguities: relations}

Explicit relation:

\begin{center}

\fbox{\begin{minipage}[t]{.5\textwidth} \noindent $\mbox{\it john}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}:35, \\ {\tt SEX}: {\it M}, \\ {\tt
    HEIGHT}:76.$
\end{minipage}
$
\end{minipage} 
}

$\left.\rule{0cm}{2em}\right.$ 

\fbox{\begin{minipage}[t]{.6\textwidth} \noindent $\mbox{\it mary}:
\begin{minipage}[t]{.6\textwidth} $ {\tt AGE}:32, \\ {\tt SEX}: {\it F}, \\ {\tt
    HEIGHT}:59.$
\end{minipage}
$
\end{minipage} 
}

$\left.\rule{0cm}{2em}\right.$ 

\fbox{\begin{minipage}[t]{.7\textwidth} \noindent $\mbox{\it m-j-family}:
\begin{minipage}[t]{.6\textwidth} $ {\underline {\tt WIFE}}:mary, \\ {\underline {\tt
      HUSBAND}}:john.$ \end{minipage} $ \end{minipage} }

\end{center}

\end{slide}

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

\begin{slide}{Ambiguities: relations}

Special relation:

\hspace{2em}

\begin{center}

{\setlength{\unitlength}{2em}\small
\begin{picture}(10,1)
\thinlines
\put(0,0){\makebox(0,0){\fbox{\tt Car}}}
\put(1,0){\vector(1,0){3}}
\put(2.5,0.5){\makebox(0,0){\tt HAS-PART}}
\put(5,0){\makebox(0,0){\fbox{\tt Engine}}}
\end{picture}}

{\setlength{\unitlength}{2em}\small
\begin{picture}(10,1)
\thinlines
\put(0,0){\makebox(0,0){\fbox{\tt Engine}}}
\put(1,0){\vector(1,0){3}}
\put(2.5,0.5){\makebox(0,0){\tt HAS-PART}}
\put(5,0){\makebox(0,0){\fbox{\tt Valve}}}
\end{picture}}

\vspace{2em}

$\Longrightarrow$

\vspace{2em}

{\setlength{\unitlength}{2em}\small
\begin{picture}(10,1)
\thinlines
\put(0,0){\makebox(0,0){\fbox{\tt Car}}}
\put(1,0){\vector(1,0){3}}
\put(2.5,0.5){\makebox(0,0){\tt HAS-PART}}
\put(5,0){\makebox(0,0){\fbox{\tt Valve}}}
\end{picture}}

\end{center}

\end{slide}

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

\begin{slide}{Ambiguities: relations}

Normal relation:

\hspace{2em}

\begin{center}

{\setlength{\unitlength}{2em}\small
\begin{picture}(10,1)
\thinlines
\put(0,0){\makebox(0,0){\fbox{\it John}}}
\put(1,0){\vector(1,0){3}}
\put(2.5,0.5){\makebox(0,0){\tt HAS-CHILD}}
\put(5,0){\makebox(0,0){\fbox{\it Ronald}}}
\end{picture}}

{\setlength{\unitlength}{2em}\small
\begin{picture}(10,1)
\thinlines
\put(0,0){\makebox(0,0){\fbox{\it Ronald}}}
\put(1,0){\vector(1,0){3}}
\put(2.5,0.5){\makebox(0,0){\tt HAS-CHILD}}
\put(5,0){\makebox(0,0){\fbox{\it Bill}}}
\end{picture}}

\vspace{2em}

$\not\Longrightarrow$

\vspace{2em}

{\setlength{\unitlength}{2em}\small
\begin{picture}(10,1)
\thinlines
\put(0,0){\makebox(0,0){\fbox{\it John}}}
\put(1,0){\vector(1,0){3}}
\put(2.5,0.5){\makebox(0,0){\tt HAS-CHILD}}
\put(5,0){\makebox(0,0){\fbox{\it Bill}}}
\end{picture}}

\end{center}

\end{slide}

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

\begin{slide}{Ambiguities: default}

The {\em Nixon} diamond:

\vspace{2em}

\begin{center}
{\small
\setlength{\unitlength}{2em}
\begin{picture}(2,6)
\put(1,1){\vector(1,1){1}}
\put(1,1){\vector(-1,1){1}}
\put(0,4){\vector(1,1){1}}
\put(2,4){\vector(-1,1){1}}
\put(1,0.5){\makebox(0,0){\it nixon}}
\put(0,3){\makebox(0,0){\tt Quaker~~~~~~}}
\put(2,3){\makebox(0,0){\tt ~~~~~~Republican}}
\put(1,5.5){\makebox(0,0){\tt President}}
\end{picture}
}
\end{center}

\vspace{2em}

Quakers are pacifist, Republicans are not pacifist.

$\Longrightarrow$ ~ Is Nixon pacifist or not pacifist?

\end{slide}

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

\overlays{6}{
\begin{slide}{Ambiguities: quantification}

What is the exact meaning of:

\vspace{1em}

\begin{center}
{\setlength{\unitlength}{2em}\small
\begin{picture}(10,1)
\thinlines
\put(0,0){\makebox(0,0){\fbox{\tt Frog}}}
\put(1,0){\vector(1,0){3}}
\put(2.5,0.5){\makebox(0,0){\tt HAS-COLOR}}
\put(5,0){\makebox(0,0){\fbox{\tt Green}}}
\end{picture}}
\end{center}

\vspace{2em}

\begin{itemize}
\item \fromSlide{2}{Every frog is just green}
\item \fromSlide{3}{ Every frog is also green}
\item \fromSlide{4}{ Every frog is of some green}
\item \fromSlide{5}{ There is a frog, which is just green}
\item \fromSlide{5}{ $\ldots$}
\item \fromSlide{6}{ Frogs are typically green, but there may be exceptions}
\end{itemize}

\end{slide}}

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

\begin{slide}{False friends}

\begin{itemize}
  
\item The meaning of object-oriented representations is logically very
  ambiguous.
  
\item The appeal of the graphical nature of object-oriented representation
  tools has led to forms of reasoning that do not fall into standard logical
  categories, and are not yet very well understood.
  
\item It is unfortunately much easier to develop some algorithm that appears
  to reason over structures of a certain kind, than to {\em justify} its
  reasoning by explaining what the structures are saying about the domain.
\end{itemize}

\end{slide}

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

\begin{slide}{A structured logic}

\begin{itemize}
\item Any (basic) Description Logic is a fragment of FOL.
\item The representation is at the {\em predicate level}: no variables are
  present in the formalism.
\item A Description Logic theory is divided in two parts:
  \begin{itemize}
  \item the definition of predicates ({\em TBox})
  \item the assertion over constants ({\em ABox})
  \end{itemize}
\item Any (basic) Description Logic is a subset of ${\cal L}_3$, i.e. the
  function-free FOL using only at most {\em three} variable names.
\end{itemize}


\end{slide}

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

\begin{slide}{Why not FOL}

If FOL is directly used without additional restrictions then

\begin{itemize}
\item the structure of the knowledge is destroyed, and it can not be
  exploited for driving the inference;
\item the expressive power is too high for obtaining decidable and
  efficient inference problems;
\item the inference power may be too low for expressing interesting,
  but still decidable theories.
\end{itemize}


\end{slide}

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

\begin{slide}{Structured Inheritance Networks: \Klone}

\begin{itemize}
\item Structured Descriptions
  \begin{itemize}
  \item corresponding to the complex relational structure of objects,
  \item built using a restricted set of epistemologically adequate
    constructs
  \end{itemize}
\item distinction between conceptual ({\em terminological}\/) and
  instance ({\em assertional}\/) knowledge;
\item central role of automatic classification for determining the
  subsumption -- i.e., universal implication -- lattice;
\item strict reasoning, no defaults.
\end{itemize}


\end{slide}

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

\begin{slide}{Types of the TBox Language}

\begin{itemize}

        \item{\bf Concepts} -- denote {\em entities}\\
          \smalltab(unary predicates, classes)
\vspace{1em}

          {\it Example:} {\tt Student, Married}

\vspace{0.5em}
          $\{ x\mid\ {\tt Student}(x)\},$\\ $\{ x\mid\ {\tt Married}(x)\}$

\vspace{2em}
        
        \item{\bf Roles}-- denote {\em properties}\\
          \smalltab(binary predicates, relations)
\vspace{1em}

              {\it Example:} {\tt FRIEND, LOVES}

\vspace{0.5em}
          $\{ \langle x,y\rangle\mid\ {\tt FRIEND}(x,y)\},$\\ 
           $\{ \langle x,y\rangle\mid\ {\tt LOVES}(x,y)\}$
        
\end{itemize}

\end{slide}

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

\begin{slide}{Concept Expressions}


Description Logics organize the information in classes -- {\em concepts} --
gathering homogeneous data, according to the relevant common properties
among a collection of instances.

\vspace{3em}

{\it Example:} 

\vspace{1em}

 ${\tt Student} \And \some{\tt FRIEND}{\tt Married}$

\vspace{2em}

 $\{ x \mid$
 \parbox[t]{20em}{$
 {\tt Student}(x) \wedge \\
 \exists y\per{\tt FRIEND}(x,y)\wedge{\tt Married}(y)\}
 $}
              


\end{slide}

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

\begin{slide}{A note on $\lambda$'s}

In general, $\lambda$ is an explicit way of forming {\em names} of functions:

\begin{center}
  \fbox{$\lambda x\per\ f(x)$} is the function that, given input $x$,
  returns the value $f(x)$
\end{center}

The $\lambda$-conversion rule says that:

\begin{center}
$(\lambda x\per\ f(x))(a)=f(a)$ 
\end{center}

Thus, \fbox{$\lambda x\per\ (x^2 + 3x -1)$} is the function that applied to
2 gives 9:

\begin{center}
$(\lambda x\per\ (x^2 + 3x -1))(2)=9$
\end{center}

We can give a name to this function, so that:

\begin{center}
$f_{231}\doteq\lambda x\per\ (x^2 + 3x -1)$\\
$f_{231}(2)=9$
\end{center}

\end{slide}

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

\begin{slide}{$\lambda$ to define predicates}

Predicates are special case of functions: they are {\it truth} functions.
So, if we think of a formula $P(x)$ as denoting a truth value which may vary
as the value of $x$ varies, we have:

\begin{center}
  $\lambda x\per\ P(x)$ denotes a function from domain individuals to truth
  values.
\end{center}

In this way, as we have learned from FOL, $P$ denotes exactly the set of
individuals for which it is true. So, $P(a)$ means that the individual $a$
makes the predicate $P$ true, or, in other words, that $a$ is in the
extension of $P$.
\end{slide}

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

\begin{slide}{}
  
For example, we can write for the {\em unary} predicate {\tt Person}:

\begin{center}
${\tt Person}\doteq\lambda x\per\ {\tt Person}(x)$
\end{center}

which is equivalent to say that {\tt Person} denotes the {\em set} of
persons:

\begin{center}
  ${\tt Person}\ \leadsto\ \{ x\mid\ {\tt Person}(x)\}$\\
  $\Int{\tt Person}$ $= \{ x\mid\ {\tt Person}(x)\}$\\
  ${\tt Person}({\it john}) ~~~ \mbox{\sc iff} ~~~ \Int{\it john}\in\Int{\tt
    Person}$
\end{center}

In the same way for the {\em binary} predicate {\tt FRIEND}:

\begin{center}
${\tt FRIEND}\doteq\lambda x,y\per\ {\tt FRIEND}(x,y)$\\
$\Int{\tt FRIEND}$ $= \{ \langle x,y\rangle\mid\ {\tt FRIEND}(x,y)\}$
\end{center}


\end{slide}

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

\begin{slide}{}
  
  The functions we are defining with the $\lambda$ operator may be
  parametric:

\begin{center}
  ${\tt Student}\And {\tt Worker}$ = $\lambda x\per\ ({\tt
    Student}(x)\wedge{\tt Worker}(x))$
  
  $\Int{({\tt Student}\And {\tt Worker})}$ = $\{ x\mid\ ({\tt
    Student}(x)\wedge{\tt Worker}(x)\}$

  $\Int{({\tt Student}\And {\tt Worker})}$ = $\Int{\tt
    Student}\cap\Int{\tt Worker}$
\end{center}

\vspace{1em}

{\em (Verify as exercise)}

\end{slide}

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

\begin{slide}{Concept Expressions}


$\Int{({\tt Student} \And \some{\tt FRIEND}{\tt Married})}$

\vspace{.5ex}
=
\vspace{.5ex}

$\Int{({\tt Student})} \cap \Int{(\some{\tt FRIEND}{\tt Married})}$

\vspace{.5ex}
=
\vspace{.5ex}

 $\{ x \mid {\tt Student}(x)\}\cap$ \\
 $\{ x \mid \exists y\per{\tt FRIEND}(x,y)\wedge{\tt Married}(y)\}
 $

\vspace{.5ex}
=
\vspace{.5ex}

 $\{ x \mid$
 \parbox[t]{20em}{$
 {\tt Student}(x) \wedge \\
 \exists y\per{\tt FRIEND}(x,y)\wedge{\tt Married}(y)\}
 $}
              


\end{slide}

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

\begin{slide}{Objects: classes}

{\sf
Student

\begin{tabular}{|ll|}
        \hline
        Person &   \\
        \hline
        name: & [String]  \\
        address: & [String]  \\
        enrolled: & [Course]  \\
        \hline
\end{tabular}
}

%\vspace{1em}

$\{x\mid\ {\tt Student}(x)\} =
\{ x\mid$ 
 \parbox[t]{.6\textwidth} {
   $ {\tt Person}(x)\wedge \\
   (\exists y\per\ {\tt NAME}(x,y)\wedge{\tt String}(y))\wedge \\
   (\exists z\per\ {\tt ADDRESS}(x,z)\wedge{\tt String}(z))\wedge \\
   (\exists w\per\ {\tt ENROLLED}(x,w)\wedge{\tt Course}(w))\ \}$
   }
   
%\vspace{1em}

${\tt Student}\doteq
\parbox[t]{.6\textwidth}{
   $
   {\tt Person}\And \\
   \some{\tt NAME}{\tt String} \And \\
   \some{\tt ADDRESS}{\tt String} \And \\
   \some{\tt ENROLLED}{\tt Course}
   $}
$

\end{slide}

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

\begin{slide}{Objects: instances}

{\sf
\begin{tabular}{|ll|}
        \hline
        s1: Student &   \\
        \hline
        name: & ``John''  \\
        address: & ``Abbey Road$\ldots$''  \\
        enrolled: & cs415  \\
        \hline
\end{tabular}
}

\vspace{2em}

${\tt Student}({\tt s1})\wedge$ \\
$ {\tt NAME}({\tt s1},``{\tt john}")\wedge{\tt String}(``{\tt john}") 
  \wedge $\\
$ {\tt ADDRESS}({\tt s1},``{\tt abbey\mbox{-}road}")\wedge
 {\tt String}(``{\tt abbey\mbox{-}road}") \wedge $\\
$ {\tt ENROLLED}({\tt s1},{\tt cs415})\wedge{\tt Course}({\tt cs415})
$

\end{slide}


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

\begin{slide}{Semantic Networks}

\begin{center}
{\sf\setlength{\unitlength}{1.5ex}\scriptsize
\begin{picture}(25,10)
\thinlines    \put(16,1){\oval(10,2)}
              \put(11.5,1){Working\mbox{-}student}
\thicklines   \put(12,2){\vector(-1,1){5}}
              \put(20,2){\vector(1,1){5}}
              
\thinlines    \put(7,9){enrolled}
              \put(21.3,9){teaches}
              
              \put(7,8){\vector(1,0){5}}
              \put(25,8){\vector(-1,0){5}}
              
              \put(3.5,8){\oval(7,2)}
              \put(16,8){\oval(8,2)}
              \put(28.5,8){\oval(7,2)}
              
              \put(1,8){Student}
              \put(14,8){Course}
              \put(26,8){Professor}
\end{picture}}
\end{center}

\vspace{2em}

\MiniPage{
$\forall x\per\ $
   \begin{minipage}[t]{16em}$
   {\tt Student}(x) \rightarrow\\
   \exists y\per\ {\tt ENROLLED}(x,y)\wedge{\tt Course}(y)$
   \end{minipage}
\vspace{1ex}\\
$\forall x\per\ $
   \begin{minipage}[t]{16em}$
   {\tt Professor}(x) \rightarrow\\
   \exists y\per\ {\tt TEACHES}(x,y)\wedge{\tt Course}(y)$
   \end{minipage}
\vspace{1ex}\\
$\forall x\per\ $
   \begin{minipage}[t]{16em}$
   {\tt Working\mbox{-}student}(x)\rightarrow\\
   {\tt Student}(x)\wedge{\tt Professor}(x)$
   \end{minipage}
   }%
{
${\tt Student}~\IsSubs~\some{\tt ENROLLED}{\tt Course}$
\vspace{1ex}\\
${\tt Professor}~\IsSubs~\some{\tt TEACHES}{\tt Course}$
\vspace{1ex}\\
${\tt Working\mbox{-}student}~\IsSubs~ {\tt Student}$
\vspace{1ex}\\
${\tt Working\mbox{-}student}~\IsSubs~ {\tt Professor}$
}

\end{slide}

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

\begin{slide}{Quantification}

\begin{center}
{\setlength{\unitlength}{2em}\small
\begin{picture}(10,1)
\thinlines
\put(0,0){\makebox(0,0){\fbox{\tt Frog}}}
\put(1,0){\vector(1,0){3}}
\put(2.5,0.5){\makebox(0,0){\tt HAS-COLOR}}
\put(5,0){\makebox(0,0){\fbox{\tt Green}}}
\end{picture}}
\end{center}

\vspace{1em}

\begin{itemize}
\item ${\tt Frog}~\IsSubs~\some{\tt HAS{-}COLOR}{\tt Green}$: \\
  Every frog is also green
\item ${\tt Frog}~\IsSubs~\all{\tt HAS{-}COLOR}{\tt Green}$: \\
  Every frog is just green
\item ${\tt Frog}~\IsSubs~\all{\tt HAS{-}COLOR}{\tt Green}$\\
  ${\tt Frog}(x),\ {\tt HAS{-}COLOR}(x,y)$: \\
  There is a frog, which is just green
\end{itemize}

\end{slide}

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

\begin{slide}{Quantification: existential}

\begin{center}
{\setlength{\unitlength}{2em}\small
\begin{picture}(10,1)
\thinlines
\put(0,0){\makebox(0,0){\fbox{\tt Frog}}}
\put(1,0){\vector(1,0){3}}
\put(2.5,0.5){\makebox(0,0){\tt HAS-COLOR}}
\put(5,0){\makebox(0,0){\fbox{\tt Green}}}
\end{picture}}
\end{center}

\vspace{1ex}

Every frog is also green

\vspace{1ex}

${\tt Frog}~\IsSubs~\some{\tt HAS{-}COLOR}{\tt Green}$

$\forall x\per\ {\tt Frog}(x)\rightarrow $ \\
$\smalltab\exists y\per\ ({\tt HAS{-}COLOR}(x,y)\wedge {\tt Green}(y))$

\vspace{1ex}

{\em Exercise: is this a model?}
\\
{\tt Frog}({\it oscar}), {\tt Green}({\it green}), \\
{\tt HAS{-}COLOR}({\it oscar},{\it green}),\\
{\tt Red}({\it red}), \\
{\tt HAS{-}COLOR}({\it oscar},{\it red}).

\end{slide}

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

\begin{slide}{Quantification: universal}

\begin{center}
{\setlength{\unitlength}{2em}\small
\begin{picture}(10,1)
\thinlines
\put(0,0){\makebox(0,0){\fbox{\tt Frog}}}
\put(1,0){\vector(1,0){3}}
\put(2.5,0.5){\makebox(0,0){\tt HAS-COLOR}}
\put(5,0){\makebox(0,0){\fbox{\tt Green}}}
\end{picture}}
\end{center}

\vspace{1ex}

Every frog is only green

\vspace{1ex}

${\tt Frog}~\IsSubs~\all{\tt HAS{-}COLOR}{\tt Green}$

$\forall x\per\ {\tt Frog}(x)\rightarrow $ \\
$\smalltab\forall y\per\ ({\tt HAS{-}COLOR}(x,y)\rightarrow {\tt Green}(y))$

\vspace{1ex}

\MiniPage{
{\em Exercise: is this a model?}
\\
{\tt Frog}({\it oscar}), {\tt Green}({\it green}), \\
{\tt HAS{-}COLOR}({\it oscar},{\it green}),\\
{\tt Red}({\it red}), \\
{\tt HAS{-}COLOR}({\it oscar},{\it red}).
}
%
{
{\em and this?}
\\
{\tt Frog}({\it sing}), \\
{\tt AGENT}({\it sing},{\it oscar}).}

\end{slide}

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

\overlays{3}{
\begin{slide}{Analytic reasoning (intuition)}

Person
\\
{\it subsumes}
\\
(Person {\bf with every} male friend {\bf is a} doctor)
\\
{\it subsumes}
\\
(Person {\bf with every} friend {\bf is a}\\
\smalltab (Doctor {\bf with a} specialty {\bf is} surgery))

\vspace{1em}
\fromSlide{2}{
(Person {\bf with} $\geq$ 2 children)
\\
{\it subsumes}
\\
(Person {\bf with} $\geq$ 3 male children)
}
\vspace{1em}

\fromSlide{3}{
(Person {\bf with} $\geq$ 3 young children)
\\
{\it disjoint}
\\
(Person {\bf with} $\leq$ 2 children)
}
\end{slide}}

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

\end{document}
