Question

Show that any LL grammar is unambiguous. (Note: This is so obvious it is hard to...

Show that any LL grammar is unambiguous.

(Note: This is so obvious it is hard to prove. Instead, prove the contrapositive: ambiguous implies not LL(k) for any k.)

Homework Answers

Answer #1

Leave T and N alone the arrangements of terminal and non-terminal images.

Allow the accompanying to hold

MaybeEmpty(s) = valid <=> s - >* void

First(s) = X containing all x for which there exists Y with the end goal that s - >* xY

Follow(A) = X containing all x for which there exists Y,Z with the end goal that S - >* YAxZ

Note that a language structure is LL(1) if the accompanying holds for each pair of creations A - > B and A - > C:

1. (not MaybeEmpty(B)) or (not MaybeEmpty(C))

2. (First(B) meet First(C)) = void

3. MaybeEmpty(C) => (First(B) cross Follow(A)) = void

Think about a language with is LL(1), with A - > B and A - > C. In other words there is some series of terminals TZ which concedes various deductions by particular parse trees.

Assume that the left induction arrives at S - >* TAY - >* TZ. The subsequent stage might be either TAY - > TBY, or TAY - > TCY. Hence the language is questionable if both BY - >* Z and CY - >* Z. (Note that since An is a discretionary non-terminal, if no such case exists, the language is non-equivocal.)

Case 1: Z = void

By rule 1 of LL(1) punctuations, at generally one of B and C can determine void (non-uncertain case).

Case 2: Z non-void, and neither B nor C infer void

By rule 2 of LL(1) language structures, at generally one of B and C can allow further inference in light of the fact that the main terminal of Z can't be in both First(B) and First(C) (non-questionable case).

Case 3: Z non-void, and either MaybeEmpty(B) or MaybeEmpty(C)

Note the by rule 1 of LL(1) sentence structures, B and C can't both determine void. Assume consequently that MaybeEmpty(C) is valid.

This gives two sub-cases.

Case 3a: CY - > Y; and Case 3b: CY - >* DY, where D isn't unfilled.

In 3a we should pick between BY - >* Z and CY - > Y - >* Z, however notice that First(Y) subset-of Follow(A). Since Follow(A) doesn't meet First(B), just a single determination can continue (non-equivocal).

In 3b we should pick between BY - >* Z and CY - >* DY - >* Z, yet notice that First(D) subset-of First(C). Since First(C) doesn't meet First(B), just a single determination can continue (non-uncertain).

Along these lines for each situation the induction must be extended by one of the accessible creations. Thusly the punctuation isn't vague.

Know the answer?
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for?
Ask your own homework help question
Similar Questions