From the provided notes, we can extract the properties of LL(1) grammars (which are relevant to Predictive Parsing) as follows:

Properties of LL(1) Grammars:

  1. Deterministic Parsing: LL(1) grammars allow deterministic top-down parsing, meaning the parser can choose the correct production without backtracking by looking at the next token.
  2. Single Token Lookahead: The parser uses only one token of lookahead to make decisions. Hence, it is called LL(1):
  3. No Left Recursion: LL(1) grammars must not have left recursion. If a grammar has left recursion, it needs to be eliminated or transformed into a form suitable for LL(1) parsing.
  4. Non-ambiguous: The grammar must not be ambiguous. Each step in parsing should have a single, unambiguous rule to apply.
  5. First and Follow Sets: LL(1) grammars depend on FIRST and FOLLOW sets to determine which production to use when encountering a particular input symbol. These sets help in building the predictive parsing table.
  6. Predictive Parsing Table: For each non-terminal, and each terminal in its FIRST set (and FOLLOW set for ε-productions), the LL(1) parser can make a deterministic decision about which production to apply.

These are the primary properties discussed regarding LL(1) parsing based on the notes.

If any other sections of the notes contain properties (e.g., properties of expressions or grammars), I will list them once identified. However, LL(1) parsing stands out in terms of having defined properties based on this content.