Un système expert est un logiciel capable de répondre à des questions en effectuant un raisonnement à partir de faits et de règles connues. Il est constitué d'une base de faits, d'une base de règles et d'un moteur d'inférence.

Le moteur d'inférence est capable d'utiliser faits et règles pour produire de nouveaux faits, jusqu'à parvenir à la réponse à la question experte posée. Il analyse chaque fait saisi (température, distance, situation etc..) puis va lire dans la base de règles. Les règles qui sont satisfaites permettent au Système Expert de conclure.

La finalité est de reproduire le raisonnement réalisé par un expert et donc de reproduire les mécanismes cognitifs de l'expert dans un domaine particulier.

Il peut servir d'outil d'aide à la décision.

Les plus simples des systèmes experts s'appuient sur la logique des propositions « d'ordre 0 ». Dans cette logique, les faits sont des valeurs booléennes fixes (Si Age = 15 ans Alors Adolescent). Le deuxième niveau est un moteur « d'ordre 0+». Dans cette logique les faits sont de variables (Si Age >12 et Age <18 ans Alors Adolescent).   D'autres systèmes s'appuient sur la logique des prédicats du premier ordre (dite aussi « logique d'ordre 1 »). Dans ce cas c'est le fait qui devient une variable (Si X est l'Age et Age>12 ans et Age <18 ans Alors Adolescent). Nous atteignons aujourd'hui le moteur d'ordre 2.