Théorie des langages TD1

1)	Dérivation de règles
Question 1)
G = {T, N, S, P}
T = {le, la, fille, jouet, regarde}
N = {Phrase, GN, V, D, N}
S = Phrase
   	Phrase -> GN Verbe GN 
P =	GN -> D N
   	V -> regarde 
   	D -> le | la
	N -> fille | jouet
Question 2)
Phrase   G N V G N
	 D N V D N
	 la fille regarde le jouet
Question 3)
Idem Question 2)
Question 4)
La deuxième phrase n'est pas sémantiquement correcte

2)	Analyse lexicale
Question 1)
Syntaxique	Lexicale	
5	1	
6	 2	
8	3	
9	4	
10	7	

Question 2)
L = L1 U L2
Avec L1 = langage reconnaissant le lexème an (affectation numérique)
et L2 = langage reconnaissant le lexème aa (affectation alphanumérique)

3)	Le langage SQL
Question 1)
G = {T, N, S, P}
T = {SELECT; FROM; WHERE; AND; OR; <; =; >;[a-z];[ A-Z];[0-9] ; ‘ ; (; )}
N = {champ, table, condition, oper, comp, constante, identificateur, lexème SQL, lettre, chiffre, chaine, entier}
S = lexème SQL
P = 	lexème SQL  SELECT | FROM | WHERE | champ | table | condition
champ  identificateur 
	table  identificateur
	identificateur  lettre(lettre | chiffre)*
lettre  [a-z] | [A-Z]
chiffre  [0-9]
condition  champ comp constante | (condition oper condition)
comp  <|=|>
cper  AND|OR
constante ‘chaine’ | entier
chaine  (lettre | chiffre) +
entier (chiffre) +
Normalement on ne met pas les ‘+’, on utilise : entier  chiffre
							entier  entier chiffre

Question 2)
T = {SELECT; FROM; WHERE; champ; table; condition ;,}
N = requête
S = requête
P = {requête  SELECT champ(champ)* FROM table WHERE condition}