• Vstup: G = (N, T, P, S)
• Výstup: First(X) pro každé X Î N È T
• Metoda:
• pro každé a Î T: First(a) := {a}
• pro každé A Î N: First(A) := Æ
• Používej následující pravidlo, dokud bude
možné měnit nějakou množinu First:
• if A ® X1X2…Xk-1Xk… Xn Î P then
• přidej
všechny symboly z First(X1) do First(A)
• if Empty(Xi) = {e} pro i = 1,…, k-1, kde k £ n
then přidej všechny symboly z First(Xk) do
First(A)