SSC IMD SA Mock 02 – Question 158

Question:

In compiler design, what is the primary condition that must be satisfied by a grammar to be parsed by an \(LL(1)\) predictive top-down parser without backtracking?
कंपाइलर डिज़ाइन में, बिना बैकट्रैकिंग के \(LL(1)\) प्रेडिक्टिव टॉप-डाउन पार्सर द्वारा पार्स किए जाने के लिए व्याकरण द्वारा कौन सी प्राथमिक शर्त पूरी होनी चाहिए?

Options:

  • For every production \(A \rightarrow \alpha \mid \beta\), \(\text{FIRST}(\alpha) \cap \text{FIRST}(\beta) = \emptyset\) and if \(\beta \Rightarrow^* \epsilon\), then \(\text{FIRST}(\alpha) \cap \text{FOLLOW}(A) = \emptyset\)
  • The grammar must contain left recursion
  • The grammar must be inherently ambiguous
  • Every non-terminal must derive the empty string \(\epsilon\)
  • प्रत्येक उत्पादन \(A \rightarrow \alpha \mid \beta\) के लिए, \(\text{FIRST}(\alpha) \cap \text{FIRST}(\beta) = \emptyset\) तथा यदि \(\beta \Rightarrow^* \epsilon\) हो, तो \(\text{FIRST}(\alpha) \cap \text{FOLLOW}(A) = \emptyset\)
  • व्याकरण में लेफ्ट रिकर्शन होना चाहिए
  • व्याकरण अस्पष्ट (ambiguous) होना चाहिए
  • प्रत्येक नॉन-टर्मिनल को \(\epsilon\) व्युत्पन्न करना चाहिए

Correct Answer: a)

Explanation:

A grammar is LL(1) if and only if for every pair of alternate productions \(A \rightarrow \alpha \mid \beta\): 1. \(\text{FIRST}(\alpha)\) and \(\text{FIRST}(\beta)\) are disjoint. 2. At most one of \(\alpha, \beta\) can derive \(\epsilon\). 3. If \(\beta \Rightarrow^* \epsilon\), then \(\text{FIRST}(\alpha) \cap \text{FOLLOW}(A) = \emptyset\).
LL(1) पार्सर के लिए FIRST और FOLLOW सेट परस्पर अनन्य (disjoint) होने चाहिए ताकि पार्स टेबल के किसी भी सेल में एक से अधिक प्रविष्टियाँ (संघर्ष) न हों।

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top