Les programmes informatiques qualifiés d’intelligents sont conçus pour raisonner de manière similaire à un expert humain dans un domaine spécifique. Ils reposent sur des bases de données riches en informations et en connaissances pour réaliser des analyses et tirer des conclusions. Ces systèmes experts sont capables de traiter des données incertaines et sont souvent utilisés pour aider à prendre des décisions. Selon Bruno Neibecker, il est aujourd’hui attendu qu’un système expert repose sur une structure théorique solide pour son noyau de connaissances.