Source and provenance

All nine authority files and all 1,517 lines are shown exactly and copied byte-for-byte. Reader corrections are disclosures only; the source text below is not altered.

content/first-order-logic/tableaux/tableaux.tex

54 lines; SHA-256 eaf9e7719e1e71efb2b82fa80bae67063790e30ef901686a065a23536e253098. Open the byte-exact preserved source file.

  1. % Part: first-order-logic
  2. % Chapter: tableaux
  3. \documentclass[../../../include/open-logic-chapter]{subfiles}
  4. \begin{document}
  5. \iftag{FOL}
  6. {\olchapter{fol}{tab}{Tableaux}}
  7. {\olchapter{pl}{tab}{Tableaux}}
  8. \begin{editorial}
  9. This chapter presents a signed analytic tableaux system.
  10. To include or exclude material relevant to natural deduction as a
  11. proof system, use the ``prfTab'' tag.
  12. \end{editorial}
  13. \olimport{rules-and-proofs}
  14. \olimport{propositional-rules}
  15. \iftag{FOL}{%
  16. \olimport{quantifier-rules}
  17. }{}
  18. \olimport{derivations}
  19. \olimport{proving-things}
  20. \iftag{FOL}{%
  21. \olimport{proving-things-quant}
  22. }{}
  23. \olimport{proof-theoretic-notions}
  24. \olimport{provability-consistency}
  25. \olimport{provability-propositional}
  26. \iftag{FOL}{%
  27. \olimport{provability-quantifiers}
  28. }{}
  29. \olimport{soundness}
  30. \iftag{FOL}{%
  31. \olimport{identity}
  32. \olimport{soundness-identity}
  33. }{}
  34. \OLEndChapterHook
  35. \end{document}

content/first-order-logic/tableaux/rules-and-proofs.tex

59 lines; SHA-256 93cbe7b304b8ad0c3140c23d139dccdf37df9fe8756cb25d8ca47efe1ee6f84d. Open the byte-exact preserved source file.

  1. % Part: first-order-logic
  2. % Chapter: tableaux
  3. % Section: rules-and-proofs
  4. \documentclass[../../../include/open-logic-section]{subfiles}
  5. \begin{document}
  6. \iftag{FOL}
  7. {\olfileid{fol}{tab}{rul}}
  8. {\olfileid{pl}{tab}{rul}}
  9. \olsection{Rules and \usetoken{P}{tableau}}
  10. !!^a{tableau} is a systematic survey of the possible ways
  11. !!a{sentence} can be true or false in !!a{structure}. The building
  12. blocks of a tableau are !!{signed formula}s: !!{sentence}s plus a
  13. truth value ``sign,'' either $\True$ or~$\False$. These signed
  14. !!{formula}s are arranged in a (downward growing) tree.
  15. \begin{defn}
  16. A \emph{!!{signed formula}} is a pair consisting of a truth value
  17. and !!a{sentence}, i.e., either:
  18. \[
  19. \sFmla{\True}{!A} \text{ or } \sFmla{\False}{!A}.
  20. \]
  21. \end{defn}
  22. Intuitively, we might read $\sFmla{\True}{!A}$ as ``$!A$ might be
  23. true'' and $\sFmla{\False}{!A}$ as ``$!A$ might be false'' (in some
  24. !!{structure}).
  25. Each !!{signed formula} in the tree is either an \emph{assumption}
  26. (which are listed at the very top of the tree), or it is obtained from
  27. !!a{signed formula} above it by one of a number of rules of
  28. inference. There are two rules for each possible !!{main operator} of
  29. the preceding !!{formula}, one for the case where the sign is~$\True$,
  30. and one for the case where the sign is~$\False$. Some rules allow the
  31. tree to branch, and some only add !!{signed formula}s to the branch.
  32. A rule may be (and often must be) applied not to the immediately
  33. preceding !!{signed formula}, but to any !!{signed formula} in the
  34. branch from the root to the place the rule is applied.
  35. A branch is \emph{closed} when it contains both $\sFmla{\True}{!A}$
  36. and $\sFmla{\False}{!A}$. A closed !!{tableau} is one where every branch
  37. is closed. Under the intuitive interpretation, any branch describes a
  38. joint possibility, but $\sFmla{\True}{!A}$ and $\sFmla{\False}{!A}$
  39. are not jointly possible. In other words, if a branch is closed, the
  40. possibility it describes has been ruled out. In particular, that means
  41. that a closed !!{tableau} rules out all possibilities of simultaneously
  42. making every assumption of the form $\sFmla{\True}{!A}$ true and every
  43. assumption of the form~$\sFmla{\False}{!A}$ false.
  44. A closed !!{tableau} \emph{for $!A$} is a closed !!{tableau} with
  45. root~$\sFmla{\False}{!A}$. If such a closed !!{tableau} exists, all
  46. possibilities for~$!A$ being false have been ruled out; i.e., $!A$
  47. must be true in every !!{structure}.
  48. \end{document}

content/first-order-logic/tableaux/propositional-rules.tex

93 lines; SHA-256 0e0a8d69ddabb157d54f03e7ff21416fb0c818e481343f4ac00ee4ba1d5bf151. Open the byte-exact preserved source file.

  1. % Part: first-order-logic
  2. % Chapter: tableaux
  3. % Section: propositional-rules
  4. \documentclass[../../../include/open-logic-section]{subfiles}
  5. \begin{document}
  6. \iftag{FOL}
  7. {\olfileid{fol}{tab}{prl}}
  8. {\olfileid{pl}{tab}{prl}}
  9. \olsection{Propositional Rules}
  10. \subsection{Rules for $\lnot$}
  11. \begin{defish}
  12. \AxiomC{\sFmla{\True}{\lnot !A}}
  13. \RightLabel{\TRule{\True}{\lnot}}
  14. \UnaryInfC{\sFmla{\False}{!A}}
  15. \DisplayProof
  16. \hfill
  17. \AxiomC{\sFmla{\False}{\lnot !A}}
  18. \RightLabel{\TRule{\False}{\lnot}}
  19. \UnaryInfC{\sFmla{\True}{!A}}
  20. \DisplayProof
  21. \end{defish}
  22. \subsection{Rules for $\land$}
  23. \begin{defish}\noindent
  24. \AxiomC{\sFmla{\True}{!A \land !B}}
  25. \RightLabel{\TRule{\True}{\land}}
  26. \UnaryInfC{\sFmla{\True}{!A}}
  27. \noLine
  28. \UnaryInfC{\sFmla{\True}{!B}}
  29. \DisplayProof
  30. \hfill
  31. \AxiomC{\sFmla{\False}{!A \land !B}}
  32. \RightLabel{\TRule{\False}{\land}}
  33. \UnaryInfC{$\sFmla{\False}{!A} \quad \mid \quad \sFmla{\False}{!B}$}
  34. \DisplayProof
  35. \end{defish}
  36. \subsection{Rules for $\lor$}
  37. \begin{defish}
  38. \AxiomC{\sFmla{\True}{!A \lor !B}}
  39. \RightLabel{\TRule{\True}{\lor}}
  40. \UnaryInfC{$\sFmla{\True}{!A} \quad \mid \quad \sFmla{\True}{!B}$}
  41. \DisplayProof
  42. \hfill
  43. \AxiomC{\sFmla{\False}{!A \lor !B}}
  44. \RightLabel{\TRule{\False}{\lor}}
  45. \UnaryInfC{\sFmla{\False}{!A}}
  46. \noLine
  47. \UnaryInfC{\sFmla{\False}{!B}}
  48. \DisplayProof
  49. \end{defish}
  50. \subsection{Rules for $\lif$}
  51. \begin{defish}
  52. \AxiomC{\sFmla{\True}{!A \lif !B}}
  53. \RightLabel{\TRule{\True}{\lif}}
  54. \UnaryInfC{$\sFmla{\False}{!A} \quad \mid \quad \sFmla{\True}{!B}$}
  55. \DisplayProof
  56. \hfill
  57. \AxiomC{\sFmla{\False}{!A \lif !B}}
  58. \RightLabel{\TRule{\False}{\lif}}
  59. \UnaryInfC{\sFmla{\True}{!A}}
  60. \noLine
  61. \UnaryInfC{\sFmla{\False}{!B}}
  62. \DisplayProof
  63. \end{defish}
  64. \subsection{The Cut Rule}
  65. \begin{defish}
  66. \AxiomC{}
  67. \RightLabel{\Cut}
  68. \UnaryInfC{$\sFmla{\True}{!A} \quad \mid \quad \sFmla{\False}{!A}$}
  69. \DisplayProof
  70. \end{defish}
  71. The \Cut{} rule is not applied ``to'' a previous !!{signed formula}; rather,
  72. it allows every branch in !!a{tableau} to be split in two, one branch
  73. containing $\sFmla{\True}{!A}$, the other~$\sFmla{\False}{!A}$. It is
  74. not necessary---any set of !!{signed formula}s with a closed
  75. !!{tableau} has one not using \Cut---but it allows us to combine
  76. !!{tableau}s in a convenient way.
  77. \end{document}

content/first-order-logic/tableaux/derivations.tex

