IAS / TP4: Logique du Premier Ordre - Sémantique

Ce travail est la continuité du travail précédent: Logique du Premier Ordre - Syntaxe. Il s'agit maintenant d'implanter la sémantique de la logique du premier ordre au projet Java développé Précédemment.

La logique du premier ordre étant indécidable et incalculable dans le cas général, les domaines d'interprétation \( \Omega_{\mathcal{I}} \) seront limités à des domaines finis (ensemble d'entiers finis, ensembles d'objets finis, ...).

Le but de ce travail est d'étendre la représentation déjà existante de la logique du premier ordre (réalisée lors du précédent travail) afin d'y intégrer les notions de:

  • Domaine de définition
  • Interprétation
  • Assignation

Chacune de ces notion étant représentée par la définition d'une classe ou d'une interface. 

Vos développements devront permettre d'ajouter à la classe Formula une méthode

boolean value(Assignement a);

qui permettra d'évaluer la satisfaction ou non d'une formule à partir de l'assignation fournie en paramètre.

Les développements seront validés en implantant et testant l'exemple du cours sur les itinéraires.