Un outil oulipien




Greg Lessard, Études françaises

Michael Levison, Computing and Information Science

Stéfan Sinclair, Études françaises

Queen’s University




Atelier: La littérature à contraintes

APFUCC, 2001




Introduction


contraintes + créativité

planification ou modification?

machine et/ou être humain?

cadre général versus individualité

déterminisme ou non?




Contexte théorique


personnages et fonctions

Rhetorical Structure Theory

noyaux et satellites (ex. affirmation + exemples)




Le logiciel (VINCI)




classes et valeurs

ordre partiel

attributs composés


arbres syntaxiques

noeuds attribués

développement conditionnel

transformations


traits sémantiques

relations sémantiques (synonymes, contraires, etc.)

créativité lexicale

orthographe et phonologie


flexion



Un texte simple



Il était une fois un roi. Il était faible, et il avait les cheveux roux.


Il était une fois une princesse. Elle était belle, intelligente, et

bonne, et elle avait les cheveux blonds.


Le roi ordonna à la princesse de rester.


Elle était obéissante mais elle n'obéit pas.


La princesse partit.


Un sorcier enleva la princesse.


Le roi demanda l'aide du prince.


Un lutin recommanda une tasse magique au prince.


Le prince utilisa la tasse pour tuer le sorcier.


Le prince épousa la princesse et ils eurent beaucoup d'enfants.



Attributs



Personnages (

roi, héros, victime, scélérat, adjuvant, objet_magique)


Intelligence (

stupide, intelligent, intelligence0)


Force (

fort, faible, force0)


Apparence (

beau, laid, apparence0)


Moralité (

bon, méchant, moralité0)


Cheveux (

roux, blonds, châtains)


Obéissance (

obéissant, désobéissant)



Personnages


\r"prince"|N|masc, Nombre, Déterm, >humain, Cheveux, Obéissance, mâle, beau, bon, fort, intelligent, phon, anglais||$3||||||||||||"prince"||"pRês"|||$phon0|||||||


\r"lutin"|N|masc, Nombre, Déterm, >humain, Cheveux, Obéissance, mâle, laid, bon, intelligent, Force, phon, anglais||$3||||||||||||"fairy"||"lytê"|||$phon0|||||||


\r"roi"|N|masc, Nombre, Déterm, >humain, Cheveux, Obéissance, mâle, Apparence, Force, Moralité, Intelligence, phon, anglais||$3||||||||||||"king"||"Rwa"|||$phon0|||||||


\r"princesse"|N|fém, Nombre, Déterm, >humain, Cheveux, Obéissance, femelle, beau, bon, intelligent, Force, phon, anglais||$3||||||||||||"princess"||"pRêsEs"|||$phon0|||||||


\r"sorcier"|N|masc, Nombre, Déterm, >humain, Cheveux, Obéissance, mâle, laid, méchant, fort, intelligent, phon, anglais||$3||||||||||||"sorcerer"||"sORsje"|||$phon0|||||||


\r"sorcière"|N|fém, Nombre, Déterm, >humain, Cheveux, Obéissance, femelle, laid, méchant, intelligent, Force, phon, anglais||$3||||||||||||"witch"||"sORsjER"|||$phon0|||||||



Choisir un personnage et une fonction





PRESELECT =


victime : N[sing]/"princesse"


%



ROOT = DECRIRE[victime]


%


Une liste de fonctions



DECRIRE - décrire un personnage x


INTERDIRE - x défend à y de faire z


DÉSOBÉIR - x désobéit


PARTIR - x quitte un endroit


ENLEVER - x enlève y


APPELER - x demande de l’aide à y


AIDER - x aide y par le don de z


TUER - x tue y


ÉPOUSER - x épouse y



La syntaxe qui sous-tend une fonction




DECRIRE =


INHERIT Ps : Personnages;

SELECT Fo : Force _in_ Ps ,

Ap : Apparence _in_ Ps,

In : Intelligence _in_ Ps,

Mo : Moralité _in_ Ps,

Ch : Cheveux _in_ Ps;

P1[Ps]

P2[Ps, Ap]

P3[Ps, In]

P4[Ps, Fo]

P5[Ps, Mo]

P6[Ps, Ch]

%


P1 =

INHERIT Ps : Personnages;


SELECT

Ge1 : Genre _in_ Ps,

No1 : Nombre _in_ Ps;


PONCT[maj]

V[ilétaitunefois]

DET[indéf, Ge1, No1]

N[Ge1, No1]/_pre_ Ps

PONCT[pt]

%


P2 =

INHERIT Ps : Personnages;

SELECT Ge1 : Genre _in_ Ps,

No1 : Nombre _in_ Ps,

Ap1 : Apparence _in_ Ps;


< apparence0 :


> PONCT[maj]

PRON[pronper, clit, suj, p3, Ge1, No1]

V[vcop, imparf, p3, No1, indic]

ADJ[Ap1, Ge1, No1]

PONCT[virg]

%


P3 =

INHERIT Ps : Personnages;

SELECT Ge1 : Genre _in_ Ps,

No1 : Nombre _in_ Ps,

In1 : Intelligence _in_ Ps;


< intelligence0 :


>

ADJ[In1, Ge1, No1]

PONCT[virg]

%

P4 =

INHERIT Ps : Personnages;

SELECT Ge1 : Genre _in_ Ps,

No1 : Nombre _in_ Ps,

Fo1 : Force _in_ Ps;


< force0 :


>

ADJ[Fo1, Ge1, No1]

PONCT[virg]

%


P5 =

INHERIT Ps : Personnages;

SELECT Ge1 : Genre _in_ Ps,

No1 : Nombre _in_ Ps,

Mo1 : Moralité _in_ Ps;


< moralité0 :


> CONJ[et]

ADJ[Mo1, Ge1, No1]

PONCT[virg]

%


P6 =

INHERIT Ps : Personnages,

Ch : Cheveux;


SELECT Ge1 : Genre _in_ Ps,

No1 : Nombre _in_ Ps;


> CONJ[et]

PRON[pronper, clit, suj, p3, Ge1, No1]

V[imparf, p3, No1, indic]/"avoir"

DET[déf, masc, plur]

N[masc, plur]/"cheveu"

ADJ[Ch, masc, plur]

PONCT[pt]

%


Les transformations



Point de départ:


Elle était belle, elle était intelligente, elle était bonne, et elle avait les cheveux blonds.



Négation:


Elle n’était pas laide, elle n’était pas stupide, elle n’était pas méchante, et elle avait les cheveux blonds.



Exclamation:


Ce qu’elle était belle, ce qu’elle était intelligente, ce qu’elle était bonne, et elle avait les cheveux blonds.



Nominalisation:


Elle était d’une beauté, elle était d’une intelligence, elle était d’une bonté, et elle avait les cheveux blonds.



Exemple d’une transformation




NOMINALISER = TRANSFORMATION

* PRON V ADJ[force0] * : 1 2 3 4 5;

* PRON V ADJ[moralité0] * : 1 2 3 4 5;

* PRON V ADJ[intelligence0] * : 1 2 3 4 5;

* PRON V ADJ[apparence0] * : 1 2 3 4 5;

* PRON V ADJ * : 1 2 3 PREP[de] DET[indéf, fém, sing] 4/@14:nom[fém, sing] PONCT[ptexcl] ;

%



Conclusions