96 lines; SHA-256 3f3e041127342c4f2565632d33c855fcb7a87964d63beb38bd8313c8a71ad294. Open the byte-exact preserved source file.

  1. % Part: first-order-logic
  2. % Chapter: tableaux
  3. % Section: derivations
  4. \documentclass[../../../include/open-logic-section]{subfiles}
  5. \begin{document}
  6. \iftag{FOL}
  7. {\olfileid{fol}{tab}{der}}
  8. {\olfileid{pl}{tab}{der}}
  9. \olsection{\usetoken{P}{tableau}}
  10. \begin{explain}
  11. We've said what an assumption is, and we've given the rules of
  12. inference. !!^{tableau}s are inductively generated from these: each
  13. !!{tableau} either is a single branch consisting of one or more
  14. assumptions, or it results from !!a{tableau} by applying one of the
  15. rules of inference on a branch.
  16. \end{explain}
  17. \begin{defn}[!!^{tableau}]
  18. !!^a{tableau} for assumptions $\sFmla{S_1}{!A_1}$, \dots,
  19. $\sFmla{S_n}{!A_n}$ (where each $S_i$ is either $\True$ or~$\False$) is
  20. a finite tree of !!{signed formula}s satisfying the following conditions:
  21. \begin{enumerate}
  22. \item The $n$ topmost !!{signed formula}s of the tree are
  23. $\sFmla{S_i}{!A_i}$, one below the other.
  24. \item Every !!{signed formula} in the tree that is not one of the
  25. assumptions results from a correct application of an inference rule
  26. to !!a{signed formula} in the branch above it.
  27. \end{enumerate}
  28. A branch of !!a{tableau} is \emph{closed} iff it contains both
  29. $\sFmla{\True}{!A}$ and~$\sFmla{\False}{!A}$, and \emph{open}
  30. otherwise. !!^a{tableau} in which every branch is closed is a
  31. \emph{closed !!{tableau}} (for its set of assumptions). If !!a{tableau} is
  32. not closed, i.e., if it contains at least one open branch, it is
  33. \emph{open}.
  34. \end{defn}
  35. \begin{ex}
  36. Every set of assumptions on its own is !!a{tableau}, but it will
  37. generally not be closed. (Obviously, it is closed only if the
  38. assumptions already contain a pair of !!{signed formula}s
  39. $\sFmla{\True}{!A}$ and~$\sFmla{\False}{!A}$.)
  40. From !!a{tableau} (open or closed) we can obtain a new, larger one by
  41. applying one of the rules of inference to !!a{signed formula}~$!A$
  42. in it. The rule will append one or more !!{signed formula}s to the end of
  43. any branch containing the occurrence of~$!A$ to which we apply the
  44. rule.
  45. For instance, consider the assumption $\sFmla{\True}{!A \land \lnot
  46. !A}$. Here is the (open) !!{tableau} consisting of just that
  47. assumption:
  48. \begin{center}
  49. \begin{tableau}{}
  50. [\sFmla{\True}{\formula{A} \land \lnot \formula{A}}, just=\TAss]
  51. \end{tableau}{}
  52. \end{center}
  53. We obtain a new !!{tableau} from it by applying the $\TRule{\True}{\land}$
  54. rule to the assumption. That rule allows us to add two new lines to
  55. the !!{tableau}, $\sFmla{\True}{!A}$ and $\sFmla{\True}{\lnot !A}$:
  56. \begin{center}
  57. \begin{tableau}{}
  58. [\sFmla{\True}{\formula{A} \land \lnot \formula{A}}, just=\TAss
  59. [\sFmla{\True}{\formula{A}}, just={\TRule{\True}{\land}[1]},
  60. [\sFmla{\True}{\lnot \formula{A}}, just={\TRule{\True}{\land}[1]}
  61. ]
  62. ]
  63. ]
  64. \end{tableau}{}
  65. \end{center}
  66. When we write down !!{tableau}s, we record the rules we've applied
  67. on the right (e.g., $\TRule{\True}{\land} 1$ means that the
  68. !!{signed formula} on that line is the result of applying the
  69. $\TRule{\True}{\land}$ rule to the !!{signed formula} on line~$1$).
  70. This new !!{tableau} now contains additional !!{signed formula}s,
  71. but to only one ($\sFmla{\True}{\lnot !A}$) can we apply a rule (in
  72. this case, the $\TRule{\True}{\lnot}$ rule). This results in the closed
  73. !!{tableau}
  74. \begin{center}
  75. \begin{tableau}{}
  76. [\sFmla{\True}{\formula{A} \land \lnot \formula{A}}, just=\TAss
  77. [\sFmla{\True}{\formula{A}}, just={\TRule{\True}{\land}[1]}
  78. [\sFmla{\True}{\lnot \formula{A}}, just={\TRule{\True}{\land}[1]}
  79. [\sFmla{\False}{\formula{A}}, just={\TRule{\True}{\lnot}[3]}, close]
  80. ]
  81. ]
  82. ]
  83. \end{tableau}{}
  84. \end{center}
  85. \end{ex}
  86. \end{document}

content/first-order-logic/tableaux/proving-things.tex

