Jusqu'à présent, nous nous sommes occupés de la sémantique déclarative lorsque nous avons envisagé la programmation logique,mais il existe aussi la sémantique dénotationnelle[1], et la sémantique opérationnelle.
Nous pouvons dire qu'un ensemble de formules {f1,...,fn} satisfait une formule f si, pour toute interprétation et pour toute formule de l'ensemble, nous avons « vrai ».
En sémantique déclarative, la conséquence logique se note ⊨ .
Nous sommes alors dans la théorie des modèles, lorsque nous écrivons ⊨ p ∧ q ⇒ q, nous devons être capable de prouver par table de vérité toutes les combinaisons. Nous sommes en présence de tautologies.
En sémantique opérationnelle (ou sémantique procédurale), la déduction se note ⊢ .
Nous sommes alors dans la théorie de la démonstration, lorsque nous écrivons ⊢ p ∧ q ⇒ q, nous ne sommes plus obligés d'instancier toutes les variables. Nous avons à notre disposition différents « outils » tels que les axiomes de Hilbert (purement mathématique), ou les systèmes de Wang et le principe de Robinson-Herbrand (application de formules). Nous sommes en présence de théorèmes.
Le différents théorèmes que nous utiliserons le plus sont les axiomes de Hilbert et les règles d'inférence ou de dérivation.
En général, nous trouverons les règles d'inférence sous la forme d'une pile de prémisse[2] sous laquelle nous avons un trait (comme dans nos bons vieux calculs écrits), en dessous duquel nous pouvons lire la conclusion. Comme je n'ai pas des masses de temps pour l'instant, je les représenterais sous la forme de formules (les prémisses séparés par des virgules, desquels se déduit la conclusion), et je tenterais par la suite d'ajouter une représentation plus traditionnelle.
La règle du modus ponens est la conjonction[3] de l'affirmation de P et de l'affirmation de P implique Q, qui nous permet de déduire Q.
La formule du modus ponens est donc : P, P ⇒ Q ⊢ Q.
La règle du modus tollens est la contraposition que nous avons vu lors de l'algèbre booléen. Si Q n'est pas vrai et que P implique Q, alors nous pouvons déduire que P n'est pas vrai non plus.
La formule du modus tollens est donc : ¬Q, P ⇒ Q ⊢ ¬P
La règle du syllogisme (ou du chaînage) est une facilité, mais n'est pas une nécessité car elle peut se déduire d'autres règles.
La règle du syllogisme est la suivante : P ⇒ Q, Q ⇒ R ⊢ P ⇒ R
Soit notre ensemble des propositions S, notre système est complet ssi S ⊨ P ⇒ S ⊢ P. Cela revient à dire que le système est complet si nous pouvons démontrer toutes les tautologies.
Notre système est cohérent[5] ssi S ⊢ P ⇒ S ⊨ P. Cela revient à dire que tous les théorèmes sont alors des tautologies.
S'il existe un algorithme permettant de déterminer en un nombre fini d'étapes si une formule est une conséquence logique, nous pouvons dire que le système est décidable.
Dans le cas de la logique déclarative, le calcul des propositions est décidable par la génération des tables de vérités. Ce n'est pas le cas pour le calcul des prédicats.
Nous utiliserons l'algorithme de Wang dans le cas de la décidabilité.
Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.
9 mots clés dont 0 définis manuellement (plus d'information...).
Avertissement
Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.
Programmation déclarative(2009)
Tp(2009)
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.
Recherche (afficher)
Utilisateur (masquer)
Navigation (masquer)
Apparence (afficher)
Stats (afficher)
Citation (masquer)