# Autoepistemic logic

The autoepistemic logic is a formal logic for the representation and reasoning of knowledge about knowledge. While propositional logic can only express facts, autoepistemic logic can express knowledge and lack of knowledge about facts.

The stable model semantics, which is used to give a semantics to logic programming with negation as failure, can be seen as a simplified form of autoepistemic logic.

## Syntax

The syntax of autoepistemic logic extends that of propositional logic by a modal operator $\Box$ indicating knowledge: if $F$ is a formula, $\Box F$ indicates that $F$ is known. As a result, $\Box \neg F$ indicates that $\neg F$ is known and $\neg \Box F$ indicates that $F$ is not known.

This syntax is used for allowing reasoning based on knowledge of facts. For example, $\neg \Box F \rightarrow \neg F$ means that $F$ is assumed false if it is not known to be true. This is a form of negation as failure.

## Semantics

The semantics of autoepistemic logic is based on the expansions of a theory, which have a role similar to models in propositional logic. While a propositional model specifies which axioms are true or false, an expansion specifies which formulae $\Box F$ are true and which ones are false. In particular, the expansions of an autoepistemic formula $T$ makes this distinction for every subformula $\Box F$ contained in $T$. This distinction allows $T$ to be treated as a propositional formula, as all its subformulae containing $\Box$ are either true or false. In particular, checking whether $T$ entails $F$ in this condition can be done using the rules of the propositional calculus. In order for an initial assumption to be an expansion, it must be that a subformula $F$ is entailed if and only if $\Box F$ has been initially assumed true.

For example, in the formula $T = \Box x \rightarrow x$, there is only a single “boxed subformula”, which is $\Box x$. Therefore, there are only two candidate expansions, assuming it true or false, respectively. The check for them being actual expansions is as follows.

$\Box x$ is false : with this assumption, $T$ becomes tautological, as $\Box x \rightarrow x$ is equivalent to $\neg \Box x \vee x$, and $\neg \Box x$ is assumed true; therefore, $x$ is not entailed. This result confirms the assumption implicit in $\Box x$ being false, that is, that $x$ is not currently known. Therefore, the assumption that $\Box x$ is false is an expansion.

$\Box x$ is true : together with this assumption, $T$ entails $x$; therefore, the initial assumption that is implicit in $\Box x$ being true, i.e., that $x$ is known to be true, is satisfied. As a result, this is another expansion.

The formula $T$ has therefore two expansions, one in which $x$ is not known and one in which $x$ is known. The second one has been regarded as unintuitive, as the initial assumption that $\Box x$ is true is the only reason why $x$ is true, which confirms the assumption. In other words, this is a self-supporting assumption. A logic allowing such a self-support of beliefs is called not strongly grounded to differentiate them from strongly grounded logics, in which self-support is not possible. Strongly grounded variants of autoepistemic logic exist.

## Generalizations

In uncertain inference, the known/unknown duality of truth values is replaced by a degree of certainty of a fact or deduction; certainty may vary from 0 (completely uncertain/unknown) to 1 (certain/known). In probabilistic logic networks, truth values are also given a probabilistic interpretation (i.e. truth values may be uncertain, and, even if almost certain, they may still be "probably" true (or false).)