460 lines; SHA-256 ba6a2d3c2f7c7504daa17942290c75084bbfab92663a492557ca6530a175d914. Open the byte-exact preserved source file.

  1. % Part: first-order-logic
  2. % Chapter: tableaux
  3. % Section: proving-things
  4. \documentclass[../../../include/open-logic-section]{subfiles}
  5. \begin{document}
  6. \iftag{FOL}
  7. {\olfileid{fol}{tab}{pro}}
  8. {\olfileid{pl}{tab}{pro}}
  9. \olsection{Examples of \usetoken{P}{tableau}}
  10. \begin{ex}
  11. Let's find a closed !!{tableau} for the !!{sentence} $(!A \land !B) \lif !A$.
  12. We begin by writing the corresponding assumption at the top of the
  13. !!{tableau}.
  14. \begin{oltableau}
  15. [\sFmla{\False}{(\formula{A} \land \formula{B}) \lif \formula{A}},
  16. just = \TAss]
  17. \end{oltableau}
  18. There is only one assumption, so only one !!{signed formula} to which
  19. we can apply a rule. (For every !!{signed formula}, there is always at
  20. most one rule that can be applied: it's the rule for the corresponding
  21. sign and !!{main operator} of the !!{sentence}.) In this case, this
  22. means, we must apply $\TRule{\False}{\lif}$.
  23. \begin{oltableau}
  24. [\sFmla{\False}{(\formula{A} \land \formula{B}) \lif \formula{A}},
  25. checked, just = \TAss
  26. [\sFmla{\True}{\formula{A} \land \formula{B}},
  27. just={\TRule{\False}{\lif}[1]}
  28. [\sFmla{\False}{\formula{A}}, just={\TRule{\False}{\lif}[1]}]
  29. ]
  30. ]
  31. \end{oltableau}
  32. To keep track of which !!{signed formula}s we have applied their
  33. corresponding rules to, we write a checkmark next to the
  34. sentence. However, \emph{only} write a checkmark if the rule has been
  35. applied to all open branches. Once !!a{signed formula} has had the
  36. corresponding rule applied in every open branch, we will not have to
  37. return to it and apply the rule again. In this case, there is only one
  38. branch, so the rule only has to be applied once. (Note that checkmarks
  39. are only a convenience for constructing tableaux and are not
  40. officially part of the syntax of tableaux.)
  41. There is one new !!{signed formula} to which we can apply a rule: the
  42. $\sFmla{\True}{!A \land !B}$ on line~$2$. Applying the
  43. $\TRule{\True}{\land}$ rule results in:
  44. \begin{oltableau}
  45. [\sFmla{\False}{(\formula{A} \land \formula{B}) \lif \formula{A}},
  46. checked, just = \TAss
  47. [\sFmla{\True}{\formula{A} \land \formula{B}},
  48. just={\TRule{\False}{\lif}[1]}, checked
  49. [\sFmla{\False}{\formula{A}}, just={\TRule{\False}{\lif}[1]}
  50. [\sFmla{\True}{\formula{A}}, just={\TRule{\True}{\land}[2]}
  51. [\sFmla{\True}{\formula{B}}, just={\TRule{\True}{\land}[2]}, close
  52. ]
  53. ]
  54. ]
  55. ]
  56. ]
  57. \end{oltableau}
  58. Since the branch now contains both $\sFmla{\True}{!A}$ (on line~$4$)
  59. and $\sFmla{\False}{!A}$ (on line~$3$), the branch is closed. Since it
  60. is the only branch, the !!{tableau} is closed. We have found
  61. a closed !!{tableau} for~$(!A \land !B) \lif !A$.
  62. \end{ex}
  63. \begin{ex}
  64. Now let's find a closed !!{tableau} for $(\lnot !A \lor !B) \lif (!A
  65. \lif !B)$.
  66. We begin with the corresponding assumption:
  67. \begin{oltableau}
  68. [\sFmla{\False}{(\lnot \formula{A} \lor \formula{B}) \lif
  69. (\formula{A} \lif \formula{B})}, just=\TAss]
  70. \end{oltableau}
  71. The one !!{signed formula} in this !!{tableau} has !!{main operator}~$\lif$
  72. and sign~$\False$, so we apply the $\TRule{\False}{\lif}$ rule to it
  73. to obtain:
  74. \begin{oltableau}
  75. [\sFmla{\False}{(\lnot \formula{A} \lor \formula{B})
  76. \lif (\formula{A} \lif \formula{B})}, just=\TAss, checked
  77. [\sFmla{\True}{\lnot \formula{A} \lor \formula{B}},
  78. just={\TRule{\False}{\lif}[1]}
  79. [\sFmla{\False}{(\formula{A} \lif \formula{B})},
  80. just={\TRule{\False}{\lif}[1]}
  81. ]
  82. ]
  83. ]
  84. \end{oltableau}
  85. We now have a choice as to whether to apply~$\TRule{\True}{\lor}$ to
  86. line~$2$ or $\TRule{\False}{\lif}$ to line~$3$. It actually doesn't
  87. matter which order we pick, as long as each !!{signed formula} has its
  88. corresponding rule applied in every branch. So let's pick the first
  89. one. The $\TRule{\True}{\lor}$ rule allows the !!{tableau} to branch,
  90. and the two conclusions of the rule will be the new !!{signed formula}s
  91. added to the two new branches. This results in:
  92. \begin{oltableau}
  93. [\sFmla{\False}{(\lnot \formula{A} \lor \formula{B}) \lif
  94. (\formula{A} \lif \formula{B})}, just=\TAss, checked
  95. [\sFmla{\True}{\lnot \formula{A} \lor \formula{B}},
  96. just={\TRule{\False}{\lif}[1]}, checked
  97. [\sFmla{\False}{(\formula{A} \lif \formula{B})},
  98. just={\TRule{\False}{\lif}[1]}
  99. [\sFmla{\True}{\lnot \formula{A}}, just={\TRule{\True}{\lor}[2]}]
  100. [\sFmla{\True}{\formula{B}}, just={\TRule{\True}{\lor}[2]}]
  101. ]
  102. ]
  103. ]
  104. \end{oltableau}
  105. We have not applied the $\TRule{\False}{\lif}$ rule to line~$3$ yet:
  106. let's do that now. To save time, we apply it to both branches.
  107. Recall that we write a checkmark next to !!a{signed formula} only if
  108. we have applied the corresponding rule in every open branch. So it's a
  109. good idea to apply a rule at the end of every branch that contains the
  110. !!{signed formula} the rule applies to. That way we won't have to
  111. return to that !!{signed formula} lower down in the various branches.
  112. \begin{oltableau}
  113. [\sFmla{\False}{(\lnot \formula{A} \lor \formula{B}) \lif
  114. (\formula{A} \lif \formula{B})}, just=\TAss, checked
  115. [\sFmla{\True}{\lnot \formula{A} \lor \formula{B}},
  116. just={\TRule{\False}{\lif}[1]}, checked
  117. [\sFmla{\False}{(\formula{A} \lif \formula{B})},
  118. just={\TRule{\False}{\lif}[1]}, checked
  119. [\sFmla{\True}{\lnot \formula{A}}, just={\TRule{\True}{\lor}[2]}
  120. [\sFmla{\True}{\formula{A}}, just={\TRule{\False}{\lif}[3]}
  121. [\sFmla{\False}{\formula{B}}, just={\TRule{\False}{\lif}[3]}]
  122. ]
  123. ]
  124. [\sFmla{\True}{\formula{B}}, just={\TRule{\True}{\lor}[2]}
  125. [\sFmla{\True}{\formula{A}}, just={\TRule{\False}{\lif}[3]}
  126. [\sFmla{\False}{\formula{B}}, just={\TRule{\False}{\lif}[3]}, close]
  127. ]
  128. ]
  129. ]
  130. ]
  131. ]
  132. \end{oltableau}
  133. The right branch is now closed. On the left branch, we can still apply
  134. the $\TRule{\True}{\lnot}$ rule to line~$4$. This results
  135. in~$\sFmla{\False}{!A}$ and closes the left branch:
  136. \begin{oltableau}
  137. [\sFmla{\False}{(\lnot \formula{A} \lor \formula{B}) \lif
  138. (\formula{A} \lif \formula{B})}, just=\TAss, checked
  139. [\sFmla{\True}{\lnot \formula{A} \lor \formula{B}},
  140. just={\TRule{\False}{\lif}[1]}, checked
  141. [\sFmla{\False}{(\formula{A} \lif \formula{B})},
  142. just={\TRule{\False}{\lif}[1]}, checked
  143. [\sFmla{\True}{\lnot \formula{A}}, just={\TRule{\True}{\lor}[2]}
  144. [\sFmla{\True}{\formula{A}}, just={\TRule{\False}{\lif}[3]}
  145. [\sFmla{\False}{\formula{B}}, just={\TRule{\False}{\lif}[3]}
  146. [\sFmla{\False}{\formula{A}},
  147. just={\TRule{\True}{\lnot}[4]}, close]
  148. ]
  149. ]
  150. ]
  151. [\sFmla{\True}{\formula{B}}, just={\TRule{\True}{\lor}[2]}
  152. [\sFmla{\True}{\formula{A}}, just={\TRule{\False}{\lif}[3]}
  153. [\sFmla{\False}{\formula{B}},
  154. just={\TRule{\False}{\lif}[3]}, close]
  155. ]
  156. ]
  157. ]
  158. ]
  159. ]
  160. \end{oltableau}
  161. \end{ex}
  162. \begin{ex}
  163. We can give !!{tableau}s for any number of !!{signed formula}s as
  164. assumptions. Often it is also necessary to apply more than one rule
  165. that allows branching; and in general !!a{tableau} can have any number
  166. of branches. For instance, consider !!a{tableau} for
  167. $\{\sFmla{\True}{!A \lor (!B \land !C)}, \sFmla{\False}{(!A \lor !B) \land (!A
  168. \lor !C)}\}$. We start by applying the $\TRule{\True}{\lor}$ to the
  169. first assumption:
  170. \begin{oltableau}
  171. [\sFmla{\True}{\formula{A} \lor (\formula{B} \land \formula{C})},
  172. just=\TAss, checked
  173. [\sFmla{\False}{(\formula{A} \lor \formula{B}) \land
  174. (\formula{A} \lor \formula{C})}, just=\TAss
  175. [\sFmla{\True}{\formula{A}}, just={\TRule{\True}{\lor}[1]}]
  176. [\sFmla{\True}{\formula{B} \land \formula{C}},
  177. just={\TRule{\True}{\lor}[1]}]
  178. ]
  179. ]
  180. \end{oltableau}
  181. Now we can apply the $\TRule{\False}{\land}$ rule to line~$2$. We do
  182. this on both branches simultaneously, and can therefore check off
  183. line~$2$:
  184. \begin{oltableau}
  185. [\sFmla{\True}{\formula{A} \lor (\formula{B} \land \formula{C})},
  186. just=\TAss, checked
  187. [\sFmla{\False}{(\formula{A} \lor \formula{B}) \land
  188. (\formula{A} \lor \formula{C})}, just=\TAss, checked
  189. [\sFmla{\True}{\formula{A}}, just={\TRule{\True}{\lor}[1]}
  190. [\sFmla{\False}{\formula{A} \lor \formula{B}},
  191. just={\TRule{\False}{\land}[2]}]
  192. [\sFmla{\False}{\formula{A} \lor \formula{C}},
  193. just={\TRule{\False}{\land}[2]}]
  194. ]
  195. [\sFmla{\True}{\formula{B} \land \formula{C}},
  196. just={\TRule{\True}{\lor}[1]}
  197. [\sFmla{\False}{\formula{A} \lor \formula{B}},
  198. just={\TRule{\False}{\land}[2]}]
  199. [\sFmla{\False}{\formula{A} \lor \formula{C}},
  200. just={\TRule{\False}{\land}[2]}]
  201. ]
  202. ]
  203. ]
  204. \end{oltableau}
  205. Now we can apply $\TRule{\False}{\lor}$ to all the branches containing
  206. $!A \lor !B$:
  207. \begin{oltableau}
  208. [\sFmla{\True}{\formula{A} \lor (\formula{B} \land \formula{C})},
  209. just=\TAss, checked
  210. [\sFmla{\False}{(\formula{A} \lor \formula{B}) \land
  211. (\formula{A} \lor \formula{C})}, just=\TAss, checked
  212. [\sFmla{\True}{\formula{A}}, just={\TRule{\True}{\lor}[1]}
  213. [\sFmla{\False}{\formula{A} \lor \formula{B}},
  214. just={\TRule{\False}{\land}[2]}, checked
  215. [\sFmla{\False}{\formula{A}}, just={\TRule{\False}{\lor}[4]}
  216. [\sFmla{\False}{\formula{B}},
  217. just={\TRule{\False}{\lor}[4]}, close]
  218. ]
  219. ]
  220. [\sFmla{\False}{\formula{A} \lor \formula{C}},
  221. just={\TRule{\False}{\land}[2]}]
  222. ]
  223. [\sFmla{\True}{\formula{B} \land \formula{C}},
  224. just={\TRule{\True}{\lor}[1]}
  225. [\sFmla{\False}{\formula{A} \lor \formula{B}},
  226. just={\TRule{\False}{\land}[2]}, checked
  227. [\sFmla{\False}{\formula{A}}, just={\TRule{\False}{\lor}[4]}
  228. [\sFmla{\False}{\formula{B}},
  229. just={\TRule{\False}{\lor}[4]}]
  230. ]
  231. ]
  232. [\sFmla{\False}{\formula{A} \lor \formula{C}},
  233. just={\TRule{\False}{\land}[2]}]
  234. ]
  235. ]
  236. ]
  237. \end{oltableau}
  238. The leftmost branch is now closed. Let's now apply
  239. $\TRule{\False}{\lor}$ to $!A \lor !C$:
  240. \begin{oltableau}
  241. [\sFmla{\True}{\formula{A} \lor (\formula{B} \land \formula{C})},
  242. just=\TAss, checked
  243. [\sFmla{\False}{(\formula{A} \lor \formula{B}) \land
  244. (\formula{A} \lor \formula{C})}, just=\TAss, checked
  245. [\sFmla{\True}{\formula{A}}, just={\TRule{\True}{\lor}[1]}
  246. [\sFmla{\False}{\formula{A} \lor \formula{B}},
  247. just={\TRule{\False}{\land}[2]}, checked
  248. [\sFmla{\False}{\formula{A}},
  249. just={\TRule{\False}{\lor}[4]}
  250. [\sFmla{\False}{\formula{B}},
  251. just={\TRule{\False}{\lor}[4]}, close]
  252. ]
  253. ]
  254. [\sFmla{\False}{\formula{A} \lor \formula{C}},
  255. just={\TRule{\False}{\land}[2]}, checked
  256. [\sFmla{\False}{\formula{A}},
  257. just={\TRule{\False}{\lor}[4]}, move by=2
  258. [\sFmla{\False}{\formula{C}},
  259. just={\TRule{\False}{\lor}[4]}, close]
  260. ]
  261. ]
  262. ]
  263. [\sFmla{\True}{\formula{B} \land \formula{C}},
  264. just={\TRule{\True}{\lor}[1]}
  265. [\sFmla{\False}{\formula{A} \lor \formula{B}},
  266. just={\TRule{\False}{\land}[2]}, checked
  267. [\sFmla{\False}{\formula{A}},
  268. just={\TRule{\False}{\lor}[4]}
  269. [\sFmla{\False}{\formula{B}},
  270. just={\TRule{\False}{\lor}[4]}
  271. ]
  272. ]
  273. ]
  274. [\sFmla{\False}{\formula{A} \lor \formula{C}},
  275. just={\TRule{\False}{\land}[2]}, checked
  276. [\sFmla{\False}{\formula{A}},
  277. just={\TRule{\False}{\lor}[4]}, move by=2
  278. [\sFmla{\False}{\formula{C}},
  279. just={\TRule{\False}{\lor}[4]}]
  280. ]
  281. ]
  282. ]
  283. ]
  284. ]
  285. \end{oltableau}
  286. Note that we moved the result of applying $\TRule{\False}{\lor}$ a
  287. second time below for clarity. In this instance it would not have been
  288. needed, since the justifications would have been the same.
  289. Two branches remain open, and $\sFmla{\True}{!B \land !C}$ on line~$3$
  290. remains unchecked. We apply $\TRule{\True}{\land}$ to it to obtain a
  291. closed !!{tableau}:
  292. \begin{oltableau}
  293. [\sFmla{\True}{\formula{A} \lor (\formula{B} \land \formula{C})},
  294. just=\TAss, checked
  295. [\sFmla{\False}{(\formula{A} \lor \formula{B}) \land
  296. (\formula{A} \lor \formula{C})}, just=\TAss, checked
  297. [\sFmla{\True}{\formula{A}}, just={\TRule{\True}{\lor}[1]}
  298. [\sFmla{\False}{\formula{A} \lor \formula{B}},
  299. just={\TRule{\False}{\land}[2]}, checked
  300. [\sFmla{\False}{\formula{A}},
  301. just={\TRule{\False}{\lor}[4]}
  302. [\sFmla{\False}{\formula{B}},
  303. just={\TRule{\False}{\lor}[4]}, close]
  304. ]
  305. ]
  306. [\sFmla{\False}{\formula{A} \lor \formula{C}},
  307. just={\TRule{\False}{\land}[2]}, checked
  308. [\sFmla{\False}{\formula{A}},
  309. just={\TRule{\False}{\lor}[4]}
  310. [\sFmla{\False}{\formula{C}},
  311. just={\TRule{\False}{\lor}[4]}, close]
  312. ]
  313. ]
  314. ]
  315. [\sFmla{\True}{\formula{B} \land \formula{C}},
  316. just={\TRule{\True}{\lor}[1]}, checked
  317. [\sFmla{\False}{\formula{A} \lor \formula{B}},
  318. just={\TRule{\False}{\land}[2]}, checked
  319. [\sFmla{\False}{\formula{A}},
  320. just={\TRule{\False}{\lor}[4]}
  321. [\sFmla{\False}{\formula{B}},
  322. just={\TRule{\False}{\lor}[4]}
  323. [\sFmla{\True}{\formula{B}},
  324. just={\TRule{\True}{\land}[3]}
  325. [\sFmla{\True}{\formula{C}},
  326. just={\TRule{\True}{\land}[3]},close
  327. ]
  328. ]
  329. ]
  330. ]
  331. ]
  332. [\sFmla{\False}{\formula{A} \lor \formula{C}},
  333. just={\TRule{\False}{\land}[2]}, checked
  334. [\sFmla{\False}{\formula{A}},
  335. just={\TRule{\False}{\lor}[4]}
  336. [\sFmla{\False}{\formula{C}},
  337. just={\TRule{\False}{\lor}[4]}
  338. [\sFmla{\True}{\formula{B}},
  339. just={\TRule{\True}{\land}[3]}
  340. [\sFmla{\True}{\formula{C}},
  341. just={\TRule{\True}{\land}[3]},close
  342. ]
  343. ]
  344. ]
  345. ]
  346. ]
  347. ]
  348. ]
  349. ]
  350. \end{oltableau}
  351. For comparison, here's a closed !!{tableau} for the same set of
  352. assumptions in which the rules are applied in a different order:
  353. \begin{oltableau}
  354. [\sFmla{\True}{\formula{A} \lor (\formula{B} \land \formula{C})},
  355. just=\TAss, checked
  356. [\sFmla{\False}{(\formula{A} \lor \formula{B}) \land
  357. (\formula{A} \lor \formula{C})}, just=\TAss, checked
  358. [\sFmla{\False}{\formula{A} \lor \formula{B}},
  359. just={\TRule{\False}{\land}[2]}, checked
  360. [\sFmla{\False}{\formula{A}},
  361. just={\TRule{\False}{\lor}[3]}
  362. [\sFmla{\False}{\formula{B}},
  363. just={\TRule{\False}{\lor}[3]}
  364. [\sFmla{\True}{\formula{A}},
  365. just={\TRule{\True}{\lor}[1]},close
  366. ]
  367. [\sFmla{\True}{\formula{B} \land \formula{C}},
  368. just={\TRule{\True}{\lor}[1]}, checked
  369. [\sFmla{\True}{\formula{B}},
  370. just={\TRule{\True}{\land}[6]}
  371. [\sFmla{\True}{\formula{C}},
  372. just={\TRule{\True}{\land}[6]},close
  373. ]
  374. ]
  375. ]
  376. ]
  377. ]
  378. ]
  379. [\sFmla{\False}{\formula{A} \lor \formula{C}},
  380. just={\TRule{\False}{\land}[2]}, checked
  381. [\sFmla{\False}{\formula{A}},
  382. just={\TRule{\False}{\lor}[3]}
  383. [\sFmla{\False}{\formula{C}},
  384. just={\TRule{\False}{\lor}[3]}
  385. [\sFmla{\True}{\formula{A}},
  386. just={\TRule{\True}{\lor}[1]},close
  387. ]
  388. [\sFmla{\True}{\formula{B} \land \formula{C}},
  389. just={\TRule{\True}{\lor}[1]}, checked
  390. [\sFmla{\True}{\formula{B}},
  391. just={\TRule{\True}{\land}[6]}
  392. [\sFmla{\True}{\formula{C}},
  393. just={\TRule{\True}{\land}[6]},close
  394. ]
  395. ]
  396. ]
  397. ]
  398. ]
  399. ]
  400. ]
  401. ]
  402. \end{oltableau}
  403. \end{ex}
  404. \begin{prob}
  405. Give closed !!{tableau}s of the following:
  406. \begin{enumerate}
  407. \item $\sFmla{\True}{!A \land (!B \land !C)}, \sFmla{\False}{(!A \land !B) \land !C}$.
  408. \item $\sFmla{\True}{!A \lor (!B \lor !C)}, \sFmla{\False}{(!A \lor !B) \lor !C}$.
  409. \item $\sFmla{\True}{!A \lif (!B \lif !C)}, \sFmla{\False}{!B \lif (!A \lif !C)}$.
  410. \item $\sFmla{\True}{!A}, \sFmla{\False}{\lnot\lnot !A}$.
  411. \end{enumerate}
  412. \end{prob}
  413. \begin{prob}
  414. Give closed !!{tableau}s of the following:
  415. \begin{enumerate}
  416. \item $\sFmla{\True}{(!A \lor !B) \lif !C}, \sFmla{\False}{!A \lif !C}$.
  417. \item $\sFmla{\True}{(!A \lif !C) \land (!B \lif !C)}, \sFmla{\False}{(!A \lor !B) \lif !C}$.
  418. \item $\sFmla{\False}{\lnot(!A \land \lnot !A)}$.
  419. \item $\sFmla{\True}{!B \lif !A}, \sFmla{\False}{\lnot !A \lif \lnot !B}$.
  420. \item $\sFmla{\False}{(!A \lif \lnot !A) \lif \lnot !A}$.
  421. \item $\sFmla{\False}{\lnot(!A \lif !B) \lif \lnot !B}$.
  422. \item $\sFmla{\True}{!A \lif !C}, \sFmla{\False}{\lnot (!A \land \lnot !C)}$.
  423. \item $\sFmla{\True}{!A \land \lnot !C}, \sFmla{\False}{\lnot (!A \lif !C)}$.
  424. \item $\sFmla{\True}{!A \lor !B, \lnot !B}, \sFmla{\False}{!A}$.
  425. \item $\sFmla{\True}{\lnot !A \lor \lnot !B}, \sFmla{\False}{\lnot(!A \land !B)}$.
  426. \item $\sFmla{\False}{(\lnot !A \land \lnot !B) \lif\lnot(!A \lor !B)}$.
  427. \item $\sFmla{\False}{\lnot(!A \lor !B) \lif (\lnot !A \land \lnot !B)}$.
  428. \end{enumerate}
  429. \end{prob}
  430. \begin{prob}
  431. Give closed !!{tableau}s of the following:
  432. \begin{enumerate}
  433. \item $\sFmla{\True}{\lnot(!A \lif !B)}, \sFmla{\False}{!A}$.
  434. \item $\sFmla{\True}{\lnot(!A \land !B)}, \sFmla{\False}{\lnot !A \lor \lnot !B}$.
  435. \item $\sFmla{\True}{!A \lif !B}, \sFmla{\False}{\lnot !A \lor !B}$.
  436. \item $\sFmla{\False}{\lnot \lnot !A \lif !A}$.
  437. \item $\sFmla{\True}{!A \lif !B}, \sFmla{\True}{\lnot !A \lif !B}, \sFmla{\False}{!B}$.
  438. \item $\sFmla{\True}{(!A \land !B) \lif !C}, \sFmla{\False}{(!A \lif !C) \lor (!B \lif !C)}$.
  439. \item $\sFmla{\True}{(!A \lif !B) \lif !A}, \sFmla{\False}{!A}$.
  440. \item $\sFmla{\False}{(!A \lif !B) \lor (!B \lif !C)}$.
  441. \end{enumerate}
  442. \end{prob}
  443. \end{document}

