|
Programme de travail et liens
- Lex-Yacc en python
-
Heim & Kratzer 98
- Modules sémantiques de nltk
- (22/09/08) [TP1: Traducteur
littéral]
Démarrage : création ou re-création d'un
traducteur littéral de quelques phrases du français, à
partir de la version lex-yacc de l'année passée, mais en
ply.
- Le site de
téléchargement de ply (Python Lex Yacc).
- Version lex-yacc (C) de l'an
dernier: ICI
- Un exemple de programme ply (la classique
calculatrice): ICI
- (29/09/08) [TP2: Logique
propositionnelle, syntaxe et évaluation]
(1) mise en place de l'administration
collective du
site LI (site
d'administration ici),
(2) une deuxième manipulation de ply
- Documentation sur Subversion :
voir le site subversion.tigris.org,
en particulier la
SVN
Quick Reference Card, et
le Subversion
Book
- Proposition de corrigé
pour le TP du 22/09
- Nouveau parser pour le langage défini en
cours: logique propositionnelle (syntaxe nltk)
- Syntaxe :
- Toute lettre majuscule est un symbole de variable
propositionnelle
- Toute variable propositionnelle est une formule
- Si φ et ψ sont des formules, alors
- - φ est une formule
- (φ & ψ),
(φ | ψ),
(φ -> ψ),
(φ <-> ψ)
sont des formules
- 1e étape: parser des formules propositionnelles
- 2e étape: évaluation des formules propositionnelles
(hypothèse: les lettres paires sont vraies, les impaires
sont fausses)
- 3e étape: le langage comprend des affectations
individuelles de variables propositionnelles (il faut donc
stocker un modèle en mémoire)
- 4e étape: on permet aussi des "assertions" de
formules non atomiques.
- (06/10/08) [TP2: Logique
propositionnelle, assertion]
Suite évaluateur de formules : travail
sur l'affectation/assertion de formules
- Proposition de corrigé
pour les 3 étapes de la dernière fois.
- 1e étape: on autorise P = (A & B)
- 2e étape: on autorise P = Q = (A & B) (avec
l'interprétation du langage C)
- 3e étape: on autorise l'"assertion" de formules non
atomiques. Stratégies possibles :
- Mondes possibles : asserter qu'une formule est
vraie revient à réduire l'ensemble des mondes
(stratégie sans heuristiques)
- Stratégies avec heuristiques :
- Utilisation d'une logique tri-valuée
- Utilisation des stratégies d'évaluation
paresseuse
- (13/10/08) [TP2: Logique
propositionnelle, assertion]
- Proposition de corrigé
pour les 2 premières étapes de la dernière fois.
- Proposition de corrigé
pour la méthode des mondes possibles
- (20/10/08) [TP2: Logique
propositionnelle, assertion]
- Première reflexion sur un algorithme de gestion des
hypothèses
- Suite des manipulations
- (27/10/08) [TP3: Logique
prédicative, syntaxe et évaluation]
- Algorithme de gestion des hypothèses par mise sous
forme normale disjonctive (DNF)
- Proposition de corrigé :
voir ici. Voir aussi la
version 0 dans le même répertoire
- Crash course en complexité (problèmes
NP-complets)
- Manipulations du jour : parser pour la logique des
prédicats.
- 1e étape: reconnaissance du langage
all x. ( (man x) -> (mortal x) )
- 2e étape: construction de l'arbre syntaxique
- 3e étape:
évaluation
dans un modèle (extentionel)
- (03/11/08) [TP3: Logique
prédicative, β-réduction]
- Suite des manipulations de la semaine dernière.
- Suggestion de corrigé
pour la première étape
- (10/11/08) [TP3: Logique prédicative,
β-réduction]
- Pour l'implémentation de l'évaluation dans un
modèle : voir
cet article
de Ewan Klein (section 3 « Representing models in
Python »).
- Implémentation de la β-réduction, sur les arbres
syntaxiques définis précédemment.
Trois stratégies possibles pour éviter la capture de
variables:
- α-conversion à la volée
- générateur de variables (à la Prolog)
- indices
de de
Bruijn
- (24/11/08) [TP4: Composant(s)
sémantiques de nltk]
- Installation de la dernière version de nltk
If you don't want to install NLTK in a central
location, download and unpack the zip distributions:
Move NLTK to the desired location, then add this
location to your PYTHONPATH.
Similarly, move the NLTK data to the desired location,
and set this location as the value of NLTK_DATA
- Réalisation d'une grammaire « sémantique »
en français sur la base de
l'exemple sem2. Couverture de la grammaire:
devrait reconnaître les phrases de
ce fichier
- (01/12/08) [TP4: Composant(s)
sémantiques de nltk]
Ne pas hésiter à consulter
la Documentation
API nltk (modules nltk.sem.evaluate, nltk.sem.logic...)
- Proposition de corrigé première étape (sans
l'évaluation) ici et là
- Traitement des phrases atomiques comme des assertions
- Traitement des présuppositions
- Etape 1 : présuppositions existentielles
« à la Russel »
- Etape 2 : représentation bipartite pour les
existentielles
- Etape 3 : généralisation aux autres
présuppositions
- Etape 4 : accommodation des présuppositions
- (08/12/08) [TP4: Composant(s)
sémantiques de nltk]
- Proposition de corrigé (TP du 24/11) (avec
évaluation) dans ce répertoire
|
|