\definecolor{light}{gray}{.50}
\newcommand{\mybox}[3]{
\shadowbox{\parbox[c][#1]{#2}{\begin{center}#3\end{center}}}
}
\setlength{\unitlength}{0.1cm} 
\begin{figure}[ht]
\begin{center}
\begin{picture}(120,60)(0,0)

\put(20,32){\fcolorbox{black}{white}{
   \begin{minipage}{2cm}
   \begin{center}
   {\small refinement}\\
   {\small details \texttt{d}}
   \end{center}
   \end{minipage}}}
\put(20,17){\Ovalbox{
   \begin{minipage}{2cm}
   \begin{center}
   {\small $\alpha$: calculate\\abstraction}
   \end{center} 
   \end{minipage}}}
\put(49,17){\fcolorbox{black}{white}{
   \begin{minipage}{1.5cm}
   \begin{center}
   {\small abstract\\model \texttt{m$'$}}
   \end{center}
   \end{minipage}}}
\put(73,17){\Ovalbox{
   \begin{minipage}{1.3cm}
   \begin{center}
   {\small $\pi$: check\\property}
   \end{center}
   \end{minipage}}}
%diamond
\put(95,18){\line(1,1){2}}
\put(95,18){\line(1,-1){2}}
\put(97,20){\line(1,-1){2}}
\put(97,16){\line(1,1){2}}

\put(89,32){\fcolorbox{black}{white}{
   \begin{minipage}{1.9cm}
   \begin{center}
   {\small abstract\\explanation}
   \end{center}
   \end{minipage}}}
\put(64,32){\Ovalbox{
   \begin{minipage}{1.6cm}
   \begin{center}
   {\small feasibility\\analysis $\delta$}
   \end{center}
   \end{minipage}}}

\put(55,33){\line(1,1){2}}
\put(55,33){\line(1,-1){2}}
\put(57,35){\line(1,-1){2}}
\put(57,31){\line(1,1){2}}

\setlength{\fboxrule}{2pt}
\put(48,50){\fcolorbox{black}{white}{
   \begin{minipage}{1.3cm}
   \begin{center}
   {\small counter\\example}
   \end{center}
   \end{minipage}}}
\put(0,17){\fcolorbox{black}{white}{
   \begin{minipage}{1.2cm}
   \begin{center}
    {\small \texttt{m}: orig.\\model}
   \end{center}
   \end{minipage}}}
\put(0,32){\fcolorbox{black}{white}{
   \begin{minipage}{1.2cm}
   \begin{center}
    {\small property\\\texttt{p} to be\\checked}
   \end{center}
   \end{minipage}}}
\put(87,5){\textbf{OK}}
\put(79,50){\textbf{property violated}}
\put(100,11){\small [property}
\put(102,7){\small holds]}
\put(100,25){\small [property}
\put(102,21){\small violation}
\put(102,17){\small found]}
\put(58,40){\small [feasible]}
\put(45,28){\small [infeasible]}

\thicklines
\put(17,18){\vector(1,0){3}}
\put(17,28){\vector(1,-1){5}}
\put(44,18){\vector(1,0){5}}
\put(68,18){\vector(1,0){5}}
\put(90,18){\vector(1,0){5}}
\put(89,33){\vector(-1,0){5}}
\put(64,33){\vector(-1,0){5}}
\put(32,28){\vector(0,-1){5}}
\put(55,33){\vector(-1,0){11}}
\put(57,35){\vector(0,1){11}}
\put(65,51){\vector(1,0){8}}

\put(97,20){\vector(0,1){8}}
\put(97,16){\vector(0,-1){8}}
\put(97,6){\circle{4}}
\put(97,6){\circle*{2}}
\put(75,51){\circle{4}}
\put(75,51){\circle*{2}}

\end{picture}
\end{center}
\caption{Counterexample-Guided Abstraction Refinement Scheme\label{fig:cegar}}
\end{figure}