content/first-order-logic/tableaux/proof-theoretic-notions.tex

190 lines; SHA-256 bad25c1ba9db9de17f7c2ff5fffa2c4f9f00aa13d23c197e5337fe759d6fdd39. Open the byte-exact preserved source file.

  1. % Part: first-order-logic
  2. % Chapter: tableaux
  3. % Section: proof-theoretic-notions
  4. \documentclass[../../../include/open-logic-section]{subfiles}
  5. \begin{document}
  6. \iftag{FOL}
  7. {\olfileid{fol}{tab}{ptn}}
  8. {\olfileid{pl}{tab}{ptn}}
  9. \olsection{Proof-Theoretic Notions}
  10. \begin{editorial}
  11. This section collects the definitions of the provability relation
  12. and consistency for tableaux.
  13. \end{editorial}
  14. \begin{explain}
  15. Just as we've defined a number of important semantic notions
  16. (validity, entailment, satisfiability), we now define corresponding
  17. \emph{proof-theoretic notions}. These are not defined by appeal to
  18. satisfaction of !!{sentence}s in !!{structure}s, but by appeal to the
  19. existence of certain closed !!{tableau}x. It was an important
  20. discovery that these notions coincide. That they do is the content of
  21. the \emph{soundness} and \emph{completeness theorems}.
  22. \end{explain}
  23. \begin{defn}[Theorems]
  24. A !!{sentence}~$!A$ is a \emph{theorem} if there is a closed
  25. !!{tableau} for~$\sFmla{\False}{!A}$. We write $\Proves !A$ if $!A$
  26. is a theorem and $\Proves/ !A$ if it is not.
  27. \end{defn}
  28. \begin{defn}[!!^{derivability}]
  29. !!^a{sentence} $!A$ is \emph{!!{derivable} from} a set of
  30. !!{sentence}s~$\Gamma$, $\Gamma \Proves !A$ iff there is a
  31. finite set $\{!B_1, \dots, !B_n\} \subseteq \Gamma$
  32. and a closed !!{tableau} for the set
  33. \[
  34. \{
  35. \sFmla{\False}{!A},
  36. \sFmla{\True}{!B_1}, \dots,
  37. \sFmla{\True}{!B_n}
  38. \}.
  39. \]
  40. If $!A$ is not !!{derivable} from $\Gamma$ we write $\Gamma \Proves/
  41. !A$.
  42. \end{defn}
  43. \begin{defn}[Consistency]
  44. A set of !!{sentence}s~$\Gamma$ is \emph{inconsistent} iff there is a
  45. finite set $\{!B_1, \dots, !B_n\} \subseteq \Gamma$ and a closed
  46. !!{tableau} for the set
  47. \[
  48. \{
  49. \sFmla{\True}{!B_1}, \dots,
  50. \sFmla{\True}{!B_n}
  51. \}.
  52. \]
  53. If $\Gamma$ is not inconsistent, we say it is \emph{consistent}.
  54. \end{defn}
  55. \begin{prop}[Reflexivity]
  56. \ollabel{prop:reflexivity}
  57. If $!A \in \Gamma$, then $\Gamma \Proves !A$.
  58. \end{prop}
  59. \begin{proof}
  60. If $!A \in \Gamma$, $\{!A\}$ is a finite subset of~$\Gamma$ and the !!{tableau}
  61. \begin{oltableau}
  62. [\sFmla{\False}{\formula{A}}, just = \TAss
  63. [\sFmla{\True}{\formula{A}}, just = \TAss,close]
  64. ]
  65. \end{oltableau}
  66. is closed.
  67. \end{proof}
  68. \begin{prop}[Monotonicity]
  69. \ollabel{prop:monotonicity}
  70. If $\Gamma \subseteq \Delta$ and $\Gamma \Proves !A$, then $\Delta
  71. \Proves !A$.
  72. \end{prop}
  73. \begin{proof}
  74. Any finite subset of~$\Gamma$ is also a finite subset of~$\Delta$.
  75. \end{proof}
  76. \begin{prop}[Transitivity]
  77. \ollabel{prop:transitivity}
  78. If $\Gamma \Proves !A$ and $\{!A\} \cup
  79. \Delta \Proves !B$, then $\Gamma \cup \Delta \Proves !B$.
  80. \end{prop}
  81. \begin{proof}
  82. If $\{!A\} \cup \Delta \Proves !B$, then there is a finite subset $\Delta_0 =
  83. \{!C_1, \dots, !C_n\} \subseteq \Delta$ such that
  84. \begin{align*}
  85. \{\sFmla{\False}{!B}, & \sFmla{\True}{!A}, \sFmla{\True}{!C_1},
  86. \dots, \sFmla{\True}{!C_n}\}
  87. \intertext{has a closed !!{tableau}. If $\Gamma \Proves !A$ then there
  88. are $!D_1$, \dots, $!D_m \subseteq \Gamma$ such that}
  89. \{\sFmla{\False}{!A}, & \sFmla{\True}{!D_1},
  90. \dots, \sFmla{\True}{!D_m}\}
  91. \end{align*}
  92. has a closed !!{tableau}.
  93. Now consider the !!{tableau} with assumptions
  94. \[
  95. \sFmla{\False}{!B},
  96. \sFmla{\True}{!C_1}, \dots, \sFmla{\True}{!C_n},
  97. \sFmla{\True}{!D_1}, \dots, \sFmla{\True}{!D_m}.
  98. \]
  99. Apply the \Cut{} rule on~$!A$. This generates two branches, one has
  100. $\sFmla{\True}{!A}$ in it, the other $\sFmla{\False}{!A}$. Thus,
  101. on the one branch, all of
  102. \[
  103. \{\sFmla{\False}{!B}, \sFmla{\True}{!A},
  104. \sFmla{\True}{!C_1}, \dots, \sFmla{\True}{!C_n}\}
  105. \]
  106. are available. Since there is a closed !!{tableau} for these
  107. assumptions, we can attach it to that branch; every branch through
  108. $\sFmla{\True}{!A}$ closes. On the other branch, all of
  109. \[
  110. \{\sFmla{\False}{!A}, \sFmla{\True}{!D_1}, \dots,
  111. \sFmla{\True}{!D_m}\}
  112. \]
  113. are available, so we can also complete the other side to obtain a
  114. closed !!{tableau}. This shows $\Gamma \cup \Delta \Proves !B$.
  115. \end{proof}
  116. Note that this means that in particular if $\Gamma \Proves !A$ and $!A
  117. \Proves !B$, then $\Gamma \Proves !B$. It follows also that if $!A_1,
  118. \dots, !A_n \Proves !B$ and $\Gamma \Proves !A_i$ for each~$i$, then
  119. $\Gamma \Proves !B$.
  120. \begin{prop}
  121. \ollabel{prop:incons}
  122. $\Gamma$ is inconsistent iff $\Gamma \Proves !A$ for every
  123. !!{sentence}~$!A$.
  124. \end{prop}
  125. \begin{proof}
  126. Exercise.
  127. \end{proof}
  128. \tagprob{FOL}
  129. \begin{prob}
  130. Prove \olref[fol][tab][ptn]{prop:incons}
  131. \end{prob}
  132. \tagendprob
  133. \tagprob{notFOL}
  134. \begin{prob}
  135. Prove \olref[pl][tab][ptn]{prop:incons}
  136. \end{prob}
  137. \tagendprob
  138. \begin{prop}[Compactness]
  139. \ollabel{prop:proves-compact}
  140. \begin{enumerate}
  141. \item If $\Gamma \Proves !A$ then there is a finite subset $\Gamma_0
  142. \subseteq \Gamma$ such that $\Gamma_0 \Proves !A$.
  143. \item If every finite subset of~$\Gamma$ is
  144. consistent, then $\Gamma$ is consistent.
  145. \end{enumerate}
  146. \end{prop}
  147. \begin{proof}
  148. \begin{enumerate}
  149. \item If $\Gamma \Proves !A$, then there is a finite subset
  150. $\Gamma_0 = \{!B_1, \dots, !B_n\}$ and a closed !!{tableau} for
  151. \[
  152. \{\sFmla{\False}{!A}, \sFmla{\True}{!B_1}, \dots, \sFmla{\True}{!B_n}\}
  153. \]
  154. This !!{tableau} also shows $\Gamma_0 \Proves !A$.
  155. \item If $\Gamma$ is inconsistent, then for some finite subset
  156. $\Gamma_0 = \{!B_1, \dots, !B_n\}$ there is a closed !!{tableau}
  157. for
  158. \[
  159. \{\sFmla{\True}{!B_1}, \dots, \sFmla{\True}{!B_n}\}
  160. \]
  161. This closed !!{tableau} shows that $\Gamma_0$ is inconsistent.
  162. \end{enumerate}
  163. \end{proof}
  164. \end{document}

