Added a note

This commit is contained in:
Mark 2023-05-18 21:13:25 -07:00
parent 0209df9e00
commit a81f3789eb

View File

@ -66,7 +66,7 @@ $\lnot A$ is the opposite of $A$, which is why it looks like a \say{negative} si
\vspace{2mm}
$A \rightarrow B$ is a bit harder to understand. Read aloud, this is \say{$A$ implies $B$.} \par
The only time $\rightarrow$ is false is when $T \rightarrow F$. Think about it: why does this make sense? \par
The only time $\rightarrow$ is false is when $T \rightarrow F$. This may seem counterintuitive, but it makes sense. Think about it. \par
\problem{}
Evaluate the following.
@ -78,6 +78,24 @@ Evaluate the following.
\vfill
\pagebreak
\begin{instructornote}
After the class has done a few definable set problems, you can try to provide some intuition for $\rightarrow$ with the following example.
\vspace{2mm}
Say we have the sentence $\forall x ~ (a \rightarrow b)$. \par
For example, take $\varphi = \forall x ~ ([x \geq 0] \rightarrow [\exists y ~ y^2 = x])$. \par
$\varphi$ holds whenever any positive $x$ has a square root.
\vspace{2mm}
If $(\text{F} \rightarrow *)$ returned false, statements like the above would be hard to write. \par
If $x$ is negative, $\varphi$ doesn't care whether or not it has a root. In this case, $\text{F} \rightarrow *$ must be true to avoid making whole $\forall$ false.
\vspace{2mm}
You can think of $[x \geq 0] \rightarrow b$ as a \say{sanity check} in a program: if $x$ isn't the kind of object we care about, return true and check the next one. If $x$ \textit{is} the kind of object we care about and $b$ is false, we have a counterexample to $[x \geq 0] \rightarrow b$, and thus $T \rightarrow F$ must be false.
\end{instructornote}
\problem{}