Source / pinned edition
The Open Logic Text
Source of package logic.paraconsistent · The Open Logic Text (Open Logic Project), commit 1e960be
- work
- urn:logic:clir:paraconsistent#OPEN_LOGIC
- number
- The Open Logic Text (Open Logic Project), commit 1e960be
- kind
- urn:logic:clir:paraconsistent#treatise
content/many-valued-logic/syntax-and-semantics/matrices.tex at commit 1e960be (master, 2026-08-14)
- edition
- urn:logic:clir:paraconsistent#OLP_MVL_SYNTAX_AND_SEMANTICS_MATRICES_ED
- language
- en
- officiality
- official
- materialisation
- PINNED_OFFICIAL_BYTES
- life cycle
- adopted: 2026-08-14
Publications
| URI | Type | documentHash | Retrieved |
|---|---|---|---|
| https://raw.githubusercontent.com/OpenLogicProject/OpenLogic/1e960beff9ed7835bf3e3f1335e21af3439cd107/content/many-valued-logic/syntax-and-semantics/matrices.tex | application/x-tex; charset=utf-8 | sha256:b52a35007f90b9c696d8f3396d4ebbf625e24983bbbbb806fdffa6837bd0f9a1 | 2026-09-08T00:00:00Z |
Fragments — 1
content/many-valued-logic/syntax-and-semantics/matrices.tex · section · referenced by: 6
en · official · sha256:a95730929e9c5413e5000b0a9466c42e213727cc58c451f2b7a38487ded37cf2
% Part: many-valued-logic
% Chapter: syntax-and-semantics
% Section: matrices
\documentclass[../../../include/open-logic-section]{subfiles}
\begin{document}
\olfileid{mvl}{syn}{mat}
\olsection{Matrices}
A many-valued logic is defined by its language, its set of truth
values~$V$, a subset of designated truth values, and truth functions
for its connective. Together, these elements are called a \emph{matrix}.
\begin{defn}[Matrix]
\ollabel{defn:matrix}
A \emph{matrix} for the logic~$\Log L$ consists of:
\begin{enumerate}
\item a set of connectives making up a language~$\Lang L$;
\item a set $V \neq \emptyset$ of truth values;
\item a set $V^+ \subseteq V$ of designated truth values;
\item for each $n$-place connective $\star$ in $\Lang L$, a truth
function~$\tf{\star} : V^n \to V$. If $n = 0$, then $\tf{\star}$ is
just an element of~$V$.
\end{enumerate}
\end{defn}
\begin{ex}
The matrix for classical logic~\LogCL{} consists of:
\begin{enumerate}
\item The standard propositional language $\Lang L_0$ with
$\lfalse$, $\lnot$, $\land$, $\lor$, $\lif$.
\item The set of truth values $V = \{\True, \False\}$.
\item $\True$ is the only designated value, i.e., $V^+ = \{\True\}$.
\item For $\lfalse$, we have $\tf{\lfalse} = \False$. The other
truth functions are given by the usual truth tables (see
\olref{fig:tf-CL}).
\end{enumerate}
\begin{figure}
\begin{center}
\begin{tabular}{c|c}
$\tf{\lnot}$ & \\
\hline
$\True$ & $\False$ \\
$\False$ & $\True$
\end{tabular}
\quad
\begin{tabular}{c|cc}
$\tf{\land}$ & $\True$ & $\False$ \\
\hline
$\True$ & $\True$ & $\False$ \\
$\False$ & $\False$ & $\False$
\end{tabular}
\quad
\begin{tabular}{c|cc}
$\tf{\lor}$ & $\True$ & $\False$ \\
\hline
$\True$ & $\True$ & $\True$ \\
$\False$ & $\True$ & $\False$
\end{tabular}
\quad
\begin{tabular}{c|cc}
$\tf{\lif}$ & $\True$ & $\False$ \\
\hline
$\True$ & $\True$ & $\False$ \\
$\False$ & $\True$ & $\True$
\end{tabular}
\end{center}
\caption{Truth functions for classical logic~$\LogCL$.}
\ollabel{fig:tf-CL}
\end{figure}
\end{ex}
\end{document}Referencing norms: DESIGNATED_VALUES, MATRIX, ValueCount, designated, truth_value, value_count
content/many-valued-logic/syntax-and-semantics/semantic-notions.tex at commit 1e960be (master, 2026-08-14)
- edition
- urn:logic:clir:paraconsistent#OLP_MVL_SYNTAX_AND_SEMANTICS_SEMANTIC_NOTIONS_ED
- language
- en
- officiality
- official
- materialisation
- PINNED_OFFICIAL_BYTES
- life cycle
- adopted: 2026-08-14
Publications
| URI | Type | documentHash | Retrieved |
|---|---|---|---|
| https://raw.githubusercontent.com/OpenLogicProject/OpenLogic/1e960beff9ed7835bf3e3f1335e21af3439cd107/content/many-valued-logic/syntax-and-semantics/semantic-notions.tex | application/x-tex; charset=utf-8 | sha256:897125a2b2dddc985219270cc16af490719261dc292857bbcb157d1ad899597d | 2026-09-08T00:00:00Z |
Fragments — 1
content/many-valued-logic/syntax-and-semantics/semantic-notions.tex · section · referenced by: 4
en · official · sha256:8871b73edeec0e6486e315fb83cd80928738c5c9068f576492cec82c92f5cf97
% Part: many-valued-logic
% Chapter: syntax-and-semantics
% Section: semantic-notions
\documentclass[../../../include/open-logic-section]{subfiles}
\begin{document}
\olfileid{mvl}{syn}{sem}
\olsection{Semantic Notions}
Suppose a many-valued logic $\Log L$ is given by a matrix. Then we
can define the usual semantic notions for~$\Log L$.
\begin{defn}
\begin{enumerate}
\item !!^a{formula}~$!A$ is \emph{satisfiable} if for
some~$\pAssign{v}$, $\pSat{v}{!A}$; it is
\emph{unsatisfiable} if for no $\pAssign{v}$, $\pSat{v}{!A}$;
\item !!^a{formula}~$!A$ is a \emph{tautology} if $\pSat{v}{!A}$ for
all !!{valuation}s~$v$;
\item If $\Gamma$ is a set of !!{formula}s, $\Gamma \Entails !A$ (``$\Gamma$
entails $!A$'') if and only if $\pSat{v}{!A}$ for every
!!{valuation}~$\pAssign{v}$ for which $\pSat{v}{\Gamma}$.
\item If $\Gamma$ is a set of !!{formula}s, $\Gamma$ is
\emph{satisfiable} if there is !!a{valuation}~$\pAssign{v}$ for which
$\pSat{v}{\Gamma}$, and $\Gamma$ is
\emph{unsatisfiable} otherwise.
\end{enumerate}
\end{defn}
We have some of the same facts for these notions as we do for
the case of classical logic:
\begin{prop}
\ollabel{prop:semanticalfacts}
\begin{enumerate}
\item $!A$ is a tautology if and only if
$\emptyset \Entails !A$;
\item If $\Gamma$ is satisfiable then every finite subset of $\Gamma$
is also satisfiable;
\item\ollabel{def:monotonicity}%
Monotonicity: if $\Gamma \subseteq \Delta$
and $\Gamma \Entails !A$ then also $\Delta \Entails !A$;
\item\ollabel{def:Cut}%
Transitivity: if $\Gamma \Entails !A$ and
$\Delta \cup \{ !A\} \Entails !B$ then $\Gamma \cup \Delta \Entails
!B$;
\end{enumerate}
\end{prop}
\begin{proof}
Exercise.
\end{proof}
\begin{prob}
Prove \olref[mvl][syn][sem]{prop:semanticalfacts}
\end{prob}
In classical logic we can connect entailment and the conditional. For
instance, we have the validity of \emph{modus ponens}: If $\Gamma
\Entails !A$ and $\Gamma \Entails !A \lif !B$ then $\Gamma \Entails
!B$. Another important relationship between $\Entails$ and $\lif$ in
classical logic is the semantic deduction theorem: $\Gamma \Entails !A
\lif !B$ if and only if $\Gamma \cup \{!A\} \Entails !B$. These
results \emph{do not} always hold in many-valued logics. Whether they
do depends on the truth function~$\tf{\lif}$.
\end{document}Referencing norms: LogicDescribed, MV_CONSEQUENCE, consequence_reading, logic_described
content/many-valued-logic/syntax-and-semantics/valuations-sat.tex at commit 1e960be (master, 2026-08-14)
- edition
- urn:logic:clir:paraconsistent#OLP_MVL_SYNTAX_AND_SEMANTICS_VALUATIONS_SAT_ED
- language
- en
- officiality
- official
- materialisation
- PINNED_OFFICIAL_BYTES
- life cycle
- adopted: 2026-08-14
Publications
| URI | Type | documentHash | Retrieved |
|---|---|---|---|
| https://raw.githubusercontent.com/OpenLogicProject/OpenLogic/1e960beff9ed7835bf3e3f1335e21af3439cd107/content/many-valued-logic/syntax-and-semantics/valuations-sat.tex | application/x-tex; charset=utf-8 | sha256:295efac982d3d4d6a5a4c2b910b3a37ecb85ce1b7925950db359034733498bb1 | 2026-09-08T00:00:00Z |
Fragments — 1
content/many-valued-logic/syntax-and-semantics/valuations-sat.tex · section
en · official · sha256:534d74c0bfc218cc1c0800c37cd9d7c93f2d5e7a18ed0eb45c6fd2e373425078
% Part: many-valued-logic
% Chapter: syntax-and-semantics
% Section: valuations-sat
\documentclass[../../../include/open-logic-section]{subfiles}
\begin{document}
\olfileid{mvl}{syn}{val}
\olsection{\usetoken{P}{valuation} and Satisfaction}
\begin{defn}[!!^{valuation}s]
Let $V$ be a set of truth values. A \emph{!!{valuation}} for
$\Lang{L}$ into~$V$ is a
function~$\pAssign{v}$ assigning !!a{element} of~$V$ to the
!!{propositional variable}s of the language, i.e., $\pAssign{v} \colon
\PVar \to V$.
\end{defn}
\begin{defn}\ollabel{defn:pValue}
Given !!a{valuation}~$\pAssign{v}$ into the set of truth values~$V$ of a
many-valued logic~$\Log L$, define the evaluation function
$\pValue{v} \colon \Frm[L] \to V$ inductively by:
\begin{enumerate}
\item $\pValue{v}(\Obj p_n) = \pAssign{v}(\Obj p_n)$;
\item If $\star$ is a $0$-place connective, then $\pValue{v}(\star) = \tf{\star}[\Log L]$;
\item If $\star$ is an $n$-place connective, then
\[
\pValue{v}(\star(!A_1, \dots, !A_n)) = \tf{\star}[\Log L]
(\pValue{v}(!A_1), \dots, \pValue{v}(!A_n)).
\]
\end{enumerate}
\end{defn}
\begin{defn}[Satisfaction]
\ollabel{defn:satisfaction} The !!{formula}~$!A$ is \emph{satisfied}
by !!a{valuation}~$\pAssign{v}$, $\pSat{v}{!A}[\Log L]$, iff
$\pValue{v}(!A)[\Log L] \in V^+$, where $V^+$ is the set of
designated truth values of~$\Log L$.
We write $\pSat/{v}{!A}[\Log L]$ to mean ``not $\pSat{v}{!A}[\Log
L]$.'' If $\Gamma$ is a set of !!{formula}s, $\pSat{v}{\Gamma}[\Log
L]$ iff $\pSat{v}{!A}[\Log L]$ for every~$!A \in \Gamma$.
\end{defn}
\end{document}content/many-valued-logic/three-valued-logics/introduction.tex at commit 1e960be (master, 2026-08-14)
- edition
- urn:logic:clir:paraconsistent#OLP_MVL_THREE_VALUED_LOGICS_INTRODUCTION_ED
- language
- en
- officiality
- official
- materialisation
- PINNED_OFFICIAL_BYTES
- life cycle
- adopted: 2026-08-14
Publications
| URI | Type | documentHash | Retrieved |
|---|---|---|---|
| https://raw.githubusercontent.com/OpenLogicProject/OpenLogic/1e960beff9ed7835bf3e3f1335e21af3439cd107/content/many-valued-logic/three-valued-logics/introduction.tex | application/x-tex; charset=utf-8 | sha256:77b91c121cc775c602663a64f615c3604a32db5d61625d07dfc9ea30ab5047e1 | 2026-09-08T00:00:00Z |
Fragments — 1
content/many-valued-logic/three-valued-logics/introduction.tex · section
en · official · sha256:8001e86f40c438e5586da54c7f79ace8254d2dd2ce71290a38b7defe51e89020
% Part: many-valued-logic
% Chapter: three-valued-logics
% Section: introduction
\documentclass[../../../include/open-logic-section]{subfiles}
\begin{document}
\olfileid{mvl}{thr}{int}
\olsection{Introduction}
If we just add one more value~$\Undef$ to $\True$ and $\False$, we get a
three-valued logic. Even though there is only one more truth value,
the possibilities for defining the truth-functions for $\lnot$,
$\land$, $\lor$, and $\lif$ are quite numerous. Then a logic might use
any combination of these truth functions, and you also have a choice
of making only $\True$ designated, or both $\True$ and~$\Undef$.
We present here a selection of the most well-known three-valued
logics, their motivations, and some of their properties.
\end{document}content/many-valued-logic/three-valued-logics/kleene.tex at commit 1e960be (master, 2026-08-14)
- edition
- urn:logic:clir:paraconsistent#OLP_MVL_THREE_VALUED_LOGICS_KLEENE_ED
- language
- en
- officiality
- official
- materialisation
- PINNED_OFFICIAL_BYTES
- life cycle
- adopted: 2026-08-14
Publications
| URI | Type | documentHash | Retrieved |
|---|---|---|---|
| https://raw.githubusercontent.com/OpenLogicProject/OpenLogic/1e960beff9ed7835bf3e3f1335e21af3439cd107/content/many-valued-logic/three-valued-logics/kleene.tex | application/x-tex; charset=utf-8 | sha256:0b632552858c410d3670357a0df7071cb5a3c5bd285681e86988ed07263852d7 | 2026-09-08T00:00:00Z |
Fragments — 1
content/many-valued-logic/three-valued-logics/kleene.tex · section · referenced by: 1
en · official · sha256:0b632552858c410d3670357a0df7071cb5a3c5bd285681e86988ed07263852d7
% Part: many-valued-logic
% Chapter: three-valued-logics
% Section: kleene
\documentclass[../../../include/open-logic-section]{subfiles}
\begin{document}
\olfileid{mvl}{thr}{skl}
\olsection{Kleene logics}
Stephen Kleene introduced two three-valued logics motivated by a logic
in which truth values are thought of the outcomes of computational
procedures: a procedure may yield $\True$ or $\False$, but it may also
fail to terminate. In that case the corresponding truth value is
undefined, represented by the truth value~$\Undef$.
To compute the negation of a proposition~$!A$, you would first compute
the value of~$!A$, and then return the opposite of the result. If the
computation of $!A$ does not terminate, then the entire procedure does
not either: so the negation of $\Undef$ is $\Undef$.
To compute a conjunction $!A \land !B$, there are two options: one can
first compute~$!A$, then $!B$, and then the result would be $\True$ if
the outcome of both is~$\True$, and $\False$ otherwise. If either
computation fails to halt, the entire procedure does as well. So in
this case, the if one conjunct is undefined, the conjunction is as
well. The same goes for disjunction.
However, if we can evaluate $!A$ and $!B$ in parallel, we can do better.
Then, if one of the two procedures halts and returns $\False$, we can
stop, as the answer must be false. So in that case a conjunction with
one false conjunct is false, even if the other conjunct is undefined.
Similarly, when computing a disjunction in parallel, we can stop once
the procedure for one of the two disjuncts has returned true: then the
disjunction must be true. So in this case we can know what the outcome
of a compound claim is, even if one of the components is undefined. On
this interpretation, we might read $\Undef$ as ``unknown'' rather than
``undefined.''
The two interpretations give rise to Kleene's strong and weak logic.
The conditional is defined as equivalent to $\lnot !A \lor !B$.
\begin{defn}
\emph{Strong Kleene logic}~$\LogKs$ is defined using the matrix:
\begin{enumerate}
\item The standard propositional language $\Lang L_0$ with
$\lnot$, $\land$, $\lor$, $\lif$.
\item The set of truth values $V = \{\True, \Undef, \False\}$.
\item $\True$ is the only designated value, i.e., $V^+ = \{\True\}$.
\item Truth functions are given by the following tables:
\begin{center}
\begin{tabular}{c|c}
$\tf{\lnot}$ & \\
\hline
$\True$ & $\False$ \\
$\Undef$ & $\Undef$ \\
$\False$ & $\True$
\end{tabular}
\quad
\begin{tabular}{c|ccc}
$\tf{\land}[\LogKs]$ & $\True$ & $\Undef$ & $\False$ \\
\hline
$\True$ & $\True$ & $\Undef$ & $\False$ \\
$\Undef$ & $\Undef$ & $\Undef$ & $\False$\\
$\False$ & $\False$ & $\False$ & $\False$
\end{tabular}
\\[2ex]
\begin{tabular}{c|ccc}
$\tf{\lor}[\LogKs]$ & $\True$ & $\Undef$ & $\False$ \\
\hline
$\True$ & $\True$ & $\True$ & $\True$ \\
$\Undef$ & $\True$ & $\Undef$ & $\Undef$ \\
$\False$ & $\True$ & $\Undef$ & $\False$
\end{tabular}
\quad
\begin{tabular}{c|ccc}
$\tf{\lif}[\LogKs]$ & $\True$ & $\Undef$ & $\False$ \\
\hline
$\True$ & $\True$ & $\Undef$ & $\False$ \\
$\Undef$ & $\True$ & $\Undef$ & $\Undef$ \\
$\False$ & $\True$ & $\True$ & $\True$
\end{tabular}
\end{center}
\end{enumerate}
\end{defn}
\begin{defn}
\emph{Weak Kleene logic}~$\LogKw$ is defined using the matrix:
\begin{enumerate}
\item The standard propositional language $\Lang L_0$ with
$\lnot$, $\land$, $\lor$, $\lif$.
\item The set of truth values $V = \{\True, \Undef, \False\}$.
\item $\True$ is the only designated value, i.e., $V^+ = \{\True\}$.
\item Truth functions are given by the following tables:
\begin{center}
\begin{tabular}{c|c}
$\tf{\lnot}$ & \\
\hline
$\True$ & $\False$ \\
$\Undef$ & $\Undef$ \\
$\False$ & $\True$
\end{tabular}
\quad
\begin{tabular}{c|ccc}
$\tf{\land}[\LogKw]$ & $\True$ & $\Undef$ & $\False$ \\
\hline
$\True$ & $\True$ & $\Undef$ & $\False$ \\
$\Undef$ & $\Undef$ & $\Undef$ & $\Undef$\\
$\False$ & $\False$ & $\Undef$ & $\False$
\end{tabular}
\\[2ex]
\begin{tabular}{c|ccc}
$\tf{\lor}[\LogKw]$ & $\True$ & $\Undef$ & $\False$ \\
\hline
$\True$ & $\True$ & $\Undef$ & $\True$ \\
$\Undef$ & $\Undef$ & $\Undef$ & $\Undef$ \\
$\False$ & $\True$ & $\Undef$ & $\False$
\end{tabular}
\quad
\begin{tabular}{c|ccc}
$\tf{\lif}[\LogKw]$ & $\True$ & $\Undef$ & $\False$ \\
\hline
$\True$ & $\True$ & $\Undef$ & $\False$ \\
$\Undef$ & $\Undef$ & $\Undef$ & $\Undef$ \\
$\False$ & $\True$ & $\Undef$ & $\True$
\end{tabular}
\end{center}
\end{enumerate}
\end{defn}
\begin{prop}
$\LogKs$ and $\LogKw$ have no tautologies.
\end{prop}
\begin{proof}
If $\pAssign v(p) = \Undef$ for all !!{propositional variable}s~$p$,
then any formula~$!A$ will have truth value~$\pValue v(!A) =
\Undef$, since
\[
\tf{\lnot}(\Undef) = \tf{\lor}(\Undef, \Undef) = \tf{\land}(\Undef,
\Undef) = \tf{\lif}(\Undef, \Undef) = \Undef
\]
in both logics. As $\Undef \notin V^+$ for either $\LogKs$ or
$\LogKw$, on this !!{valuation}, $!A$ will not be designated.
\end{proof}
Although both weak and strong Kleene logic have no tautologies, they
have non-trivial consequence relations.
\begin{prob}
Which of the following relations hold in (a) strong and
(b) weak Kleene logic? Give a truth table for each.
\begin{enumerate}
\item $p, p \lif q \Entails q$
\item $p \lor q, \lnot p \Entails q$
\item $p \land q \Entails p$
\item $p \Entails p \land p$
\item $p \Entails p \lor q$
\end{enumerate}
\end{prob}
Dmitry Bochvar interpreted $\Undef$ as ``meaningless'' and attempted
to use it to solve paradoxes such as the Liar paradox by stipulating
that paradoxical sentences take the value~$\Undef$. He introduced a
logic which is essentially weak Kleene logic extended by additional
connectives, two of which are ``external negation'' and the ``is
undefined'' operator:
\begin{center}
\begin{tabular}{c|c}
$\tf{\sim}$ & \\
\hline
$\True$ & $\False$ \\
$\Undef$ & $\True$ \\
$\False$ & $\True$
\end{tabular}
\quad
\begin{tabular}{c|c}
$\tf{+}$ & \\
\hline
$\True$ & $\False$ \\
$\Undef$ & $\True$ \\
$\False$ & $\False$
\end{tabular}
\end{center}
\begin{prob}
Can you define $\sim$ in Bochvar's logic in terms of $\lnot$
and~$+$, i.e., find !!a{formula} with only the !!{propositional
variable}~$p$ and not involving $\sim$ which always takes the same
truth value as~$\mathord{\sim}p$? Give a truth table to show you're
right.
\end{prob}
\end{document}Referencing norms: K3
content/many-valued-logic/three-valued-logics/multiple-designation.tex at commit 1e960be (master, 2026-08-14)
- edition
- urn:logic:clir:paraconsistent#OLP_MVL_THREE_VALUED_LOGICS_MULTIPLE_DESIGNATION_ED
- language
- en
- officiality
- official
- materialisation
- PINNED_OFFICIAL_BYTES
- life cycle
- adopted: 2026-08-14
Publications
| URI | Type | documentHash | Retrieved |
|---|---|---|---|
| https://raw.githubusercontent.com/OpenLogicProject/OpenLogic/1e960beff9ed7835bf3e3f1335e21af3439cd107/content/many-valued-logic/three-valued-logics/multiple-designation.tex | application/x-tex; charset=utf-8 | sha256:4345be8f1da0718c7667fcae18709d7e2688c5e576f07e3e043f36e7eb99216f | 2026-09-08T00:00:00Z |
Fragments — 1
content/many-valued-logic/three-valued-logics/multiple-designation.tex · section · referenced by: 7
en · official · sha256:507bd6c306ed2b506894a6eabdd04729d8ee23c92492465c9bf101383e94a698
% Part: many-valued-logic
% Chapter: three-valued-logics
% Section: multiple-designation
\documentclass[../../../include/open-logic-section]{subfiles}
\begin{document}
\olfileid{mvl}{thr}{mul}
\olsection{Designating not just $\True$}
So far the logics we've seen all had the set of designated truth
values $V^+ = \{\True\}$, i.e., something counts as true iff its truth
value is~$\True$. But one might also count something as true if it's
just not~$\False$. Then one would get a logic by stipulating in the
matrix, e.g., that $V^+ = \{\True, \Undef\}$.
\begin{defn}
The \emph{logic of paradox}~$\LogLP$ is defined using the matrix:
\begin{enumerate}
\item The standard propositional language $\Lang L_0$ with
$\lnot$, $\land$, $\lor$, $\lif$.
\item The set of truth values $V = \{\True, \Undef, \False\}$.
\item $\True$ and $\Undef$ are designated, i.e., $V^+ = \{\True, \Undef\}$.
\item Truth functions are the same as in strong Kleene logic.
\end{enumerate}
\end{defn}
\begin{defn}
Halld\'en's \emph{logic of nonsense}~$\LogHal$ is defined using the matrix:
\begin{enumerate}
\item The standard propositional language $\Lang L_0$ with
$\lnot$, $\land$, $\lor$, $\lif$ and a $1$-place connective~$+$.
\item The set of truth values $V = \{\True, \Undef, \False\}$.
\item $\True$ and $\Undef$ are designated, i.e., $V^+ = \{\True, \Undef\}$.
\item Truth functions are the same as weak Kleene logic, plus the
``is meaningless'' operator:
\begin{center}
\begin{tabular}{c|c}
$\tf{+}$ & \\
\hline
$\True$ & $\False$ \\
$\Undef$ & $\True$ \\
$\False$ & $\False$
\end{tabular}
\end{center}
\end{enumerate}
\end{defn}
By contrast to the Kleene logics with which they share truth tables,
these \emph{do} have tautologies.
\begin{prop}\ollabel{prop:LP-taut-CL} The tautologies of $\LogLP$ are
the same as the tautologies of classical propositional logic.
\end{prop}
\begin{proof}
By \olref[syn][sub]{prop:mvl-cl}, if $\Entails[\LogLP] !A$ then
$\Entails[\LogCL] !A$. To show the reverse, we show that if there is
!!a{valuation}~$\pAssign v\colon \PVar \to \{\False, \True,
\Undef\}$ such that $\pValue v(!A)[\LogKs] = \False$ then there is
!!a{valuation}~$\pAssign {v'}\colon \PVar \to \{\False, \True\}$
such that $\pValue {v'}(!A)[\LogCL] = \False$. This establishes the
result for $\LogLP$, since $\LogKs$ and $\LogLP$ have the same
characteristic truth functions, and $\False$ is the only truth value
of $\LogLP$ that is not designated (that is the only difference
between $\LogLP$ and~$\LogKs$). Thus, if $\Entails/[\LogLP] !A$, for
some !!{valuation}~$\pAssign v$, $\pValue v(!A)[\LogLP] = \pValue
v[\LogKs](!A) = \False$. By the claim we're proving,
$\pValue{v'}[\LogCL](!A) = \False$, i.e., $\Entails/[\LogCL] !A$.
To establish the claim, we first define $\pAssign {v'}$ as
\[
\pAssign {v'}(p) =
\begin{cases}
\True & \text{if } \pAssign {v}(p) \in \{\True, \Undef\}\\
\False & \text{otherwise}
\end{cases}
\]
We now show by induction on $!A$ that (a)~if $\pValue v(!A)[\LogKs]
= \False$ then $\pValue {v'}(!A)[\LogCL] = \False$, and (b)~if
$\pValue v(!A)[\LogKs] = \True$ then $\pValue {v'}(!A)[\LogCL] =
\True$
\begin{enumerate}
\item Induction basis: $!A \ident p$. By
\olref[syn][val]{defn:pValue}, $\pValue v(!A)[\LogKs]
= \pAssign v(p) = \pValue {v'}(!A)[\LogCL]$, which implies both (a)
and~(b).
For the induction step, consider the cases:
\item $!A \ident \lnot !B$.
\begin{enumerate}
\item Suppose $\pValue v(\lnot!B)[\LogKs] = \False$. By the
definition of $\tf{\lnot}[\LogKs]$, $\pValue v(!B)[\LogKs] =
\True$. By inductive hypothesis, case~(b), we get $\pValue
{v'}(!B)[\LogCL] = \True$, so $\pValue {v'}(\lnot !B)[\LogCL] = \False$.
\item Suppose $\pValue v(\lnot!B)[\LogKs] = \True$. By the
definition of $\tf{\lnot}[\LogKs]$, $\pValue v(!B)[\LogKs] =
\False$. By inductive hypothesis, case~(a), we get $\pValue
{v'}(!B)[\LogCL] = \False$, so $\pValue {v'}(\lnot !B)[\LogCL] = \True$.
\end{enumerate}
\item $!A \ident (!B \land !C)$.
\begin{enumerate}
\item Suppose $\pValue v(!B \land !C)[\LogKs] = \False$. By the
definition of $\tf{\land}[\LogKs]$, $\pValue v(!B)[\LogKs] =
\False$ or $\pValue v(!B)[\LogKs] = \False$. By inductive
hypothesis, case~(a), we get $\pValue {v'}(!B)[\LogCL] = \False$
or $\pValue {v'}(!C)[\LogCL] = \False$, so $\pValue {v'}(!B \land
!C)[\LogCL] = \False$.
\item Suppose $\pValue v(!B \land !C)[\LogKs] = \True$. By the
definition of $\tf{\land}[\LogKs]$, $\pValue v(!B)[\LogKs] =
\True$ and $\pValue v(!B)[\LogKs] = \True$. By inductive
hypothesis, case~(b), we get $\pValue {v'}(!B)[\LogCL] = \True$
and $\pValue {v'}(!C)[\LogCL] = \True$, so $\pValue {v'}(!B \land
!C)[\LogCL] = \True$.
\end{enumerate}
\end{enumerate}
The other two cases are similar, and left as exercises. Alternatively,
the proof above establishes the result for all !!{formula}s only
containing $\lnot$ and~$\land$. One may now appeal to the facts that in
both $\LogKs$ and $\LogCL$, for any $\pAssign v$, $\pValue v(!B \lor
!C) = \pValue v(\lnot(\lnot!B \land \lnot !C))$ and $\pValue v(!B \lif
!C) = \pValue v(\lnot(!B \land \lnot !C))$.
\end{proof}
\begin{prob}
Complete the proof \olref[mvl][thr][mul]{prop:LP-taut-CL}, i.e.,
establish (a) and~(b) for the cases where $!A \ident (!B \lor !C)$
and $!A \ident (!B \lif !C)$.
\end{prob}
\begin{prob}
Prove that every classical tautology is a tautology in~$\LogHal$.
\end{prob}
Although they have the same tautologies as classical logic, their
consequence relations are different. $\LogLP$, for instance, is
\emph{paraconsistent} in that $\lnot p, p \Entails/ q$, and so the
principle of explosion $\lnot !A, !A \Entails !B$ does not hold in
general. (It holds for some cases of $!A$ and $!B$, e.g., if $!B$~is a
tautology.)
\begin{prob}
Which of the following relations hold in (a)~$\LogLP$
and in (b)~$\LogHal$? Give a truth table for each.
\begin{enumerate}
\item $p, p \lif q \Entails q$
\item $\lnot q, p \lif q \Entails \lnot p$
\item $p \lor q, \lnot p \Entails q$
\item $\lnot p, p \Entails q$
\item $p \Entails p \lor q$
\item $p \lif q, q\lif r \Entails p \lif r$
\end{enumerate}
\end{prob}
What if you make $\Undef$ designated in $\LogLuk[3]$?
\begin{defn}
The logic \emph{3-valued R-Mingle}~$\LogRM[3]$ is defined using the matrix:
\begin{enumerate}
\item The standard propositional language $\Lang L_0$ with
$\lfalse$, $\lnot$, $\land$, $\lor$, $\lif$.
\item The set of truth values $V = \{\True, \Undef, \False\}$.
\item $\True$ and $\Undef$ are designated, i.e., $V^+ = \{\True, \Undef\}$.
\item Truth functions are the same as \L ukasiewicz logic~$\LogLuk[3]$.
\end{enumerate}
\end{defn}
\begin{prob}
Which of the following relations hold in $\LogRM[3]$?
\begin{enumerate}
\item $p, p \lif q \Entails q$
\item $p \lor q, \lnot p \Entails q$
\item $\lnot p, p \Entails q$
\item $p \Entails p \lor q$
\end{enumerate}
\end{prob}
Different truth tables can sometimes generate the same logic
(entailment relation) just by changing the designated values.
E.g., this happens if in G\"odel logic we take $V^+ = \{\True,
\Undef\}$ instead of~$\{\True\}$.
\begin{prop}\ollabel{prop:gl-udes}
The matrix with $V = \{\False, \Undef,\True\}$, $V^+=\{\True,
\Undef\}$, and the truth functions of $3$-valued G\"odel logic
defines classical logic.
\end{prop}
\begin{proof}
Exercise.
\end{proof}
\begin{prob}
Prove \olref[mvl][thr][mul]{prop:gl-udes} by showing that for the
logic~$\Log L$ defined just like G\"odel logic but with
$V^+=\{\True,\Undef\}$, if $\Gamma \Entails/[\Log L] !B$ then
$\Gamma \Entails/[\LogCL] !B$. Use the ideas of
\olref[mvl][thr][mul]{prop:LP-taut-CL}, except instead of proving
properties (a) and~(b), show that $\pValue v(!A)[\LogGod] = \False$
iff $\pValue {v'}(!A)[\LogCL] = \False$ (and hence that $\pValue
v(!A)[\LogGod] \in \{\True,\Undef\}$ iff $\pValue {v'}(!A)[\LogCL] =
\True$). Explain why this establishes the proposition.
\end{prob}
\end{document}Referencing norms: DesignatedCount, LP, P_EXPLOSION, ParaconsistentHere, contradiction_reading, designated_count, paraconsistent_here
The hash beside the text is the sha256 of its exact bytes. It is the check that the text shown matches the one pinned in the package: a divergence fails the oracle’s static analysis.