content/first-order-logic/tableaux/provability-consistency.tex

150 lines; SHA-256 6d159d1c93f6b4bb24cf3d16e7f18096e15881679ef5f64db5b25cee57cccdef. Open the byte-exact preserved source file.

  1. % Part: first-order-logic
  2. % Chapter: tableaux
  3. % Section: provability-consistency
  4. \documentclass[../../../include/open-logic-section]{subfiles}
  5. \begin{document}
  6. \iftag{FOL}
  7. {\olfileid{fol}{tab}{prv}}
  8. {\olfileid{pl}{tab}{prv}}
  9. \olsection{\usetoken{S}{derivability} and Consistency}
  10. We will now establish a number of properties of the !!{derivability}
  11. relation. They are independently interesting, but each will play a
  12. role in the proof of the completeness theorem.
  13. \begin{prop}\ollabel{prop:provability-contr}
  14. If $\Gamma \Proves !A$ and $\Gamma \cup \{!A\}$ is
  15. inconsistent, then $\Gamma$ is inconsistent.
  16. \end{prop}
  17. \begin{proof}
  18. There are finite $\Gamma_0 = \{!B_1, \dots, !B_n\}$ and $\Gamma_1
  19. =\{!C_1, \dots, !C_n\} \subseteq \Gamma$ such that
  20. \begin{align*}
  21. \{\sFmla{\False}{!A}, &
  22. \sFmla{\True}{!B_1}, \dots, \sFmla{\True}{!B_n}\} \\
  23. \{\sFmla{\True}{!A}, &
  24. \sFmla{\True}{!C_1}, \dots, \sFmla{\True}{!C_m}\}
  25. \end{align*}
  26. have closed !!{tableau}s. Using the \Cut{} rule on $!A$ we can
  27. combine these into a single closed !!{tableau} that shows $\Gamma_0
  28. \cup \Gamma_1$ is inconsistent. Since $\Gamma_0
  29. \subseteq \Gamma$ and $\Gamma_1 \subseteq \Gamma$, $\Gamma_0 \cup
  30. \Gamma_1 \subseteq \Gamma$, hence $\Gamma$~is inconsistent.
  31. \end{proof}
  32. \begin{prop}
  33. \ollabel{prop:prov-incons}
  34. $\Gamma \Proves !A$ iff $\Gamma \cup \{\lnot !A\}$ is inconsistent.
  35. \end{prop}
  36. \begin{proof}
  37. First suppose $\Gamma \Proves !A$, i.e., there is
  38. a closed !!{tableau} for
  39. \[
  40. \{\sFmla{\False}{!A},
  41. \sFmla{\True}{!B_1}, \dots, \sFmla{\True}{!B_n}\}
  42. \]
  43. Using the $\TRule{\True}{\lnot}$ rule, this can be turned into a
  44. closed !!{tableau} for
  45. \[
  46. \{\sFmla{\True}{\lnot !A},
  47. \sFmla{\True}{!B_1}, \dots, \sFmla{\True}{!B_n}\}.
  48. \]
  49. On the other hand, if there is a closed !!{tableau} for the latter, we
  50. can turn it into a closed !!{tableau} of the former by removing every
  51. formula that results from \TRule{\True}{\lnot} applied to the first
  52. assumption~$\sFmla{\True}{\lnot !A}$ as well as that assumption, and
  53. adding the assumption $\sFmla{\False}{!A}$. For if a branch was closed
  54. before because it contained the conclusion of \TRule{\True}{\lnot}
  55. applied to $\sFmla{\True}{\lnot !A}$, i.e., $\sFmla{\False}{!A}$, the
  56. corresponding branch in the new !!{tableau} is also closed. If a
  57. branch in the old tableau was closed because it contained the
  58. assumption $\sFmla{\True}{\lnot !A}$ as well as $\sFmla{\False}{\lnot
  59. !A}$ we can turn it into a closed branch by applying
  60. $\TRule{\False}{\lnot}$ to $\sFmla{\False}{\lnot !A}$ to obtain
  61. $\sFmla{\True}{!A}$. This closes the branch since we added
  62. $\sFmla{\False}{!A}$ as an assumption.
  63. \end{proof}
  64. \begin{prob}
  65. Prove that $\Gamma \Proves \lnot !A$ iff $\Gamma \cup \{!A\}$ is inconsistent.
  66. \end{prob}
  67. \begin{prop}\ollabel{prop:explicit-inc}
  68. If $\Gamma \Proves !A$ and $\lnot !A \in \Gamma$, then $\Gamma$ is
  69. inconsistent.
  70. \end{prop}
  71. \begin{proof}
  72. Suppose $\Gamma \Proves !A$ and $\lnot !A \in \Gamma$. Then there
  73. are $!B_1$, \dots, $!B_n \in \Gamma$ such that \
  74. \[
  75. \{\sFmla{\False}{!A}, \sFmla{\True}{!B_1}, \dots, \sFmla{\True}{!B_n}\}
  76. \]
  77. has a closed tableau. Replace the assumption \sFmla{\False}{!A} by
  78. \sFmla{\True}{\lnot !A}, and insert the conclusion of
  79. \TRule{\True}{\lnot} applied to \sFmla{\False}{!A} after the
  80. assumptions. Any !!{sentence} in the !!{tableau} justified by appeal
  81. to line~$1$ in the old !!{tableau} is now justified by appeal to
  82. line~$n+1$. So if the old !!{tableau} was closed, the new one is.
  83. It shows that $\Gamma$ is inconsistent, since all assumptions are
  84. in~$\Gamma$.
  85. \end{proof}
  86. \begin{prop}\ollabel{prop:provability-exhaustive}
  87. If $\Gamma \cup \{!A\}$ and $\Gamma \cup \{\lnot !A\}$ are both
  88. inconsistent, then $\Gamma$ is inconsistent.
  89. \end{prop}
  90. \begin{proof}
  91. If there are $!B_1$, \dots, $!B_n \in \Gamma$ and $!C_1$, \dots,
  92. $!C_m \in \Gamma$ such that
  93. \begin{align*}
  94. \{\sFmla{\True}{!A}, &
  95. \sFmla{\True}{!B_1}, \dots, \sFmla{\True}{!B_n}\} \text{ and}\\
  96. \{\sFmla{\True}{\lnot !A}, &
  97. \sFmla{\True}{!C_1}, \dots, \sFmla{\True}{!C_m}\}
  98. \end{align*}
  99. both have closed !!{tableau}s, we can construct a single, combined
  100. !!{tableau} that shows that $\Gamma$ is inconsistent by using as
  101. assumptions $\sFmla{\True}{!B_1}$, \dots, $\sFmla{\True}{!B_n}$
  102. together with $\sFmla{\True}{!C_1}$, \dots, $\sFmla{\True}{!C_m}$,
  103. followed by an application of the \Cut{} rule. This yields two
  104. branches, one starting with $\sFmla{\True}{!A}$, the other with
  105. $\sFmla{\False}{!A}$.
  106. On the left left side, add the part of the first
  107. !!{tableau} below its assumptions. Here, every rule application is still
  108. correct, since each of the assumptions of the first !!{tableau},
  109. including $\sFmla{\True}{!A}$, is available. Thus, every branch
  110. below $\sFmla{\True}{!A}$ closes.
  111. On the right side, add the part of the second !!{tableau} below its
  112. assumption, with the results of any applications
  113. of~$\TRule{\True}{\lnot}$ to $\sFmla{\True}{\lnot !A}$ removed. The
  114. conclusion of $\TRule{\True}{\lnot}$ to $\sFmla{\True}{\lnot !A}$ is
  115. $\sFmla{\False}{!A}$, which is nevertheless available, as it is the
  116. conclusion of the \Cut{} rule on the right side of the combined !!{tableau}.
  117. If a branch in the second tableau was closed because it contained
  118. the assumption $\sFmla{\True}{\lnot !A}$ (which no longer appears as
  119. an assumption in the combined !!{tableau}) as well as
  120. $\sFmla{\False}{\lnot !A}$, we can applying $\TRule{\False}{\lnot}$
  121. to $\sFmla{\False}{\lnot !A}$ to obtain $\sFmla{\True}{!A}$. Now the
  122. corresponding branch in the combined !!{tableau} also closes,
  123. because it contains the right-hand conclusion of the \Cut{} rule,
  124. $\sFmla{\False}{!A}$. If a branch in the second !!{tableau} closed
  125. for any other reason, the corresponding branch in the combined
  126. !!{tableau} also closes, since any !!{signed formula}s other than
  127. $\sFmla{\True}{\lnot !A}$ occurring on the branch in the old, second
  128. !!{tableau} also occur on the corresponding branch in the combined
  129. !!{tableau}.
  130. \end{proof}
  131. \end{document}

