Top Banner
Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais Email: [email protected] UNIVERSIDADE FEDERAL DO PARÁ INSTITUTO DE CIÊNCIAS EXATAS E NATURAIS FACULDADE DE COMPUTAÇÃO CURSO DE BACHARELADO EM CIÊNCIA DA COMPUTAÇÃO
43

Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos!...

Dec 08, 2018

Download

Documents

nguyenphuc
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Disciplina:  LINGUAGENS  FORMAIS,  AUTÔMATOS  E  COMPUTABILIDADE  Prof.  Jefferson  Morais  Email:  [email protected]  

UNIVERSIDADE  FEDERAL  DO  PARÁ  INSTITUTO  DE  CIÊNCIAS  EXATAS  E  NATURAIS  

FACULDADE  DE  COMPUTAÇÃO  CURSO  DE  BACHARELADO  EM  CIÊNCIA  DA  COMPUTAÇÃO  

Page 2: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

   

Autômatos  com  Pilha  

2

Page 3: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Conceito  

3

Page 4: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Autômato  com  Pilha  

!  LLC  pode  ser  associado  a  um  formalismo  7po  autômato  

!  AP  é  similar  ao  AF,  mas  inclui  uma  pilha  como  memória  auxiliar,  mais  o  não-­‐determinismo.  

!  A  pilha  é  independente  da  fita  de  entrada  e  não  possui  limite  de  tamanho  (“infinita”)  " O  úl7mo  símbolo  que  entra  é  o  primeiro  que  sai  

4

Page 5: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Autômato  com  Pilha  

!  A  base  da  pilha  é  fixa  e  define  seu  início  ! O  topo  é  variável  e  define  a  posição  do  úl7mo  símbolo  gravado  

5

Page 6: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Definição  

6

Page 7: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Símbolo  inicial  da  pilha  

7

Page 8: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Função  de  transição  

8

Page 9: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  

9

Page 10: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Stack  x  pushdown  

10

Page 11: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Configuração  e  configuração  inicial  

11

Page 12: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Movimentação  

12

Page 13: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Movimentação  

13

Page 14: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Movimentação  

14

Page 15: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Autômato  determinís7co  

15

Page 16: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Autômato  não  determinís7co  

16

Page 17: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Autômato  não  determinís7co  

17

Page 18: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Determinismo  x  não-­‐determinismo  

18

Page 19: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Movimentação  

19

Page 20: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Movimentação  

20

Page 21: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Configuração  final  

21

Page 22: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Critério  de  aceitação  “estado  final”  

22

Page 23: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Critério  de  aceitação  “pilha  vazia”  

23

Page 24: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Notação  

24

Page 25: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  !  Exemplo  1  

"  Seja  M1  o  autômato  de  pilha  determinís7co  abaixo  discriminado,  cujo  critério  de  aceitação  de  sentenças  é  baseado  no  esvaziamento  da  pilha.    

25

Page 26: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  !  Exemplo  1      

"  Seja  M1  o  autômato  de  pilha  determinís7co  abaixo  discriminado,  cujo  critério  de  aceitação  de  sentenças  é  baseado  no  esvaziamento  da  pilha.    

"  V1(M1)  =  {aibc2i  |  i  ≥  0}  

26

Page 27: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  1  !  Considere  algumas  sentenças  desta  linguagem  e  a  

correspondente  sequência  de  movimentos  executada  pelo  autômato  durante  o  seu  reconhecimento:    

 

27

Page 28: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  1  !  Tome-­‐se  agora  como  exemplo  duas  sentenças  que  não  

pertencem  à  linguagem  definida  por  este  autômato,  e  as  correspondentes  sequências  de  configurações  :    

 

28

Page 29: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Digrama  de  estados  

!  Diferentemente  dos  Diagramas  de  Estado  definidos  para  os  autômatos  finitos,  os  arcos  entre  dois  estados  p  e  q  são  rotulados  com  cadeias  da  forma    

29

Page 30: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  2  

!  Autômato  M2  com  critério  de  aceitação  baseado  no  esvaziamento  da  pilha,  reconhece  a  linguagem  V2(M2)  =  {a2ibci  |  i  ≥  0}  

30

Page 31: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  3  

31

Page 32: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  3  

32

Page 33: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  3  

33

Page 34: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  3  

34

Page 35: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  3  

35

Page 36: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  3  

!  Cadeia  aac  que  não  pertence  a  linguagem  

36

Page 37: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Transições  em  vazio  

!  Para  finalizar,  cumpre  notar  que,  de  acordo  com  a  definição,  os  autômatos  de  pilha  são  capazes  de  efetuar  movimentos  independentemente  da  existência  de  símbolos  na  fita  de  entrada,  através  das  chamadas  transições  em  vazio,  ao  passo  que  o  esvaziamento  da  pilha  necessariamente  impede  qualquer  possibilidade  de  movimentação  futura.  Ambos  estes  fatos  são  u7lizados  para  demonstrar  a  equivalência  dos  critérios  de  aceitação  por  estado  final  e  por  pilha  vazia    

37

Page 38: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Equivalência  dos  critérios  de  aceitação  !  A  classe  de  linguagens  aceita  por  autômatos  de  pilha  não-­‐determinís7cos  

com  critério  de  aceitação  baseado  em  estado  final  é  idên7ca  à  classe  de  linguagens  aceita  por  autômatos  de  pilha  não-­‐determinís7cos  com  critério  de  aceitação  baseado  em  pilha  vazia.  A  importância  desse  resultado  deve-­‐se  à  liberdade  de  escolha  que  ele  oferece  quando  se  pretende  demonstrar  algum  teorema  rela7vo  aos  autômatos  de  pilha  e  às  linguagens  livres  de  contexto,  podendo-­‐se  optar  indis7ntamente  entre  um  e  outro  critério  de  aceitação,  sem  prejuízo  para  a  sua  generalização.    

38

Page 39: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Equivalência  entre  GLCs  e  APs  

!  Inicialmente,  mostra-­‐se  que  para  qualquer  gramá7ca  livre  de  contexto  é  possível  definir  um  autômato  de  pilha  não-­‐determinís7co  que  reconhece  exatamente  a  mesma  linguagem  gerada  pela  gramá7ca.  A  seguir,  é  apresentado  o  resultado  inverso,  ou  seja,  de  que  toda  e  qualquer  linguagem  aceita  por  um  autômato  de  pilha  não-­‐determinís7co  pode  ser  gerada  por  uma  gramá7ca  livre  de  contexto.    

39

Page 40: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

GLC  =>  AP  

40

Page 41: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

GLC  =>  AP  

41

Page 42: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  GLC  =>  AP  

42

Page 43: Disciplina:*LINGUAGENS*FORMAIS,*AUTÔMATOS*E ... · Equivalênciados!critérios!de! aceitação!! A!classe!de!linguagens!aceitapor!autômatos!de!pilhanão>determinís7cos! com!critério!de!aceitação!baseado!em!estado

Exemplo  GLC  =>  AP  

43