Le domaine abstrait est composé d'un domaine numérique relationnel, d'un \textit{mapping} de registres et d'un \textit{mapping} d'addresses.
\subsection{Domaine numérique relationel}
L'objectif de ce module est d'avoir une interface modulaire avec les librairies de manipulation de domaines numériques. Pour ce faire, on définit des classes abstraites dans \verb*|numerical.py|, pour lesquelles on créera des implémentation pour chaque librairie souhaitée.
\caption{Hiérarchie des classes de l'interface mathématique et de son implémentation utilisant APRON}
\caption[Schéma UML de l'interface mathématique]{Hiérarchie des classes de l'interface mathématique et de son implémentation utilisant APRON}
\end{figure}
\subsection{Mappings}
Les \textit{mappings} sont définis dans \verb*|mappings.py|. Ils implémentent le \textit{mapping} de registres \( R \mapsto\mathcal{V}\) et le \textit{mapping} d'adresses \(\left(\mathcal{V}\times\mathbb{N}\times\mathcal{V}\right)\mapsto\mathcal{V}\cup\left(\mathcal{V}\times\mathcal{V}\right)\)