From 1676f97b6fd86a5f7d7a3ff17000619a5ad13e7e Mon Sep 17 00:00:00 2001
From: Camil Staps
Date: Wed, 3 Feb 2016 08:16:53 +0100
Subject: Finished task 1

---
 task1.tex | 30 +++++++++++++++++++++++++++++-
 1 file changed, 29 insertions(+), 1 deletion(-)

(limited to 'task1.tex')

diff --git a/task1.tex b/task1.tex
index 3816fba..aee5f4d 100644
--- a/task1.tex
+++ b/task1.tex
@@ -6,12 +6,15 @@
 \title{Semantiek \& Correctheid\\\Large{Leertaak 1}}
 
 \usepackage{senc}
+\usepackage{multicol}
 
 \begin{document}
 
 \maketitle
 
-\section*{1.8}
+\begin{multicols}{2}
+
+\section*{Opdracht 1.8}
 \begin{alignat*}{3}
     \B{\lnot(\x=1)}\s &= \tt         && \text{want}\\
     \B{\x=1}\s        &= \ff         && \text{want}\\
@@ -20,5 +23,30 @@
     3                 &\neq 1.
 \end{alignat*}
 
+\section*{Conditionele And en Or}
+\begin{align*}
+    \B{b_1 \AND b_2}s &= \begin{cases}
+            \ff & \text{als $\B{b_1}s=\ff$}\\
+            \ff & \text{als $\B{b_2}s=\ff$}\\
+            \tt & \text{anders}\\
+        \end{cases}\\
+    \B{b_1 \OR b_2}s &= \begin{cases}
+            \tt & \text{als $\B{b_1}s=\tt$}\\
+            \tt & \text{als $\B{b_2}s=\tt$}\\
+            \ff & \text{anders}\\
+        \end{cases}
+\end{align*}
+
+De conditionele And verschilt van de gewone And: de rechteroperator wordt alleen ge\"evalueerd als de linkeroperator tot $\tt$ evalueert. De twee zijn equivalent wat betreft de uitkomst (niet wat betreft eventuele bijwerkingen).
+
+\section*{And en Or in Java}
+\texttt{result1} zal \texttt{true} zijn. Eerst wordt \texttt{f()} ge\"evalueerd. Dit geeft \texttt{false}. Hierom wordt \texttt{!f()} ook ge\"evalueerd. Dit geeft \texttt{true}. De waarde van de Or is dan ook \texttt{true}.
+
+\texttt{result2} zal \texttt{false} zijn. Aan het begin is \texttt{b} \texttt{true}. Dan wordt \texttt{!f()} ge\"evalueerd, tot \texttt{false}. Hierom wordt de rechterkant van de And niet meer ge\"evalueerd en wordt \texttt{false} teruggegeven.
+
+Er verandert niets aan het uiteindelijke resultaat als we een gewone And en Or gebruiken, omdat deze equivalent zijn met de conditionele And en Or. Wel zal de laatste \texttt{f()} nog worden ge\"evalueerd, waardoor \texttt{b} aan het eind \texttt{true} zal zijn in plaats van \texttt{false}.
+
+\end{multicols}
+
 \end{document}
 
-- 
cgit v1.2.3

