Portuguese, Brazilian subtitles

← 04-25 Computing The Closure Solution

04-25 Computando o Fecho - Solução

Get Embed Code
3 Languages

Subtitles translated from English Showing Revision 3 created 01/27/2013 by Lucilia Figueiredo.

  1. Vamos ver as respostas juntos.
  2. Veremos que podemos computar isso de maneira sistemática,
  3. apenas nos lembrando como computar o fecho.
  4. Temos o • aqui, antes do não terminal E.
  5. Portanto, devemos procurar na nossa gramática
  6. todas as regras que começam com o não terminal E.
  7. Existem 3 regras, e vou adicioná-las a chart[2],
  8. como o • exatamente no início, e from 2,
  9. porque essa é a posição corrente -- 1,2 --
  10. como informação de origem, aqui, à direita.
  11. Então, uma das regras é
  12. E -> int e,
  13. portanto, adicionamos E -> • int .
  14. Novamente, from 2 é porque trouxemos,
  15. ou computamos o fecho, começando a partir de chart[2].
  16. Outra possível regra é
  17. E -> ( F ).
  18. Portanto E -> • ( F ), vindo da posição 2,
  19. é uma previsão válida que podemos fazer.
  20. Podemos ver `(' depois de ver um `-' -- isso é válido nessa linguagem.
  21. A terceira regra é E -> E - E,
  22. e esta opção parece tentadora --
  23. ela tem E -> • E - E,
  24. com o &bull no início -- mas a informação de estado de origem está errada
  25. está escrito from* 0, ao invés de from 2.
  26. Temos que nos lembrar desses 2 tokens que já vimos antes: o E e o `-'.
  27. Precisamos saber em que estado estávamos
  28. quando decidimos fazer o fecho.
  29. Esta opção não está correta.
  30. Aqui, vemos uma bastante semelhante:
  31. E -> • E - E, from 2
  32. Isso está correto: é uma regra que começa com E,
  33. e temos que começar com E, porque o • está antes do E;
  34. e nesta, corretamente, temos from 2.
  35. Computamos o fecho em chart[2].
  36. Finalmente, este aqui é meio diferente:
  37. F -> • string, from 2.
  38. Bem, o from 2 parece ok; o • no início parece ok,
  39. mas nossa regra é: como este • estava antes do E,
  40. adicionamos todas as regras da gramática que começam com E
  41. à esquerda, e é só isso.
  42. Portanto F -> string está fora de lugar.
  43. Não prevejo ver nenhum string,
  44. antes de ter visto um `('.
  45. Se voc6E pensar sobre essa gramática,
  46. verá que a única maneira de obter um string é depois de um `('.
  47. Eu não vi isso ainda, portanto, esta é uma previsão ruim.