\subsubsection{Expressions} Expressions in Promela can be: \begin{itemize} \item Variables, constants, and literals \item Structure and array accesses \item Unary and binary expressions with operators. The operators correspond to the \texttt{C} operators \item Function applications \item Ternary operators / conditional expressions \texttt{E1 -> E2 : E3} \end{itemize} Promela has a number of built in functions, which are: \begin{multicols}{5} \begin{itemize} \item \texttt{len()} \item \texttt{empty()} \item \texttt{nempty()} \item \texttt{full()} \item \texttt{nfull()} \item \texttt{run } \item \texttt{eval()} \item \texttt{enabled()} \item \texttt{pcvalue()} \end{itemize} \end{multicols}