content/many-valued-logic/syntax-and-semantics/syntax-and-semantics.tex
1% Part: many-valued-logic2% Chapter: syntax-and-semantics34\documentclass[../../../include/open-logic-chapter]{subfiles}56\begin{document}78\olchapter{mvl}{syn}{Syntax and Semantics}910\olimport{introduction}1112\olimport{connectives}1314\olimport{formulas}1516\olimport{matrices}1718\olimport{valuations-sat}1920\olimport{semantic-notions}2122\olimport{sublogics}2324\OLEndChapterHook2526\end{document}
content/many-valued-logic/syntax-and-semantics/introduction.tex
1% Part: many-valued-logic2% Chapter: syntax-and-semantics3% Section: introduction45\documentclass[../../../include/open-logic-section]{subfiles}67\begin{document}89\olfileid{mvl}{syn}{int}1011\olsection{Introduction}1213In classical logic, we deal with !!{formula}s that are built from14!!{propositional variable}s using the propositional connectives15$\lnot$, $\land$, $\lor$, $\lif$, and $\liff$. When we define a16semantics for classical logic, we do so using the two truth values17$\True$ and $\False$. We interpret !!{propositional variable}s in18!!a{valuation}~$\pAssign{v}$, which assigns these truth values19$\True$, $\False$ to the !!{propositional variable}s. Any20!!{valuation} then determines a truth value $\pValue{v}(!A)$ for any21!!{formula}~$!A$, and !!^a{formula} is satisfied in22!!a{valuation}~$\pAssign{v}$, $\pSat{v}{!A}$, iff $\pValue{v}(!A) =23\True$.2425Many-valued logics are generalizations of classical two-valued logic26by allowing more truth values than just $\True$ and $\False$. So in27many-valued logic, !!a{valuation}~$\pAssign{v}$ is a function28assigning to every !!{propositional variable}~$p$ one of a range of29possible truth values. We'll generally call the set of allowed truth30values~$V$. Classical logic is a many-valued logic where $V =31\{\True, \False\}$, and the truth value~$\pValue{v}(!A)$ is computed32using the familiar characteristic truth tables for the connectives.3334Once we add additional truth values, we have more than one natural35option for how to compute~$\pValue{v}(!A)$ for the connectives we read36as ``and,'' ``or,'' ``not,'' and ``if---then.'' So a many-valued37logic is determined not just by the set of truth values, but also by38the \emph{truth functions} we decide to use for each connective. Once39these are selected for a many-valued logic~$\Log L$, however, the40truth value $\pValue{v}(!A)[\Log L]$ is uniquely determined by the41valuation, just like in classical logic. Many-valued logics, like42classical logic, are \emph{truth functional}.4344With this semantic building blocks in hand, we can go on to define the45analogs of the semantic concepts of tautology, entailment, and46satisfiability. In classical logic, !!a{formula} is a tautology if47its truth value $\pValue{v}(!A) = \True$ for any~$\pAssign{v}$. In48many-valued logic, we have to generalize this a bit as well. First of49all, there is no requirement that the set of truth values~$V$50contains~$\True$. For instance, some many-valued logics use numbers,51such as all rational numbers between $0$ and~$1$ as their set of truth52values. In such a case, $1$~usually plays the rule of~$\True$. In53other logics, not just one but several truth values do. So, we54require that every many-valued logic have a set~$V^+$ of55\emph{designated values}. We can then say that !!a{formula} is56satisfied in !!a{valuation}~$\pAssign{v}$, $\pSat{v}{!A}[\Log L]$, iff57$\pValue{v}(!A)[\Log L] \in V^+$. !!^a{formula}~$!A$ is a tautology of the58logic, $\Entails[\Log L] !A$, iff $\pValue{v}(!A) \in V^+$ for59any~$\pAssign{v}$. And, finally, we say that $!A$ is entailed by a set60of !!{formula}s, $\Gamma \Entails[\Log L] !A$, if every !!{valuation} that61satisfies all the !!{formula}s in~$\Gamma$ also satisfies~$!A$.6263\end{document}
content/many-valued-logic/syntax-and-semantics/connectives.tex
1% Part: many-valued-logic2% Chapter: syntax-and-semantics3% Section: connectives45\documentclass[../../../include/open-logic-section]{subfiles}67\begin{document}89\olfileid{mvl}{syn}{con}1011\olsection{Languages and Connectives}1213Classical propositional logic, and many other logics, use a set supply14of \emph{propositional constants} and \emph{connectives}. For15instance, we use the following as primitives:16\begin{enumerate}17\tagitem{prvFalse}{The propositional constant for !!{falsity}~$\lfalse$.}{}18\tagitem{prvTrue}{The propositional constant for !!{truth}~$\ltrue$.}{}19\item The logical connectives:20 \startycommalist21 \iftag{prvNot}{\ycomma $\lnot$ (negation)}{}%22 \iftag{prvAnd}{\ycomma $\land$ (conjunction)}{}%23 \iftag{prvOr}{\ycomma $\lor$ (disjunction)}{}%24 \iftag{prvIf}{\ycomma $\lif$ (!!{conditional})}{}%25 \iftag{prvIff}{\ycomma $\liff$ (!!{biconditional})}{}%26\end{enumerate}27\iftag{defNot,defOr,defAnd,defIf,defIff,defTrue,defFalse,defEx,defAll}{%28In addition to the primitive connectives above, we also use symbols29defined as abbreviations, such as30\startycommalist31 \iftag{defNot}{\ycomma $\lnot$ (negation)}{}%32 \iftag{defAnd}{\ycomma $\land$ (conjunction)}{}%33 \iftag{defOr}{\ycomma $\lor$ (disjunction)}{}%34 \iftag{defIf}{\ycomma $\lif$ (!!{conditional})}{}%35 \iftag{defIff}{\ycomma $\liff$ (!!{biconditional})}{}%36 \iftag{defFalse}{\ycomma $\lfalse$ (!!{falsity})}{}%37 \iftag{defTrue}{\ycomma $\ltrue$ (!!{truth})}.}{}3839The same connectives are used in many-valued logics as well. However,40it is often useful to include different versions of, say, conjunction,41in the same logic, and that would require different symbols to keep42the versions separate. Some many-valued logics also include43connectives that have no equivalent in classical logic. So, we'll be a44bit more general than usual.4546\begin{defn}47 A \emph{propositional language} consists of a set $\Lang L$ of48 \emph{connectives}. Each connective $\star$ has an \emph{arity}; a49 connective of arity~$n$ is said to be \emph{$n$-place.}50 Connectives of arity~$0$ are also called \emph{constants};51 connectives of arity~$1$ are called \emph{unary}, and connectives of52 arity~$2$, \emph{binary}.53\end{defn}5455\begin{ex}56 The standard language of propositional logic $\Lang L_0$ consists of57 the following connectives (with associated arities): 58 $\lfalse$~($0$)59 $\lnot$~($1$),60 $\land$~($2$),61 $\lor$~($2$),62 $\lif$~($2$). Most logics we consider will use this language. Some63 logics by tradition an convention use different symbols for some64 connectives. For instance, in product logic, the conjunction symbol65 is often $\odot$ instead of~$\land$. Sometimes it is convenient to66 add a new operator, e.g., the determinateness operator $\triangle$67 ($1$-place).68\end{ex}6970\end{document}
content/many-valued-logic/syntax-and-semantics/formulas.tex
1% Part: many-valued-logic2% Chapter: syntax-and-semantics3% Section: formulas45\documentclass[../../../include/open-logic-section]{subfiles}67\begin{document}89\olfileid{mvl}{syn}{fml}1011\olsection{\usetoken{P}{formula}}1213\begin{defn}[Formula]14\ollabel{defn:formulas}15The set~$\Frm[L]$ of \emph{!!{formula}s} of a propositional16language~$\Lang L$ is defined inductively as follows:17\begin{enumerate}18\item Every !!{propositional variable}~$\Obj p_i$ is an atomic19 !!{formula}.20\item Every $0$-place connective (propositional constant) of~$\Lang L$21is an atomic !!{formula}.22\item If $\star$ is an $n$-place connective of~$\Lang L$, and $!A_1$,23\dots, $!A_n$ are !!{formula}s, then $\star(!A_1, \dots, !A_n)$ is24 !!a{formula}.25\tagitem{limitClause}{Nothing else is !!a{formula}.}{}26\end{enumerate}27If $\star$ is $1$-place, then $\star(!A_1)$ will often be written28simply as $\star !A_1$. If $\star$ is $2$-place $\star(!A_1,!A_2)$29will often be written as $(!A_1 \star !A_2)$. 30\end{defn}3132As usual, we will often silently leave out the outermost parentheses.3334\begin{ex}35 In the standard language~$\Lang{L_0}$, $\Obj p_1 \lif (\Obj p_136 \land \lnot \Obj p_2)$ is a formula. In the language of product37 logic, it would be written instead as $\Obj p_1 \lif (\Obj p_1 \odot38 \lnot \Obj p_2)$. If we add the $1$-place $\triangle$ to the39 language, we would also have formulas such as $\triangle (\Obj p_140 \land \Obj p_2) \lif (\triangle \Obj p_1 \land \triangle \Obj p_2)$.41\end{ex}4243\end{document}
content/many-valued-logic/syntax-and-semantics/matrices.tex
1% Part: many-valued-logic2% Chapter: syntax-and-semantics3% Section: matrices45\documentclass[../../../include/open-logic-section]{subfiles}67\begin{document}89\olfileid{mvl}{syn}{mat}1011\olsection{Matrices}1213A many-valued logic is defined by its language, its set of truth14values~$V$, a subset of designated truth values, and truth functions15for its connective. Together, these elements are called a \emph{matrix}. 1617\begin{defn}[Matrix]18\ollabel{defn:matrix}19A \emph{matrix} for the logic~$\Log L$ consists of:20\begin{enumerate}21\item a set of connectives making up a language~$\Lang L$;22\item a set $V \neq \emptyset$ of truth values;23\item a set $V^+ \subseteq V$ of designated truth values;24\item for each $n$-place connective $\star$ in $\Lang L$, a truth25function~$\tf{\star} : V^n \to V$. If $n = 0$, then $\tf{\star}$ is26just an element of~$V$.27\end{enumerate}28\end{defn}2930\begin{ex}31The matrix for classical logic~\LogCL{} consists of:32\begin{enumerate}33 \item The standard propositional language $\Lang L_0$ with34 $\lfalse$, $\lnot$, $\land$, $\lor$, $\lif$.35 \item The set of truth values $V = \{\True, \False\}$.36 \item $\True$ is the only designated value, i.e., $V^+ = \{\True\}$.37 \item For $\lfalse$, we have $\tf{\lfalse} = \False$. The other38 truth functions are given by the usual truth tables (see39 \olref{fig:tf-CL}).40\end{enumerate}41\begin{figure}42 \begin{center}43 \begin{tabular}{c|c} 44 $\tf{\lnot}$ & \\ 45 \hline 46 $\True$ & $\False$ \\ 47 $\False$ & $\True$ 48 \end{tabular}49 \quad50 \begin{tabular}{c|cc} 51 $\tf{\land}$ & $\True$ & $\False$ \\ 52 \hline 53 $\True$ & $\True$ & $\False$ \\ 54 $\False$ & $\False$ & $\False$ 55 \end{tabular}56 \quad57 \begin{tabular}{c|cc} 58 $\tf{\lor}$ & $\True$ & $\False$ \\ 59 \hline 60 $\True$ & $\True$ & $\True$ \\ 61 $\False$ & $\True$ & $\False$ 62 \end{tabular}63 \quad64 \begin{tabular}{c|cc} 65 $\tf{\lif}$ & $\True$ & $\False$ \\ 66 \hline 67 $\True$ & $\True$ & $\False$ \\ 68 $\False$ & $\True$ & $\True$ 69 \end{tabular}70 \end{center} 71 \caption{Truth functions for classical logic~$\LogCL$.}72 \ollabel{fig:tf-CL}73 \end{figure}74 \end{ex}7576\end{document}
content/many-valued-logic/syntax-and-semantics/valuations-sat.tex
1% Part: many-valued-logic2% Chapter: syntax-and-semantics3% Section: valuations-sat45\documentclass[../../../include/open-logic-section]{subfiles}67\begin{document}89\olfileid{mvl}{syn}{val}1011\olsection{\usetoken{P}{valuation} and Satisfaction}1213\begin{defn}[!!^{valuation}s] 14Let $V$ be a set of truth values. A \emph{!!{valuation}} for15$\Lang{L}$ into~$V$ is a16function~$\pAssign{v}$ assigning !!a{element} of~$V$ to the17!!{propositional variable}s of the language, i.e., $\pAssign{v} \colon18\PVar \to V$.19\end{defn}2021\begin{defn}\ollabel{defn:pValue}22 Given !!a{valuation}~$\pAssign{v}$ into the set of truth values~$V$ of a23 many-valued logic~$\Log L$, define the evaluation function24 $\pValue{v} \colon \Frm[L] \to V$ inductively by:25 \begin{enumerate}26 \item $\pValue{v}(\Obj p_n) = \pAssign{v}(\Obj p_n)$; 27 \item If $\star$ is a $0$-place connective, then $\pValue{v}(\star) = \tf{\star}[\Log L]$;28 \item If $\star$ is an $n$-place connective, then 29 \[30 \pValue{v}(\star(!A_1, \dots, !A_n)) = \tf{\star}[\Log L]31 (\pValue{v}(!A_1), \dots, \pValue{v}(!A_n)).32 \]33 \end{enumerate}34\end{defn}3536\begin{defn}[Satisfaction]37\ollabel{defn:satisfaction} The !!{formula}~$!A$ is \emph{satisfied}38 by !!a{valuation}~$\pAssign{v}$, $\pSat{v}{!A}[\Log L]$, iff39 $\pValue{v}(!A)[\Log L] \in V^+$, where $V^+$ is the set of40 designated truth values of~$\Log L$. 41 42 We write $\pSat/{v}{!A}[\Log L]$ to mean ``not $\pSat{v}{!A}[\Log43 L]$.'' If $\Gamma$ is a set of !!{formula}s, $\pSat{v}{\Gamma}[\Log44 L]$ iff $\pSat{v}{!A}[\Log L]$ for every~$!A \in \Gamma$.45\end{defn}4647\end{document}
content/many-valued-logic/syntax-and-semantics/semantic-notions.tex
1% Part: many-valued-logic2% Chapter: syntax-and-semantics3% Section: semantic-notions45\documentclass[../../../include/open-logic-section]{subfiles}67\begin{document}89\olfileid{mvl}{syn}{sem}1011\olsection{Semantic Notions}1213Suppose a many-valued logic $\Log L$ is given by a matrix. Then we14can define the usual semantic notions for~$\Log L$.1516\begin{defn} 17\begin{enumerate}18\item !!^a{formula}~$!A$ is \emph{satisfiable} if for19 some~$\pAssign{v}$, $\pSat{v}{!A}$; it is20 \emph{unsatisfiable} if for no $\pAssign{v}$, $\pSat{v}{!A}$;21\item !!^a{formula}~$!A$ is a \emph{tautology} if $\pSat{v}{!A}$ for22 all !!{valuation}s~$v$;23\item If $\Gamma$ is a set of !!{formula}s, $\Gamma \Entails !A$ (``$\Gamma$24 entails $!A$'') if and only if $\pSat{v}{!A}$ for every25 !!{valuation}~$\pAssign{v}$ for which $\pSat{v}{\Gamma}$.26\item If $\Gamma$ is a set of !!{formula}s, $\Gamma$ is27 \emph{satisfiable} if there is !!a{valuation}~$\pAssign{v}$ for which28 $\pSat{v}{\Gamma}$, and $\Gamma$ is29 \emph{unsatisfiable} otherwise.30\end{enumerate} 31\end{defn}3233We have some of the same facts for these notions as we do for34the case of classical logic:3536\begin{prop}37\ollabel{prop:semanticalfacts} 38\begin{enumerate} 39\item $!A$ is a tautology if and only if40 $\emptyset \Entails !A$; 41\item If $\Gamma$ is satisfiable then every finite subset of $\Gamma$42 is also satisfiable; 43\item\ollabel{def:monotonicity}%44Monotonicity: if $\Gamma \subseteq \Delta$45 and $\Gamma \Entails !A$ then also $\Delta \Entails !A$;46\item\ollabel{def:Cut}%47Transitivity: if $\Gamma \Entails !A$ and48 $\Delta \cup \{ !A\} \Entails !B$ then $\Gamma \cup \Delta \Entails49 !B$;50\end{enumerate}51\end{prop}5253\begin{proof}54Exercise.55\end{proof}5657\begin{prob}58Prove \olref[mvl][syn][sem]{prop:semanticalfacts}59\end{prob}6061In classical logic we can connect entailment and the conditional. For62instance, we have the validity of \emph{modus ponens}: If $\Gamma63\Entails !A$ and $\Gamma \Entails !A \lif !B$ then $\Gamma \Entails64!B$. Another important relationship between $\Entails$ and $\lif$ in65classical logic is the semantic deduction theorem: $\Gamma \Entails !A66\lif !B$ if and only if $\Gamma \cup \{!A\} \Entails !B$. These67results \emph{do not} always hold in many-valued logics. Whether they68do depends on the truth function~$\tf{\lif}$.6970\end{document}
content/many-valued-logic/syntax-and-semantics/sublogics.tex
1% Part: many-valued-logic2% Chapter: syntax-and-semantics3% Section: sublogics45\documentclass[../../../include/open-logic-section]{subfiles}67\begin{document}89\olfileid{mvl}{syn}{sub}1011\olsection{Many-valued logics as sublogics of~$\LogCL$}1213The usual many-valued logics are all defined using matrices in which14the value of a truth-function for arguments in $\{\True, \False\}$15agrees with the classical truth functions. Specifically, in these16logics, if $x \in \{\True, \False\}$, then $\tf{\lnot}[\Log L](x) =17\tf{\lnot}[\LogCL](x)$, and for $\star$ any one of $\land$, $\lor$,18$\lif$, if $x, y \in \{\True, \False\}$, then $\tf{\star}[\Log L](x,y) =19\tf{\star}[\LogCL](x,y)$. In other words, the truth functions for20$\lnot$, $\land$, $\lor$, $\lif$ restricted to $\{\True,\False\}$ are21exactly the classical truth functions.2223\begin{prop}\ollabel{prop:mvl-cl}24 Suppose that a many-valued logic~$\Log L$ contains the connectives25 $\lnot$, $\land$, $\lor$, $\lif$ in its language, $\True, \False \in26 V$, and its truth27 functions satisfy:28 \begin{enumerate}29 \item\ollabel{prop:not} $\tf{\lnot}[\Log L](x) = \tf{\lnot}[\LogCL](x)$ if $x =30 \True$ or $x = \False$;31 \item\ollabel{prop:land} $\tf{\land}[\Log L](x,y) = \tf{\land}[\LogCL](x,y)$,32 \item\ollabel{prop:lor} $\tf{\lor}[\Log L](x,y) = \tf{\lor}[\LogCL](x,y)$,33 \item\ollabel{prop:lif} $\tf{\lif}[\Log L](x,y) = \tf{\lif}[\LogCL](x,y)$,34 if $x, y \in \{\True, \False\}$.35 \end{enumerate}36 Then, for any valuation $\pAssign v$ into~$V$ such that $\pAssign37 v(p) \in \{\True,\False\}$, $\pValue v[\Log L](!A) = \pValue38 v[\LogCL](!A)$.39\end{prop}4041\begin{proof}42 By induction on~$!A$.43 \begin{enumerate}44 \item If $!A \ident p$ is atomic, we have $\pValue v[\Log L](!A) =45 \pAssign v(p) = \pValue46 v[\LogCL](!A)$.47 \item If $!A \ident \lnot B$, we have48 \begin{align*}49 \pValue v[\Log L](!A) & = \tf{\lnot}[\Log L](\pValue v[\Log L](!B)) & &\text{by \olref[val]{defn:pValue}}\\50 & = \tf{\lnot}[\Log L](\pValue v[\LogCL](!B)) && \text{by inductive hypothesis}\\51 & = \tf{\lnot}[\LogCL](\pValue v[\LogCL](!B)) 52&&\text{by assumption \olref{prop:not},}\\53&&&\text{since $\pValue v[\LogCL](!B) \in \{\True, \False\}$,}\\54& = \pValue v[\LogCL](!A) &&\text{by \olref[val]{defn:pValue}}.55\end{align*}56\item If $!A \ident (!B \land !C)$, we have57\begin{align*}58 \pValue v[\Log L](!A) & = \tf{\land}[\Log L](\pValue v[\Log L](!B), \pValue v[\Log L](!C)) & &\text{by \olref[val]{defn:pValue}}\\59 & = \tf{\land}[\Log L](\pValue v[\LogCL](!B),\pValue v[\LogCL](!C)) && \text{by inductive hypothesis}\\60 & = \tf{\land}[\LogCL](\pValue v[\LogCL](!B),\pValue v[\LogCL](!C)) 61&&\text{by assumption \olref{prop:land},}\\62&&&\text{since $\pValue v[\LogCL](!B),\pValue v[\LogCL](!C) \in \{\True, \False\}$,}\\63& = \pValue v[\LogCL](!A) &&\text{by \olref[val]{defn:pValue}}.64\end{align*}65\end{enumerate}66The cases where $!A \ident (!B \lor !C)$ and $!A \ident (!B \lif !C)$67are similar.68\end{proof}6970\begin{cor}71 If a many-valued logic satisfies the conditions of72 \olref{prop:mvl-cl}, $\True \in V^+$ and $\False \notin V^+$, then73 ${\Entails[\Log L]} \subseteq {\Entails[\LogCL]}$, i.e., if $\Gamma74 \Entails[\Log L] !B$ then $\Gamma \Entails[\LogCL] !B$. In75 particular, every tautology of $\Log L$ is also a classical tautology.76\end{cor}7778\begin{proof}79 We prove the contrapositive. Suppose $\Gamma \Entails/[\LogCL] !B$.80 Then there is some !!{valuation}~$\pAssign v\colon \PVar \to81 \{\True, \False\}$ such that $\pValue v[\LogCL](!A) = \True$ for all82 $!A \in \Gamma$ and $\pValue v[\LogCL](!B) = \False$. Since $\True,83 \False \in V$, the !!{valuation}~$\pAssign v$ is also !!a{valuation}84 for~$\Log L$. By \olref{prop:mvl-cl}, $\pValue v[\Log L](!A) =85 \True$ for all $!A \in \Gamma$ and $\pValue v[\Log L](!B) = \False$.86 Since $\True \in V^+$ and $\False \notin V^+$ that means $\pAssign v87 \Entails[\Log L] \Gamma$ and $\pAssign v \Entails/[\Log L] !B$,88 i.e., $\Gamma \Entails/[\Log L] !B$.89\end{proof}90\end{document}