No contexto de nossa investigação de autômatos de heap , eu gostaria de provar que uma variante específica não pode aceitar linguagens não sensíveis ao contexto. Como não temos um modelo gramatical equivalente, preciso de uma prova que use apenas autômatos; portanto, tenho que mostrar que autômatos de heap podem ser simulados por LBAs (ou um modelo equivalente).
Espero que a prova funcione de maneira semelhante a mostrar que os autômatos de empilhamento aceitam um subconjunto das linguagens sensíveis ao contexto. No entanto, todas as provas que conheço funcionam por
- usando gramáticas - aqui o fato é óbvio por definição - ou
- são inconvencionalmente vagas (por exemplo, aqui ).
Meu problema é que um PDA (resp. HA) pode conter ciclos de -transitions que podem gravar símbolos na pilha (resp. Heap). Um LBA não pode simular iterações arbitrárias desses loops. Da hierarquia de Chomsky obtida com gramáticas, sabemos que
- toda linguagem livre de contexto possui um - ou
- o LBA de simulação pode impedir a iteração -cycles com muita frequência.
Intuitivamente, isso é claro: esses ciclos gravam símbolos independentemente da entrada; portanto, o conteúdo da pilha (heap) mantém apenas uma quantidade de informações lineares na duração do ciclo (desconsiderando os ciclos sobrepostos por enquanto). Além disso, você não tem como se livrar das coisas novamente (se necessário), além de usar outra . Em essência, esses ciclos não contribuem para lidar com a entrada se iterados várias vezes, portanto, não são necessários.
Como esse argumento pode ser colocado de maneira rigorosa / formal, especialmente considerando a sobreposição de -cycles?