Commit 3f125ca5bf264c9c0d0182ad6e188b805da849db
1 parent
693700d7
Exists in
master
Pre-paper rewrite, with new content for the EQ.REL
Showing
1 changed file
with
109 additions
and
49 deletions
Show diff stats
text/paper_01/pre-paper.tex
1 | 1 | \documentclass[a4paper, 12pt]{article} |
2 | 2 | |
3 | +\usepackage[ | |
4 | + bibstyle=numeric, | |
5 | + citestyle=numeric | |
6 | +]{biblatex} %Imports biblatex package | |
7 | +\addbibresource{zugzwang.bib} %Import the bibliography file | |
8 | + | |
3 | 9 | \usepackage[x11colors]{xcolor} |
4 | 10 | % |
5 | 11 | \usepackage{tikz} |
... | ... | @@ -18,12 +24,15 @@ |
18 | 24 | \hypersetup{ |
19 | 25 | colorlinks=true, |
20 | 26 | linkcolor=blue, |
27 | + citecolor=blue, | |
21 | 28 | } |
22 | 29 | % |
23 | 30 | \usepackage{commath} |
24 | 31 | \usepackage{amsthm} |
25 | 32 | \newtheorem{assumption}{Assumption} |
33 | +\newtheorem{definition}{Definition} | |
26 | 34 | \usepackage{amssymb} |
35 | +\usepackage[nice]{nicefrac} | |
27 | 36 | % |
28 | 37 | % Local commands |
29 | 38 | % |
... | ... | @@ -41,20 +50,35 @@ |
41 | 50 | \newcommand{\uset}[1]{\ensuremath{\left|{#1}\right>}} |
42 | 51 | \newcommand{\lset}[1]{\ensuremath{\left<{#1}\right|}} |
43 | 52 | \newcommand{\pr}[1]{\ensuremath{\mathrm{P}\at{#1}}} |
53 | +\newcommand{\class}[1]{\ensuremath{\nicefrac{#1}{\sim}}} | |
54 | +\newcommand{\urep}[1]{\ensuremath{\nicefrac{#1}{\varnothing}}} | |
55 | +\newcommand{\lrep}[1]{\ensuremath{\nicefrac{\varnothing}{#1}}} | |
56 | +\newcommand{\rep}[2]{\nicefrac{#1}{#2}} | |
44 | 57 | \newcommand{\given}{\ensuremath{~\middle|~}} |
58 | +\newcommand{\todo}[1]{\textbf{\color{orange}~(~#1~)~}} | |
45 | 59 | |
46 | 60 | \title{Zugzwang\\\textit{Logic and Artificial Intelligence}} |
47 | -\author{Francisco Coelho\\ \texttt{fc@uevora.pt}} | |
61 | +\author{ | |
62 | + \begin{tabular}{cc} | |
63 | + Francisco Coelho & Bruno Dinis\\ | |
64 | + \texttt{fc@uevora.pt} & \texttt{bruno.dinis@uevora.pt} | |
65 | + \end{tabular} | |
66 | +} | |
48 | 67 | |
49 | 68 | \begin{document} |
69 | + | |
50 | 70 | \maketitle |
51 | 71 | |
72 | +\nocite{*} | |
73 | + | |
52 | 74 | \begin{abstract} |
75 | + \todo{rewrite} | |
53 | 76 | A major limitation of logical representations is the implicit assumption that the Background Knowledge (BK) is perfect. This assumption is problematic if data is noisy, which is often the case. Here we aim to explore how ASP specifications with probabilistic facts can lead to characterizations of probability functions on the specification's domain. |
54 | 77 | \end{abstract} |
55 | 78 | |
56 | -\section{Introduction and Motivation } | |
79 | +\section{Introduction and Motivation} | |
57 | 80 | |
81 | +\todo{rewrite} | |
58 | 82 | Answer Set Programming (ASP) is a logic programming paradigm based on the Stable Model semantics of Normal Logic Programs (NP) that can be implemented using the latest advances in SAT solving technology. ASP is a truly declarative language that supports language constructs such as disjunction in the head of a clause, choice rules, and hard and weak constraints. |
59 | 83 | |
60 | 84 | The Distribution Semantics (DS) is a key approach to extend logical representations with probabilistic reasoning. Probabilistic Facts (PF) are the most basic stochastic DS primitive and they take the form of logical facts, $a$, labelled with a probability, such as $p::a$; Each probabilistic fact represents a boolean random variable that is true with probability $p$ and false with probability $1 - p$. A (consistent) combination of the PFs defines a \textit{total choice} $c = \set{p::a, \ldots}$ such that |
... | ... | @@ -93,7 +117,7 @@ In summary, if an ASP specification is intended to describe some observable syst |
93 | 117 | |
94 | 118 | \begin{enumerate} |
95 | 119 | \item The observations can be used to estimate the value of the parameters (such as $x$ above and others entailed from further clauses). |
96 | - \item With a probability set for the stable models, we want to extend it to all the samples (\textit{i.e.} consistent sets of literals) of the specification. | |
120 | + \item With a probability set for the stable models, we want to extend it to all the events of the specification. | |
97 | 121 | \item This extended probability can then be related to the \textit{empirical distribution}, using a probability divergence, such as Kullback-Leibler; and the divergence value used as a \textit{performance} measure of the specification with respect to the observations. |
98 | 122 | \item If that specification is only but one of many possible candidates then that performance measure can be used, \textit{e.g.} as fitness, by algorithms searching (optimal) specifications of a dataset of observations. |
99 | 123 | \end{enumerate} |
... | ... | @@ -102,49 +126,92 @@ Currently, we are on the step two above: Extending a probability function (with |
102 | 126 | |
103 | 127 | \section{Extending Probabilities} |
104 | 128 | |
105 | -\begin{center} | |
106 | - \begin{tikzpicture} | |
107 | - \node[event] (E) {$\bot$}; | |
108 | - \node[tchoice, above left = of E] (a) {$a$}; | |
109 | - \node[smodel, above left = of a] (ab) {$ab$}; | |
110 | - \node[smodel, above right = of a] (ac) {$ac$}; | |
111 | - \node[event, below = of ab] (b) {$b$}; | |
112 | - \node[event, below = of ac] (c) {$c$}; | |
113 | - \node[event, above right = of ab] (abc) {$abc$}; | |
114 | - \node[indep, right = of ac] (bc) {$bc$}; | |
115 | - \node[tchoice, smodel, below right = of bc] (A) {$\co{a}$}; | |
116 | - \node[event, above = of A] (Ac) {$\co{a}c$}; | |
117 | - \node[event, above right = of Ac] (Abc) {$\co{a}bc$}; | |
118 | - % ---- | |
119 | - \draw[proptc] (a) to[bend left] (ab); | |
120 | - \draw[proptc] (a) to[bend right] (ac); | |
121 | - | |
122 | - \draw[propsm] (ab) to[bend left] (abc); | |
123 | - \draw[propsm] (ac) to[bend right] (abc); | |
124 | - | |
125 | - \draw[propsm] (A) to (Ac); | |
126 | - \draw[propsm] (A) to (Abc); | |
127 | - | |
128 | - \draw[doubt] (ab) to[bend right] (E); | |
129 | - \draw[doubt] (ac) to[bend right] (E); | |
130 | - \draw[doubt] (A) to[bend left] (E); | |
131 | - | |
132 | - \draw[doubt] (ab) to[bend right] (b); | |
133 | - \draw[doubt] (ac) to[bend left] (c); | |
134 | - \draw[doubt] (ab) to[bend left] (a); | |
135 | - \draw[doubt] (ac) to[bend right] (a); | |
136 | - \draw[doubt] (c) to[bend right] (bc); | |
137 | - \draw[doubt] (abc) to[bend left] (bc); | |
138 | - \draw[doubt] (Abc) to (bc); | |
139 | - \draw[doubt] (c) to[bend right] (Ac); | |
140 | - \end{tikzpicture} | |
141 | -\end{center} | |
129 | +\begin{figure}[t] | |
130 | + \begin{center} | |
131 | + \begin{tikzpicture} | |
132 | + \node[event] (E) {$\bot$}; | |
133 | + \node[tchoice, above left = of E] (a) {$a$}; | |
134 | + \node[smodel, above left = of a] (ab) {$ab$}; | |
135 | + \node[smodel, above right = of a] (ac) {$ac$}; | |
136 | + \node[event, below = of ab] (b) {$b$}; | |
137 | + \node[event, below = of ac] (c) {$c$}; | |
138 | + \node[event, above right = of ab] (abc) {$abc$}; | |
139 | + \node[indep, right = of ac] (bc) {$bc$}; | |
140 | + \node[tchoice, smodel, below right = of bc] (A) {$\co{a}$}; | |
141 | + \node[event, above = of A] (Ac) {$\co{a}c$}; | |
142 | + \node[event, above right = of Ac] (Abc) {$\co{a}bc$}; | |
143 | + % ---- | |
144 | + \draw[proptc] (a) to[bend left] (ab); | |
145 | + \draw[proptc] (a) to[bend right] (ac); | |
146 | + | |
147 | + \draw[propsm] (ab) to[bend left] (abc); | |
148 | + \draw[propsm] (ac) to[bend right] (abc); | |
149 | + | |
150 | + \draw[propsm] (A) to (Ac); | |
151 | + \draw[propsm] (A) to (Abc); | |
152 | + | |
153 | + \draw[doubt] (ab) to[bend right] (E); | |
154 | + \draw[doubt] (ac) to[bend right] (E); | |
155 | + \draw[doubt] (A) to[bend left] (E); | |
156 | + | |
157 | + \draw[doubt] (ab) to[bend right] (b); | |
158 | + \draw[doubt] (ac) to[bend left] (c); | |
159 | + \draw[doubt] (ab) to[bend left] (a); | |
160 | + \draw[doubt] (ac) to[bend right] (a); | |
161 | + \draw[doubt] (c) to[bend right] (bc); | |
162 | + \draw[doubt] (abc) to[bend left] (bc); | |
163 | + \draw[doubt] (Abc) to (bc); | |
164 | + \draw[doubt] (c) to[bend right] (Ac); | |
165 | + \end{tikzpicture} | |
166 | + \end{center} | |
167 | + \caption{Extending values, \textit{e.g.} probabilities, from total choice nodes to stable models and then to general events in a node-wise process quickly leads to coherence problems concerning probability, with no clear systematic approach.} | |
168 | +\end{figure} | |
142 | 169 | |
143 | 170 | Given an ASP specification, we consider the \textit{atoms} $a \in \fml{A}$ and \textit{literals}, $z \in \fml{L}$, \textit{events} $e \in \fml{E} \iff e \subseteq \fml{L}$ and \textit{worlds} $w \in \fml{W}$ (consistent events), \textit{total choices} $c \in \fml{C} \iff c = a \vee \neg a$ and \textit{stable models} $s \in \fml{S}$. |
144 | 171 | |
145 | 172 | % In a statistical setting, the outcomes are the literals $x$, $\neg x$ for each atom $x$, the events express a set of possible outcomes (including $\emptyset$, $\set{a, b}$, $\set{a, \neg a, b}$, \textit{etc.}), and worlds are events with no contradictions. |
146 | 173 | |
147 | -Our path, traced by equations (\ref{eq:prob.total.choice}) and (\ref{eq:prob.stablemodel} --- \ref{eq:prob.events}), starts with the probability of total choices, $\pr{C = c}$, expands it to stable models, $\pr{S = s}$, and then to worlds $\pr{W = w}$ and events $\pr{E = e}$. | |
174 | +Out path starts with a perspective of stable models as playing a role similar to \textit{prime} factors. The stable models of specification are the irreducible events entailed from that specification and any event must be interpreted under its relation with the stable models. This stance leads to definition \ref{def:rel.events}: | |
175 | + | |
176 | +\begin{definition}\label{def:rel.events} | |
177 | + Let $u,v \in \fml{E}$, and $\fml{S}, \fml{W}$ the set of stable models, resp. consistent events, of some specification. Define | |
178 | + | |
179 | + \begin{equation} | |
180 | + u \sim v \iff u,v \not\in\fml{W} \vee (\uset{u} = \uset{v} \wedge \lset{u} = \lset{v}).\label{eq:rel.events} | |
181 | + \end{equation} | |
182 | +\end{definition} | |
183 | + | |
184 | +This equivalence relation defines a partition of the events space, where each class holds a unique relation with the stable models. In particular, we can denote each class by | |
185 | +\begin{equation} | |
186 | + \class{e} = \begin{cases} | |
187 | + \star &\text{if~} e \in \fml{E} \setminus \fml{W}, \\ | |
188 | + \rep{\uset{e}}{\lset{e}} &\text{otherwise}. | |
189 | + \end{cases} | |
190 | +\end{equation} | |
191 | + | |
192 | +Consider the example from \ref{eq:example.1}. The stable models are $\fml{S} = \co{a}, ab, ac$ so the quotient set of this relation is | |
193 | +\begin{equation} | |
194 | +\begin{aligned} | |
195 | + &\star, \urep{\varnothing}, \\ | |
196 | + &\rep{\co{a}}{\co{a}} = \set{\co{a}}, \rep{ab}{ab} = \set{ab}, \rep{ac}{ac} = \set{ac}\\ | |
197 | + &\urep{\co{a}}, \urep{ab}, \urep{ac}, \lrep{\co{a}}, \lrep{ab}, \lrep{ac}, \\ | |
198 | + &\urep{\co{a}, ab}, \urep{\co{a}, ac}, \urep{ab, ac}, | |
199 | + \lrep{\co{a}, ab}, \lrep{\co{a}, ac}, \lrep{ab, ac},\\ | |
200 | + &\urep{\co{a}, ab, ac}, \lrep{\co{a}, ab, ac}. | |
201 | +\end{aligned} | |
202 | +\end{equation} | |
203 | + | |
204 | +For example, $\class{a} = \urep{ab, ac}$, $\class{abc} = \lrep{ab, ac}$ and $\class{bc} = \urep{\varnothing}$. | |
205 | + | |
206 | + | |
207 | +\begin{itemize} | |
208 | + \item Since all events within a equivalence class have the same relation with the stable models, probability assignment should be constant for the elements of that class. | |
209 | + \item So, instead of dealing with $2^6$ events, we need only to handle $19$ classes, well defined in terms of combinations of the stable models. | |
210 | + \item The probability events are going to be the \textit{classes}. | |
211 | + \item The physical system might have \textit{latent} variables, possibly also represented in the specification. These variables are never observed, so observations should be concentrated in the $\nicefrac{\uset{e}}{\varnothing}$ classes. | |
212 | +\end{itemize} | |
213 | + | |
214 | +\todo{must adapt} Our path, traced by equations (\ref{eq:prob.total.choice}) and (\ref{eq:prob.stablemodel} --- \ref{eq:prob.events}), starts with the probability of total choices, $\pr{C = c}$, expands it to stable models, $\pr{S = s}$, and then to worlds $\pr{W = w}$ and events $\pr{E = e}$. | |
148 | 215 | |
149 | 216 | \begin{enumerate} |
150 | 217 | \item \textbf{Total Choices.} This case is given by $\pr{C = c}$, from equation \ref{eq:prob.total.choice}. Each total choice $C = c$ (together with the facts and rules) entails some stable models, $s \in S_c$, and each stable model $S = s$ contains a single total choice $c_s \subseteq s$. |
... | ... | @@ -353,13 +420,6 @@ We continue with the specification from equation \ref{eq:example.1}. |
353 | 420 | |
354 | 421 | \section*{References} |
355 | 422 | |
356 | - | |
357 | -\begin{enumerate} | |
358 | - \item Victor Verreet, Vincent Derkinderen, Pedro Zuidberg Dos Martires, Luc De Raedt, Inference and Learning with Model Uncertainty in Probabilistic Logic Programs (2022) | |
359 | - \item Andrew Cropper, Sebastijan Dumancic, Richard Evans, Stephen H. Muggleton, Inductive logic programming at 30 (2021) | |
360 | - \item Fabio Gagliardi Cozman, Denis Deratani Mauá, The joy of Probabilistic Answer Set Programming: Semantics - complexity, expressivity, inference (2020) | |
361 | - \item Fabrizio Riguzzi, Foundations of Probabilistic Logic Programming Languages, Semantics, Inference and Learning. Rivers Publishers (2018) | |
362 | - \item Martin Gebser, Roland Kaminski, Benjamin Kaufmann, and Torsten Schaub, Answer Set Solving in Practice, Morgan \& Claypool Publishers (2013) | |
363 | -\end{enumerate} | |
423 | +\printbibliography | |
364 | 424 | |
365 | 425 | \end{document} |
366 | 426 | \ No newline at end of file | ... | ... |