Is this grammar LL(1) grammar?
Plugging it into my LL(1) computer, loner gives false:

&lt;S&gt; ::= &lt;E&gt; | &lt;S&gt;;
&lt;S&gt; ::= &lt;E&gt;;
&lt;E&gt; ::= 'letter';
&lt;E&gt; ::= '"' &lt;S&gt; '"';


(Note there are some duplicate rules here, which become apparent in the formatted version.)

Proving it (e.g., via the set properties or a pumping lemma) is left an exercise.



If / is intended to a be terminal (and not alternation!), then we have

&lt;S&gt; ::= &lt;E&gt; '/' &lt;S&gt;;
&lt;S&gt; ::= &lt;E&gt;;
&lt;E&gt; ::= 'letter';
&lt;E&gt; ::= '"' &lt;S&gt; '"';


is still not LL(1).



The derivation would be more readable (and more obviously correct) if shown like (e.g.)

S -&gt;  E / S
(with E -&gt; 'S')
-&gt; 'S' / S
(with S -&gt; E / S)
-&gt; 'E / S' / S
(with E -&gt; letter)
-&gt; 'a / S'/ S
(with S -&gt; E / S)
-&gt; 'a / E / S' / S
(with S -&gt; E -&gt; 'S' -&gt; 'E / S') ; note the application of several steps, here
-&gt; 'a / E / 'E / S'' / S
(with S -&gt; E -&gt; letter) ; and again. better to be explicit
-&gt; 'a / e / 'g / s'' / q