\documentclass{article} \usepackage{mathpartir} \begin{document} \begin{figure} \begin{mathpar} \begin{array}{rclll} \delta_c \O & = & \O & & \\ \delta_c \varepsilon & = & \O & & \\ \delta_c a & = & \{\varepsilon\} & , & if \ a == c \\ & | & \O & , & otherwise \\ \delta_c (r_1;r_2) & = & \{r;r_2 \ | \ r \in \delta_c r_1\} \ \cup \ (\delta_c r_2) & , & if \ \varepsilon \in (\delta_c r_1) \\ & | & \{r;r_2 \ | \ r \in \delta_c r_1\} & , & otherwise \\ \delta_c (r_1 + r_2) & = & (\delta_c r_1) \ \cup \ (\delta_c r_2) & & \\ \delta_c (r*) & = & \{r';r \! * \ | \ r' \in \delta_c r\} & & \\ \end{array} \end{mathpar} \caption{Antimirov derivatives} \label{fig:antimirov} \end{figure} \begin{figure}[h] \begin{mathpar} \begin{array}{rcl} w \models \varepsilon & \iff & w = nil \\ w \models b & \iff & (|w|=1) \land (w_0 \models b) \\ w \models (r_1 ; r_2) & \iff & (w=w_1 \cdot w_2) \land (w_1 \models r_1) \land (w_2 \models r_2) \\ w \models (r_1 + r_2) & \iff & (w \models r_1) \ \lor \ (w \models r_2) \\ w \models r* & \iff & (w \models \varepsilon) \ \lor \ (w=w_1 \cdot w_2) \land (w_1 \models r) \land (w_2 \models r*) \\ \end{array} \end{mathpar} \caption{Semantics of regular expression} \label{fig:re-semantics} \end{figure} \end{document}