content/first-order-logic/tableaux/provability-propositional.tex

175 lines; SHA-256 5df9f0cf1b10689babb2051daad6426e2abee00e55001f14a896d1a37ae30446. Open the byte-exact preserved source file.

  1. % Part: first-order-logic
  2. % Chapter: tableaux
  3. % Section: provability-propositional
  4. % verification of properties of provability needed for maximally
  5. % consistent sets in the completeness chapter.
  6. \documentclass[../../../include/open-logic-section]{subfiles}
  7. \begin{document}
  8. \iftag{FOL}
  9. {\olfileid{fol}{tab}{ppr}}
  10. {\olfileid{pl}{tab}{ppr}}
  11. \olsection{\usetoken{S}{derivability} and the Propositional Connectives}
  12. \begin{explain}
  13. We establish that the !!{derivability} relation~$\Proves$ of
  14. tableaux is strong enough to establish some basic facts involving
  15. the propositional connectives, such as that $!A \land !B \Proves !A$
  16. and $!A, !A \lif !B \Proves !B$ (modus ponens). These facts are
  17. needed for the proof of the completeness theorem.
  18. \end{explain}
  19. \begin{prop}\ollabel{prop:provability-land}
  20. \begin{enumerate}
  21. \item \ollabel{prop:provability-land-left} Both $!A \land !B \Proves
  22. !A$ and $!A \land !B \Proves !B$.
  23. \item \ollabel{prop:provability-land-right} $!A, !B \Proves !A \land
  24. !B$.
  25. \end{enumerate}
  26. \end{prop}
  27. \begin{proof}
  28. \begin{enumerate}
  29. \item Both $\{\sFmla{\False}{!A}, \sFmla{\True}{!A \land !B}\}$ and
  30. $\{\sFmla{\False}{!B}, \sFmla{\True}{!A \land !B}\}$ have closed
  31. !!{tableau}s
  32. \begin{oltableau}{}
  33. [\sFmla{\False}{\formula{A}}, just=\TAss
  34. [\sFmla{\True}{\formula{A} \land \formula{B}}, just=\TAss
  35. [\sFmla{\True{\formula{A}}},just={\TRule{\True}{\land}[2]}
  36. [\sFmla{\True{\formula{B}}},just={\TRule{\True}{\land}[2]}, close
  37. ]
  38. ]
  39. ]
  40. ]
  41. \end{oltableau}
  42. \begin{oltableau}{}
  43. [\sFmla{\False}{\formula{B}}, just=\TAss
  44. [\sFmla{\True}{\formula{A} \land \formula{B}}, just=\TAss
  45. [\sFmla{\True{\formula{A}}},just={\TRule{\True}{\land}[2]}
  46. [\sFmla{\True{\formula{B}}},just={\TRule{\True}{\land}[2]}, close
  47. ]
  48. ]
  49. ]
  50. ]
  51. \end{oltableau}
  52. \item Here is a closed !!{tableau} for $\{\sFmla{\True}{!A},
  53. \sFmla{\True}{!B}, \sFmla{\False}{!A \land !B}\}$:
  54. \begin{oltableau}
  55. [\sFmla{\False}{\formula{A} \land \formula{B}}, just = \TAss
  56. [\sFmla{\True}{\formula{A}}, just = \TAss
  57. [\sFmla{\True}{\formula{B}}, just=\TAss
  58. [\sFmla{\False}{\formula{A}}, just = {\TRule{\False}{\land}[1]}, close]
  59. [\sFmla{\False}{\formula{B}}, just = {\TRule{\False}{\land}[1]}, close]
  60. ]
  61. ]
  62. ]
  63. \end{oltableau}
  64. \end{enumerate}
  65. \end{proof}
  66. \begin{prop}\ollabel{prop:provability-lor}
  67. \begin{enumerate}
  68. \item $\{!A \lor !B, \lnot !A, \lnot !B\}$ is inconsistent.
  69. \item Both $!A \Proves !A \lor !B$ and $!B \Proves !A \lor !B$.
  70. \end{enumerate}
  71. \end{prop}
  72. \begin{proof}
  73. \begin{enumerate}
  74. \item We give a closed !!{tableau} of $\{\sFmla{\True}{!A \lor !B},
  75. \sFmla{\True}{\lnot !A}, \sFmla{\True}{\lnot !B}\}$:
  76. \begin{oltableau}
  77. [\sFmla{\True}{\formula{A} \lor \formula{B}}, just = \TAss
  78. [\sFmla{\True}{\lnot \formula{A}}, just = \TAss
  79. [\sFmla{\True}{\lnot \formula{B}}, just = \TAss
  80. [\sFmla{\False}{\formula{A}}, just = {\TRule{\True}{\lnot}[2]}
  81. [\sFmla{\False}{\formula{B}}, just = {\TRule{\True}{\lnot}[3]}
  82. [\sFmla{\True}{\formula{A}}, just = {\TRule{\True}{\lor}[1]}, close]
  83. [\sFmla{\True}{\formula{B}}, just = {\TRule{\True}{\lor}[1]}, close]
  84. ]
  85. ]
  86. ]
  87. ]
  88. ]
  89. \end{oltableau}
  90. \item Both $\{\sFmla{\False}{!A \lor !B}, \sFmla{\True}{!A}\}$ and
  91. $\{\sFmla{\False}{!A \lor !B}, \sFmla{\True}{!B}\}$ have closed
  92. !!{tableau}s:
  93. \begin{oltableau}{}
  94. [\sFmla{\False}{\formula{A} \lor \formula{B}}, just=\TAss
  95. [\sFmla{\True}{\formula{A}}, just=\TAss
  96. [\sFmla{\False{\formula{A}}},just={\TRule{\False}{\lor}[1]}
  97. [\sFmla{\False{\formula{B}}},just={\TRule{\False}{\lor}[1]}, close
  98. ]
  99. ]
  100. ]
  101. ]
  102. \end{oltableau}
  103. \begin{oltableau}{}
  104. [\sFmla{\False}{\formula{A} \lor \formula{B}}, just=\TAss
  105. [\sFmla{\True}{\formula{B}}, just=\TAss
  106. [\sFmla{\False{\formula{A}}},just={\TRule{\False}{\lor}[1]}
  107. [\sFmla{\False{\formula{B}}},just={\TRule{\False}{\lor}[1]}, close
  108. ]
  109. ]
  110. ]
  111. ]
  112. \end{oltableau}
  113. \end{enumerate}
  114. \end{proof}
  115. \begin{prop}\ollabel{prop:provability-lif}
  116. \begin{enumerate}
  117. \item \ollabel{prop:provability-lif-left} $!A, !A \lif !B \Proves !B$.
  118. \item \ollabel{prop:provability-lif-right}
  119. Both $\lnot !A \Proves !A \lif !B$ and $!B \Proves !A \lif !B$.
  120. \end{enumerate}
  121. \end{prop}
  122. \begin{proof}
  123. \begin{enumerate}
  124. \item $\{\sFmla{\False}{!B}, \sFmla{\True}{!A \lif !B},
  125. \sFmla{\True}{!A}\}$ has a closed !!{tableau}:
  126. \begin{oltableau}
  127. [\sFmla{\False}{\formula{B}}, just=\TAss
  128. [\sFmla{\True}{\formula{A} \lif \formula{B}}, just=\TAss
  129. [\sFmla{\True}{\formula{A}}, just=\TAss
  130. [\sFmla{\False}{\formula{A}}, just = {\TRule{\True}{\lif}[2]}, close]
  131. [\sFmla{\True}{\formula{B}}, just = {\TRule{\True}{\lif}[2]}, close]
  132. ]
  133. ]
  134. ]
  135. \end{oltableau}
  136. \item Both $\{\sFmla{\False}{!A \lif !B},
  137. \sFmla{\True}{\lnot !A}\}$ and $\{\sFmla{\False}{!A \lif !B},
  138. \sFmla{\True}{!B}\}$ have closed !!{tableau}s:
  139. \begin{oltableau}
  140. [\sFmla{\False}{\formula{A} \lif \formula{B}}, just = \TAss
  141. [\sFmla{\True}{\lnot \formula{A}}, just = \TAss
  142. [\sFmla{\True}{\formula{A}}, just = {\TRule{\False}{\lif}[1]}
  143. [\sFmla{\False}{\formula{B}}, just = {\TRule{\False}{\lif}[1]}
  144. [\sFmla{\False}{\formula{A}}, just = {\TRule{\True}{\lnot}[2]}, close]
  145. ]
  146. ]
  147. ]
  148. ]
  149. \end{oltableau}
  150. \begin{oltableau}
  151. [\sFmla{\False}{\formula{A} \lif \formula{B}}, just = \TAss
  152. [\sFmla{\True}{\formula{B}}, just = \TAss
  153. [\sFmla{\True}{\formula{A}}, just = {\TRule{\False}{\lif}[1]}
  154. [\sFmla{\False}{\formula{B}}, just = {\TRule{\False}{\lif}[1]},close
  155. ]
  156. ]
  157. ]
  158. ]
  159. \end{oltableau}
  160. \end{enumerate}
  161. \end{proof}
  162. \end{document}

