2016-04-25 10 views
-1

Wir haben die folgende Grammatik für arithmetische Fragen beschrieben ist:Bestimmen Sie, ob arithmetischen Ausdruck in Sprache, die von Grammatik

E → E + T | E - T | T

T → T * F | T/F | F

F → (E) | a | b

Ich versuche zu bestimmen, ob (a + b) (a-b) in der von der Grammatik beschriebenen Sprache ist.

Ich konnte sehen, dass (a + b) * (a-b) in der Sprache ist, also bedeutet das, dass (a + b) (a-b) in der Sprache ist? Das Fehlen eines Sternchens wirft mich ab. Die vorhergehenden Übungen haben Sternchen für die Multiplikation.

+0

Warum der Downvote? Ich habe gefragt, wie explizit die Grammatik einer Sprache sein muss. Ich habe nicht nach jemandem gefragt, der das ganze Problem lösen könnte - ich habe es bereits getan. – playitright

+0

Wozu dient eine formale Sprachbeschreibung, wenn sie nicht formal ist? Ja, eine Grammatik bedeutet genau das, was sie sagt, nicht mehr und nicht weniger. – rici

Antwort

1

Also bedeutet das, dass (a + b) (a-b) in der Sprache ist?

Kein

Wegen. Sie wären in der Lage, (a+b)(a-b) aus vier non-terminals Kombination dh TT, TF, FT, FF zu produzieren, und diese vier Kombinationen können nicht von gegebener Grammatik produziert werden.

Verwandte Themen