tabela <- Mapa〈estado, Mapa〈símbolo, ação〉〉
alfabeto <- [terminais, não-terminais] concatenados
para cada estado s em autômato.estados:
inicializar tabela[s] com entradas vazias para todos os símbolos em alfabeto
para cada estado s em autômato.estados:
para cada item i em s.items:
se i.pos for o final da produção OU produção de i é vazia:
se i for a produção inicial (índice 0):
tabela[s]['$'] <- 'a' (aceitar)
senão:
para cada símbolo b em i.lookahead:
tabela[s][b] <- 'r' + índice da produção de i
continua para próximo item
símbolo_atual <- símbolo na posição i.pos da produção de i
t <- transição de s via símbolo_atual (do autômato)
se símbolo_atual é não-terminal:
tabela[s][símbolo_atual] <- 'g' + estado t
senão:
tabela[s][símbolo_atual] <- 's' + estado t