\begin{frame} \frametitle{Checking Conflict-Serializability} \begin{block}{Checking Conflict-Serializability} A schedule is \emph{conflict-serializable} if and only if there is \emph{no~cycle} in the precedence graph! \end{block} \pause \begin{exampleblock}{} {\def\scheduleWidth{1cm} \begin{tcenter} \begin{tikzpicture}[node distance=15mm] \schedule{}{2}{1wV|2rV|1wV} \node (t1) at (6.5cm,-\scheduleHeight) {$T_1$}; \node (t2) [right of=t1] {$T_2$}; \draw [very thick,->] (t1) to[bend left=30] (t2); \draw [very thick,->] (t2) to[bend left=30] (t1); \begin{scope}[yshift=-1.45cm] \schedule{}{2}{1rV|2rV|1wV} \node (t1) at (6.5cm,-\scheduleHeight) {$T_1$}; \node (t2) [right of=t1] {$T_2$}; \draw [very thick,<-] (t1) -- (t2); \end{scope} \begin{scope}[yshift=-2.9cm] \schedule{}{3}{2rV|3wV|1wY|2rY|2wZ} \node (t1) at (6.5cm,-\scheduleHeight) {$T_1$}; \node (t3) [below right of=t1] {$T_3$}; \node (t2) [above right of=t3] {$T_2$}; \draw [very thick,->] (t1) -- (t2); \draw [very thick,->] (t2) -- (t3); \end{scope} \end{tikzpicture} \end{tcenter} } \pause Schedules $2$ and $3$ have no cycles in their precedence graph. They are conflict serializable! \end{exampleblock} \end{frame}