From f24af7b16a6b3df64e14194648ec1f90ade1f4d1 Mon Sep 17 00:00:00 2001 From: NotXia <35894453+NotXia@users.noreply.github.com> Date: Fri, 8 Dec 2023 20:58:52 +0100 Subject: [PATCH] Add FAIKR2 probabilistic logic programming --- .../img/_probabilistic_logic_example.drawio | 34 +++++++ .../img/_probabilistic_logic_example.pdf | Bin 0 -> 31445 bytes .../module2/main.tex | 1 + .../sections/_probabilistic_reasoning.tex | 94 ++++++++++++++++++ 4 files changed, 129 insertions(+) create mode 100644 src/fundamentals-of-ai-and-kr/module2/img/_probabilistic_logic_example.drawio create mode 100644 src/fundamentals-of-ai-and-kr/module2/img/_probabilistic_logic_example.pdf create mode 100644 src/fundamentals-of-ai-and-kr/module2/sections/_probabilistic_reasoning.tex diff --git a/src/fundamentals-of-ai-and-kr/module2/img/_probabilistic_logic_example.drawio b/src/fundamentals-of-ai-and-kr/module2/img/_probabilistic_logic_example.drawio new file mode 100644 index 0000000..2e48d2b --- /dev/null +++ b/src/fundamentals-of-ai-and-kr/module2/img/_probabilistic_logic_example.drawio @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/fundamentals-of-ai-and-kr/module2/img/_probabilistic_logic_example.pdf b/src/fundamentals-of-ai-and-kr/module2/img/_probabilistic_logic_example.pdf new file mode 100644 index 0000000000000000000000000000000000000000..40b90154068d1cc36657617fe415159598b6e4df GIT binary patch literal 31445 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 b7nhT>p`)|A literal 0 HcmV?d00001 diff --git a/src/fundamentals-of-ai-and-kr/module2/main.tex b/src/fundamentals-of-ai-and-kr/module2/main.tex index 810bd74..0ec94e2 100644 --- a/src/fundamentals-of-ai-and-kr/module2/main.tex +++ b/src/fundamentals-of-ai-and-kr/module2/main.tex @@ -12,5 +12,6 @@ \input{sections/_descriptive_logic.tex} \input{sections/_semantic_web.tex} \input{sections/_time_reasoning.tex} + \input{sections/_probabilistic_reasoning.tex} \end{document} \ No newline at end of file diff --git a/src/fundamentals-of-ai-and-kr/module2/sections/_probabilistic_reasoning.tex b/src/fundamentals-of-ai-and-kr/module2/sections/_probabilistic_reasoning.tex new file mode 100644 index 0000000..f50952c --- /dev/null +++ b/src/fundamentals-of-ai-and-kr/module2/sections/_probabilistic_reasoning.tex @@ -0,0 +1,94 @@ +\chapter{Probabilistic logic reasoning} + +\begin{description} + \item[Probabilistic logic programming] \marginnote{Probabilistic logic programming} + Adds probability distributions over logic programs allowing to define different worlds. + Joint distributions can also be defined over worlds and allows to answer to queries. +\end{description} + + + +\section{Logic programs with annotated disjunctions (LPAD)} +\marginnote{LPAD} + +\subsection{Syntax} + +\begin{description} + \item[\texttt{null}] + Atom that can only appear in the head of a clause and + cancels the clause (i.e. equivalent of not having the clause). +\end{description} + +The head of each clause is defined as a disjunction of atoms, each with a probability. +More specifically, each clause has a probability distribution over its head. + +\begin{example} + \phantom{} + \begin{lstlisting} + sneezing(X):0.7 ; null:0.3 :- flu(X). + sneezing(X):0.8 ; null:0.2 :- hay_fever(X). + \end{lstlisting} +\end{example} + + +\subsection{Distribution semantics} + +\begin{description} + \item[Worlds] \marginnote{World} + Given a clause $C$ and a substitution $\theta$ such that $C\theta$ is ground, + the following operations are defined for LPAD: + \begin{descriptionlist} + \item[Atomic choice] \marginnote{Atomic choice} + An atomic choice $(C, \theta, i)$ is the selection of the $i$-th atom in the head of $C$ for grounding. + + \item[Composite choice] \marginnote{Composite choice} + A composite choice $\kappa$ is a set of atomic choices. + The probability of a composite choice is the following: + \[ \prob{\kappa} = \prod_{(C, \theta, i) \in \kappa} \prob{C, i} \] + where $\prob{C, i}$ is the probability of choosing the $i$-th atom in the head of $C$. + + \item[Selection] \marginnote{Selection} + A selection $\sigma$ is a composite choice where an atom from the head of each clause for each grounding has been chosen. + In other words, a selection can be defined only when the program is ground. + + A selection $\sigma$ identifies a world $w_\sigma$ and has probability: + \[ \prob{w_\sigma} = \prob{\sigma} = \prod_{(C, \theta, i) \in \sigma} \prob{C, i} \] + \end{descriptionlist} + + \begin{example} + Given the program: + \begin{lstlisting} + sneezing(X):0.7 ; null:0.3 :- flu(X). + sneezing(X):0.8 ; null:0.2 :- hay_fever(X). + \end{lstlisting} + + The possible worlds are: + \begin{center} + \includegraphics[width=0.7\textwidth]{img/_probabilistic_logic_example.pdf} + \end{center} + \end{example} + + \item[Queries] \marginnote{Queries} + Given a ground query $Q$ and a world $w$, the probability of $Q$ being true in $w$ is trivially: + \[ + \prob{Q \mid w} + \begin{cases} + 1 & \text{ if $Q$ is true in $w$}\\ + 0 & \text{ otherwise} + \end{cases} + \] + + The overall probability of $Q$ is: + \[ \prob{Q} = \sum_w \prob{Q, w} = \sum_w \prob{Q \mid w}\prob{w} = \sum_{w \models Q} \prob{w} \] + + \begin{example} + Given the program: + \begin{lstlisting} + sneezing(X):0.7 ; null:0.3 :- flu(X). + sneezing(X):0.8 ; null:0.2 :- hay_fever(X). + \end{lstlisting} + + The probability of \texttt{sneezing(bob)} is: + \[ \prob{\texttt{sneezing(bob)}} = \prob{w_1} + \prob{w_2} + \prob{w_3} \] + \end{example} +\end{description} \ No newline at end of file