example.tex revision fc6b231dc3daf448b2a6d8b73aa7b052d1637d80
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\documentclass{entcs} \usepackage{entcsmacro}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\usepackage{graphicx}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\usepackage{mathpartir}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\usepackage{amsmath,amssymb}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\newcommand{\hearts}{\heartsuit}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\input{header}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% The following is enclosed to allow easy detection of differences in
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% ascii coding.
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Upper-case A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Lower-case a b c d e f g h i j k l m n o p q r s t u v w x y z
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Digits 0 1 2 3 4 5 6 7 8 9
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Exclamation ! Double quote " Hash (number) #
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Dollar $ Percent % Ampersand &
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Acute accent ' Left paren ( Right paren )
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Asterisk * Plus + Comma ,
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Minus - Point . Solidus /
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Colon : Semicolon ; Less than <
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Equals =3D Greater than > Question mark ?
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% At @ Left bracket [ Backslash \
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Right bracket ] Circumflex ^ Underscore _
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Grave accent ` Left brace { Vertical bar |
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Right brace } Tilde ~
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% A couple of exemplary definitions:
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder%\newcommand{\Nat}{{\mathbb N}}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder%\newcommand{\Real}{{\mathbb R}}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\newcommand{\COLOSS}{{\textrm CoLoSS}}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\def\lastname{Hausmann and Schr\"oder}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\begin{document}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\begin{frontmatter}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder \title{Optimizing Conditional Logic Reasoning within \COLOSS}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder \author[DFKI]{Daniel Hausmann\thanksref{myemail}}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder \author[DFKI,UBremen]{Lutz Schr\"oder\thanksref{coemail}}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder \address[DFKI]{DFKI Bremen, SKS}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder \address[UBremen]{Department of Mathematics and Computer Science, Universit\"at Bremen, Germany}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% \thanks[ALL]{Work forms part of DFG-project \emph{Generic Algorithms and Complexity
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder% Bounds in Coalgebraic Modal Logic} (SCHR 1118/5-1)}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder \thanks[myemail]{Email: \href{mailto:Daniel.Hausmann@dfki.de} {\texttt{\normalshape Daniel.Hausmann@dfki.de}}}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder \thanks[coemail]{Email: \href{mailto:Lutz.Schroeder@dfki.de} {\texttt{\normalshape Lutz.Schroeder@dfki.de}}}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\begin{abstract}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder The generic modal reasoner \COLOSS~covers a wide variety of logics
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder ranging from graded and probabilistic modal logic to coalition logic
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder and conditional logics, being based on a broadly applicable
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder optimisation of the reasoning strategies employed in
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder \COLOSS. Specifically, we discuss strategies of memoisation and
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder dynamic programming that are based on the observation that short
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder sequents play a central role in many of the logics under
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder study. These optimisations seem to be particularly useful for the
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder case of conditional logics, for some of which dynamic programming
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder even improves the theoretical complexity of the algorithm. These
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder strategies have been implemented in \COLOSS; we give a detailed
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder comparison of the different heuristics, observing that in the
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder targeted domain of conditional logics, a substantial speed-up can be
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\end{abstract}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\begin{keyword}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder Coalgebraic modal logic, conditional logic, automated reasoning,
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder optimisation, heuristics, memoizing, dynamic programming
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\end{frontmatter}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\section{Introduction}\label{intro}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian MaederIn recent decades, modal logic has seen a development towards semantic
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederheterogeneity, witnessed by an emergence of numerous logics that,
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederwhile still of manifestly modal character, are not amenable to
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederstandard Kripke semantics. Examples include probabilistic modal
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederlogic~\cite{FaginHalpern94}, coalition logic~\cite{Pauly02}, and
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederconditional logic~\cite{Chellas80}, to name just a few. The move away
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederfrom Kripke semantics, mirrored on the syntactical side by the failure
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederof normality, entails additional challenges for tableau and sequent
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedersystems, as the correspondence between tableaus and models becomes
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederlooser, and in particular demands created by modal formulas can no
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederlonger be discharged by the creation of single successor nodes.
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian MaederThis problem is tackled on the theoretical side by introducing the
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedersemantic framework of coalgebraic modal
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederlogic~\cite{Pattinson03,Schroder05}, which covers all logics mentioned
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederabove and many more. It turns out that coalgebraic modal logic does
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederallow the design of generic reasoning algorithms, including a generic
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedertableau method originating from~\cite{SchroderPattinson09}; this
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedergeneric method may in fact be separated from the semantics and
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederdeveloped purely syntactically, as carried out
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederin~\cite{PattinsonSchroder08b,PattinsonSchroder09a}.
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian MaederGeneric tableau algorithms for coalgebraic modal logics, in particular
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederthe algorithm described in~\cite{SchroderPattinson09}, have been
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederimplemented in the reasoning tool
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\COLOSS~\cite{CalinEA09}\footnote{available under
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder \url{http://www.informatik.uni-bremen.de/cofi/CoLoSS/}}. As
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederindicated above, it is a necessary feature of the generic tableau
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedersystems that they potentially generate multiple successor nodes for a
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedergiven modal demand, so that in addition to the typical depth problem,
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederproof search faces a rather noticeable problem of breadth. The search
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederfor optimisation strategies to increase the efficiency of reasoning
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederthus becomes all the more urgent. Here we present one such strategy,
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederwhich is generally applicable, but particularly efficient in reducing
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederboth depth and branching for the class of conditional logics. We
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederexploit a notable feature of this class, namely that many of the
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederrelevant rules rely rather heavily on premises stating equivalence
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederbetween formulas; thus, conditional logics are a good candidate for
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedermemoising strategies, applied judiciously to short sequents. We
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederdescribe the implementation of memoising and dynamic programming
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederstrategies within \COLOSS, and discuss the outcome of various
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedercomparative experiments.
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maeder\section{Generic Sequent Calculi for Coalgebraic Modal Logic}
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian MaederCoalgebraic modal logic, originally introduced as a specification
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederlanguage for coalgebras, seen as generic reactive
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedersystems~\cite{Pattinson03}, has since evolved into a generic framework
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederfor modal logic beyond Kripke semantics~\cite{CirsteaEA09}. The basic
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederidea is to encapsulate the branching type of the systems relevant for
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederthe semantics of a particular modal logic, say probabilistic or
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedergame-theoretic branching, in the choice of a set functor, the
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedersignature functor (e.g.\ the distribution functor and the games
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederfunctor in the mentioned examples), and to capture the semantics of
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maedermodal operators in terms of so-called predicate liftings. For the
462ec4b2fa3e0e788eb60dcb4aebc518298f342cChristian Maederpurposes of the present work, details of the semantics are less
semantics, e.g.\ graded modal logic~\cite{Fine72}, probabilistic modal
similarity type} $\Lambda$, i.e.\ a set of modal operators with
$\Rightarrow$ of conditional logic read e.g.\ `if \dots then normally
axiomatised by \emph{one-step rules} $\phi/psi$, where $\phi$ is
finishing and the branching rules $\mathcal{R}^b_{sc}$ (i.e. rules
$\mathcal{R}^l_{sc}$ (i.e. rules with exactly one premise) and the
modal rules $\mathcal R^m_{sc}$, i.e.\ the given one-step rules. The
concerned with the \emph{provability problem}, i.e.\ to decide whether
premises (i.e. $S=S\cup\Lambda$). If there are any remaining open
and PSPACE-tractable. Then Algorithm~\ref{alg:seq} is sound and complete w.r.t. provability
We just note, that Algorithm~\ref{alg:seq} is an equivalent implementation of the algorithm proposed
in~\cite{SchroderPattinson09}. For more details, refer to ~\cite{SchroderPattinson09}, Theorem 6.13.
(\textsc {\textbf{CKCEM}})\inferrule{A_0 = \ldots = A_n \\ B_0,\ldots, B_j,\neg B_{j+1},\ldots,\neg B_n}
(i.e. the first part, showing the necessary equalities, and the second
conditional antecedents of modal nesting depth at most $n$ (i.e.
$prems(n)=\bigcup_{j=1..n}^{} p_j$).
premises (i.e. $S=S\cup\Lambda$). If there are any remaining open
(\textsc {\textbf{CKCEM}$^m$})\inferrule{\bigwedge{}_{i,j=\{1..n\}}{eval(A_i=B_j)=\top}
also try to show equivalences between any two conditional antecedents (e.g. $(p_0,
Consider the formula $\phi=(p_0\Rightarrow p_2)\Rightarrow ((p_0\Rightarrow p_1)\Rightarrow p_3)$. Then the path to
$(p_0\Rightarrow p_2)$ is $\{1\}$, whereas the path to $(p_0\Rightarrow p_1)$ is $\{01\}$. The paths
Let $A$ and $B$ be two conditional antecedents. $A$ and $B$ are called \emph{connected (in $\phi$)} if
at least one path to $A$ is also a path to $B$ (and hence vice-versa). If no path to $A$ is a path to $B$,
(since antecedents may indeed be connected and still it is possible that they never appear together in an application
of the modal rule - this is the case whenever two preceeding antecedents are not logically equivalent).
the tested benchmarking formulae can be found at \url{http://www.informatik.uni-bremen.de/cofi/CoLoSS/}}).
complexity w.r.t. different parts of the algorithms and thus exhibiting specific
\item The formula \verb|bloat(|$i$\verb|)| is a full binary tree of depth $i$ (containing $2^i$ pairwise logically
\verb|bloat(|$i$\verb|)| = $($\verb|bloat(|$i-1$\verb|)|$)\Rightarrow($\verb|bloat(|$i-1$\verb|)|)\\
Formulae from this class should show the problematic performance of Algorithm~\ref{alg:preprove} whenever
a formula contains many modal antecedents which appear at different depths. A comparison of the different
algorithms w.r.t. formulae \verb|bloat(|$i$\verb|)| is depicted in Figure~\ref{fig:benchBloat}.
Since Algorithm~\ref{alg:preprove} does not check whether pairs of modal antecedents are independent or connected,
it performs considerably worse than Algorithm~\ref{alg:optPreprove} which only attempts to prove the logical
equivalence of formulae which are not independent. Algorithm~\ref{alg:seq} has the best performance in this
extreme case, as it only has to consider pairs of modal antecedents which actually appear during the course
\item The formula \verb|conjunct(|$i$\verb|)| is just an $i$-fold conjunction of a specific formula $A$:
$A=(((p_1\vee p_0)\Rightarrow p_2)\vee((p_0\vee p_1)\Rightarrow p_2))\vee\neg(((p_0\vee p_1)\Rightarrow p_2)\vee((p_1\vee p_0)\Rightarrow p_2))$)
This class consists of formulae which contain logically (but not sytactically) equivalent antecedents.
As $i$ increases, so does the amount of appearances of identical modal antecedents in different positions
of the considered formula. A comparison of the different algorithms w.r.t. formulae \verb|conjunct(|$i$\verb|)| is depicted in
Figure~\ref{fig:benchConjunct}. It is obvious that the optimized algorithms perform considerably better than the unoptimized
Algorithm~\ref{alg:seq}. The reason for this is, that Algorithm~\ref{alg:seq} repeatedly proves equivalences between the same
pairs of modal antecedents. The optimized algorithms on the other hand are equipped with knowledge about the modal antecedents,
so that these equivalences have to be proved only once. However, even the runtime of the optimized algorithms is exponential in $i$,
due to the exponentially increasing complexity of the underlying propositional formula. Note that the use of propositional taulogies (such as
$A \leftrightarrow (A\wedge A) $ in this case) would help to greatly reduce the computing time for \verb|conjunct(|$i$\verb|)|.
Optimisation of propositional reasoning is not the scope of this paper though, thus we devise the following examplary class of formulae
efficient any more: Only the combined knowledge about all appearing modal antecedents $A^i_j$ allows
the optimized algorithms vastly outperform the unoptimized algorithm (see Figure~\ref{fig:benchExplode}).
other conditional logic provers (such as CondLean~\cite{OlivettiEA07}). However, the authors of other
a (w.r.t the considered modal logic) sound instance of the generic rule which
where the employed ruleset has to be extended by the generic modified rule given by Figure~\ref{fig:modModalOpt}.
(\textsc {\textbf{Opt}$^m$}) \inferrule{ eval(S_1)=\top \\ \ldots \\ eval(S_n)=\top \\ \mathcal{S} }
the generic algorithm to the case of modal logics which are monotone w.r.t. their
considered logic (i.e. the case of plain monotone modal logic), all the