Les complexes simpliciaux (cf annexe) sont des objets algébriques qui généralisent le concept de graphe ; ils font partie des objets abstraits candidats au traitement des problèmes de description à des niveaux d'échelles multiples. Ils ont donc beaucoup d'application en analyse d'image ou en modélisation, par exemple.
Concevoir une bibliothèque de classes (Java, C++, autres) permettant de manipuler des complexes simpliciaux. Les opérations applicables sur ces complexes sont (liste non exhaustive) :
Un complexe simplicial K est un couple (S, R) où S est un ensemble fini de sommets et R un sous-ensemble de l'ensemble des parties de S (R inclus dans P(S)), clos par intersection (si a et b sont deux éléments de R, alors a inter b l'est aussi). Les éléments de R autres que l'ensemble vide sont appelés les simplexes de K.
La dimension d'un simplexe est simplement son cardinal moins 1 ; un n-simplexe est un simplexe de dimension n. La dimension d'un complexe est la plus grande dimension des simplexes qui le constituent.
Un graphe (S, A) est un complexe simplicial (S, P0(S) union P1(S) union A), de dimension 1 ; Pk(X) dénote l'ensemble de toutes les parties de X qui ont un cardinal égal à k ; P1(S) est donc l'ensemble des singletons de S, et P0(S) l'ensemble composé du seul ensemble vide.