content/first-order-logic/tableaux/soundness.tex

240 lines; SHA-256 49f119364f19485fa74c0c18e849f20b746e8edec9fdccb9e98a8aff7250a744. Open the byte-exact preserved source file.

  1. % Part: first-order-logic
  2. % Chapter: tableaux
  3. % Section: soundness.tex
  4. \documentclass[../../../include/open-logic-section]{subfiles}
  5. \begin{document}
  6. \iftag{FOL}
  7. {\olfileid{fol}{tab}{sou}}
  8. {\olfileid{pl}{tab}{sou}}
  9. \olsection{Soundness}
  10. \begin{explain}
  11. !!^a{derivation} system, such as tableaux, is \emph{sound}
  12. if it cannot !!{derive} things that do not actually hold. Soundness is
  13. thus a kind of guaranteed safety property for !!{derivation} systems.
  14. Depending on which proof theoretic property is in question, we would
  15. like to know for instance, that
  16. \begin{enumerate}
  17. \item every !!{derivable}~$!A$ is \iftag{FOL}{valid}{a tautology};
  18. \item if !!a{sentence} is !!{derivable} from some others, it is also a
  19. consequence of them;
  20. \item if a set of !!{sentence}s is inconsistent, it is unsatisfiable.
  21. \end{enumerate}
  22. These are important properties of !!a{derivation} system. If any of them do
  23. not hold, the !!{derivation} system is deficient---it would !!{derive} too much.
  24. Consequently, establishing the soundness of !!a{derivation} system is of the
  25. utmost importance.
  26. Because all these proof-theoretic properties are defined via closed
  27. !!{tableau}s of some kind or other, proving (1)--(3) above requires
  28. proving something about the semantic properties of closed
  29. !!{tableau}s. We will first define what it means for !!a{signed
  30. formula} to be satisfied in a structure, and then show that if a
  31. !!{tableau} is closed, no structure satisfies all its assumptions.
  32. (1)--(3) then follow as corollaries from this result.
  33. \end{explain}
  34. \begin{defn}
  35. \iftag{FOL}{!!^a{structure}}{!!^a{valuation}}~$\iftag{FOL}{\Struct{M}}{\pAssign{v}}$
  36. \emph{satisfies} !!a{signed formula} $\sFmla{\True}{!A}$ iff
  37. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{!A}$, and it satisfies
  38. $\sFmla{\False}{!A}$ iff
  39. $\iftag{FOL}{\Sat/{M}}{\pSat/{v}}{!A}$. $\iftag{FOL}{\Struct{M}}{\pAssign{v}}$
  40. satisfies a set of !!{signed formula}s~$\Gamma$ iff it satisfies every
  41. $\sFmla{S}{!A} \in \Gamma$. $\Gamma$~is \emph{satisfiable} if there is
  42. \iftag{FOL}{!!a{structure}}{!!a{valuation}} that satisfies it, and
  43. \emph{unsatisfiable} otherwise.
  44. \end{defn}
  45. \begin{thm}[Soundness]
  46. \ollabel{thm:tableau-soundness}
  47. If $\Gamma$ has a closed !!{tableau}, $\Gamma$ is unsatisfiable.
  48. \end{thm}
  49. \begin{proof}
  50. Let's call a branch of !!a{tableau} satisfiable iff the set of
  51. !!{signed formula}s on it is satisfiable, and let's call !!a{tableau}
  52. satisfiable if it contains at least one satisfiable branch.
  53. We show the following: Extending a satisfiable !!{tableau} by one of
  54. the rules of inference always results in a satisfiable !!{tableau}.
  55. This will prove the theorem: any closed !!{tableau} results by
  56. applying rules of inference to the !!{tableau} consisting only of
  57. assumptions from~$\Gamma$. So if $\Gamma$ were satisfiable, any
  58. !!{tableau} for it would be satisfiable. A closed !!{tableau},
  59. however, is clearly not satisfiable: every branch contains both
  60. $\sFmla{\True}{!A}$ and $\sFmla{\False}{!A}$, and no structure can
  61. both satisfy and not satisfy~$!A$.
  62. Suppose we have a satisfiable !!{tableau}, i.e., !!a{tableau} with at
  63. least one satisfiable branch. Applying a rule of inference either adds
  64. !!{signed formula}s to a branch, or splits a branch in two. If the
  65. !!{tableau} has a satisfiable branch which is not extended by the rule
  66. application in question, it remains a satisfiable branch in the
  67. extended !!{tableau}, so the extended tableau is satisfiable. So we
  68. only have to consider the case where a rule is applied to a
  69. satisfiable branch.
  70. Let $\Gamma$ be the set of !!{signed formula}s on that branch, and
  71. let $\sFmla{S}{!A} \in \Gamma$ be the !!{signed formula} to which the
  72. rule is applied. If the rule does not result in a split branch, we
  73. have to show that the extended branch, i.e., $\Gamma$ together with
  74. the conclusions of the rule, is still satisfiable. If the rule results
  75. in a split branch, we have to show that at least one of the two
  76. resulting branches is satisfiable.
  77. First, we consider the possible inferences that do not result in a split branch.
  78. \begin{enumerate}
  79. \item The branch is expanded by applying $\TRule{\True}{\lnot}$ to
  80. $\sFmla{\True}{\lnot !B} \in \Gamma$. Then the extended branch
  81. contains the !!{signed formula}s $\Gamma \cup
  82. \{\sFmla{\False}{!B}\}$. Suppose
  83. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{\Gamma}$. In particular,
  84. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{\lnot !B}$. Thus,
  85. $\iftag{FOL}{\Sat/{M}}{\pSat/{v}}{!B}$, i.e.,
  86. $\iftag{FOL}{\Struct{M}}{\pAssign{v}}$ satisfies
  87. $\sFmla{\False}{!B}$.
  88. \item The branch is expanded by applying $\TRule{\False}{\lnot}$ to
  89. $\sFmla{\False}{\lnot !B} \in \Gamma$: Exercise.
  90. \item The branch is expanded by applying $\TRule{\True}{\land}$ to
  91. $\sFmla{\True}{!B \land !C} \in \Gamma$, which results in two new
  92. !!{signed formula}s on the branch: $\sFmla{\True}{!B}$ and
  93. $\sFmla{\True}{!C}$. Suppose
  94. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{\Gamma}$, in particular
  95. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{!B \land !C}$. Then
  96. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{!B}$ and
  97. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{!C}$. This means that
  98. $\iftag{FOL}{\Struct{M}}{\pAssign{v}}$ satisfies both
  99. $\sFmla{\True}{!B}$ and $\sFmla{\True}{!C}$.
  100. \item The branch is expanded by applying $\TRule{\False}{\lor}$ to
  101. $\sFmla{\False}{!B \lor !C} \in \Gamma$: Exercise.
  102. \item The branch is expanded by applying $\TRule{\False}{\lif}$ to
  103. $\sFmla{\False}{!B \lif !C} \in \Gamma$: This results in two new
  104. !!{signed formula}s on the branch: $\sFmla{\True}{!B}$ and
  105. $\sFmla{\False}{!C}$. Suppose
  106. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{\Gamma}$, in particular
  107. $\iftag{FOL}{\Sat/{M}}{\pSat/{v}}{!B \lif !C}$. Then
  108. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{!B}$ and
  109. $\iftag{FOL}{\Sat/{M}}{\pSat/{v}}{!C}$. This means that
  110. $\iftag{FOL}{\Struct{M}}{\pAssign{v}}$ satisfies both
  111. $\sFmla{\True}{!B}$ and $\sFmla{\False}{!C}$.
  112. \iftag{FOL}{%
  113. \item The branch is expanded by applying $\TRule{\True}{\lforall}$ to
  114. $\sFmla{\True}{\lforall[x][!B(x)]} \in \Gamma$: This results in a
  115. new !!{signed formula}~$\sFmla{\True}{!A(t)}$ on the branch.
  116. Suppose $\Sat{M}{\Gamma}$, in particular,
  117. $\Sat{M}{\lforall[x][!A(x)]}$. By
  118. \olref[syn][sem]{prop:quant-terms}, $\Sat{M}{!A(t)}$. Consequently,
  119. $\Struct{M}$ satisfies $\sFmla{\True}{!A(t)}$.
  120. \item The branch is expanded by applying $\TRule{\False}{\lforall}$ to
  121. $\sFmla{\False}{\lforall[x][!B(x)]} \in \Gamma$: This results in a
  122. new !!{signed formula}~$\sFmla{\False}{!A(a)}$ where $a$ is
  123. !!a{constant} not occurring in~$\Gamma$. Since $\Gamma$ is
  124. satisfiable, there is a $\Struct{M}$ such that $\Sat{M}{\Gamma}$, in
  125. particular $\Sat/{M}{\lforall[x][!B(x)]}$. We have to show that
  126. $\Gamma \cup \{\sFmla{\False}{!A(a)}\}$ is satisfiable. To do this,
  127. we define a suitable~$\Struct{M'}$ as follows.
  128. By \olref[syn][ass]{prop:sat-quant}, $\Sat/{M}{\lforall[x][!B(x)]}$
  129. iff for some $s$, $\Sat/{M}{!B(x)}[s]$. Now let $\Struct{M'}$ be
  130. just like $\Struct{M}$, except $\Assign{a}{M'} = s(x)$. By
  131. \olref[syn][ext]{cor:extensionality-sent}, for any
  132. $\sFmla{\True}{!C} \in \Gamma$, $\Sat{M'}{!C}$, and for any
  133. $\sFmla{\False}{!C} \in \Gamma$, $\Sat/{M'}{!C}$, since $a$ does not
  134. occur in~$\Gamma$.
  135. By \olref[syn][ext]{prop:extensionality}, $\Sat/{M'}{!A(x)}[s]$. By
  136. \olref[syn][ext]{prop:ext-formulas}, $\Sat/{M'}{!A(a)}[s]$. Since
  137. $!A(a)$ is !!a{sentence}, by
  138. \olref[syn][ass]{prop:sentence-sat-true}, $\Sat/{M'}{!A(a)}$, i.e.,
  139. $\Struct{M'}$ satisfies $\sFmla{\False}{!A(a)}$.
  140. \item The branch is expanded by applying $\TRule{\True}{\lexists}$ to
  141. $\sFmla{\True}{\lexists[x][!B(x)]} \in \Gamma$: Exercise.
  142. \item The branch is expanded by applying $\TRule{\False}{\lexists}$ to
  143. $\sFmla{\False}{\lexists[x][!B(x)]} \in \Gamma$: Exercise.}{}
  144. \end{enumerate}
  145. Now let's consider the possible inferences that result in a split branch.
  146. \begin{enumerate}
  147. \item The branch is expanded by applying $\TRule{\False}{\land}$ to
  148. $\sFmla{\False}{!B \land !C} \in \Gamma$, which results in two
  149. branches, a left one continuing through $\sFmla{\False}{!B}$ and a
  150. right one through $\sFmla{\False}{!C}$. Suppose
  151. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{\Gamma}$, in particular
  152. $\iftag{FOL}{\Sat/{M}}{\pSat/{v}}{!B \land !C}$. Then
  153. $\iftag{FOL}{\Sat/{M}}{\pSat/{v}}{!B}$ or
  154. $\iftag{FOL}{\Sat/{M}}{\pSat/{v}}{!C}$. In the former case,
  155. $\iftag{FOL}{\Struct{M}}{\pAssign{v}}$ satisfies
  156. $\sFmla{\False}{!B}$, i.e., $\iftag{FOL}{\Struct{M}}{\pAssign{v}}$
  157. satisfies the formulas on the left branch. In the latter,
  158. $\iftag{FOL}{\Struct{M}}{\pAssign{v}}$ satisfies
  159. $\sFmla{\False}{!C}$, i.e., $\iftag{FOL}{\Struct{M}}{\pAssign{v}}$
  160. satisfies the formulas on the right branch.
  161. \item The branch is expanded by applying $\TRule{\True}{\lor}$ to
  162. $\sFmla{\True}{!B \lor !C} \in \Gamma$: Exercise.
  163. \item The branch is expanded by applying $\TRule{\True}{\lif}$ to
  164. $\sFmla{\True}{!B \lif !C} \in \Gamma$: Exercise.
  165. \item The branch is expanded by \Cut: This results in two branches,
  166. one containing $\sFmla{\True}{!B}$, the other containing
  167. $\sFmla{\False}{!B}$. Since $\iftag{FOL}{\Sat{M}}{\pSat{v}}{\Gamma}$
  168. and either $\iftag{FOL}{\Sat{M}}{\pSat{v}}{!B}$ or
  169. $\iftag{FOL}{\Sat/{M}}{\pSat/{v}}{!B}$,
  170. $\iftag{FOL}{\Struct{M}}{\pAssign{v}}$ satisfies either the left or
  171. the right branch.
  172. \end{enumerate}
  173. \end{proof}
  174. \tagprob{FOL}
  175. \begin{prob}
  176. Complete the proof of \olref[fol][tab][sou]{thm:tableau-soundness}.
  177. \end{prob}
  178. \tagendprob
  179. \tagprob{notFOL}
  180. \begin{prob}
  181. Complete the proof of \olref[pl][tab][sou]{thm:tableau-soundness}.
  182. \end{prob}
  183. \tagendprob
  184. \begin{cor}
  185. \ollabel{cor:weak-soundness}
  186. If $\Proves !A$ then $!A$ is \iftag{FOL}{valid}{a tautology}.
  187. \end{cor}
  188. \begin{cor}
  189. \ollabel{cor:entailment-soundness}
  190. If $\Gamma \Proves !A$ then $\Gamma \Entails !A$.
  191. \end{cor}
  192. \begin{proof}
  193. If $\Gamma \Proves !A$ then for some $!B_1$, \dots, $!B_n \in
  194. \Gamma$, $\{\sFmla{\False}{!A}, \sFmla{\True}{!B_1}, \dots,
  195. \sFmla{\True}{!B_n}\}$ has a closed !!{tableau}. By
  196. \olref{thm:tableau-soundness}, every
  197. \iftag{FOL}{!!{structure}}{!!{valuation}}~$\iftag{FOL}{\Struct{M}}{\pAssign{v}}$
  198. either makes some $!B_i$ false or makes $!A$ true. Hence, if
  199. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{\Gamma}$ then also
  200. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{!A}$.
  201. \end{proof}
  202. \begin{cor}
  203. \ollabel{cor:consistency-soundness}
  204. If $\Gamma$ is satisfiable, then it is consistent.
  205. \end{cor}
  206. \begin{proof}
  207. We prove the contrapositive. Suppose that $\Gamma$ is not consistent.
  208. Then there are $!B_1$, \dots, $!B_n \in \Gamma$ and a closed
  209. !!{tableau} for $\{\sFmla{\True}{!B_1}, \dots, \sFmla{\True}{!B_n}\}$. By
  210. \olref{thm:tableau-soundness}, there is no
  211. $\iftag{FOL}{\Struct{M}}{\pAssign{v}}$ such that
  212. $\iftag{FOL}{\Sat{M}}{\pSat{v}}{!B_i}$ for all $i=1$, \dots,~$n$. But
  213. then $\Gamma$ is not satisfiable.
  214. \end{proof}
  215. \end{document}