Gramática de concatenação de intervalo
Gramática de concatenação de intervalo, em tradução livre de range concatenation grammar (RCG), é uma gramática formal desenvolvida por Pierre Boullier [1] em 1998 como uma tentativa de representar uma série de fenômenos da linguagem natural, como os números chineses e embaralhamento de palavras alemãs, que não pertencem às linguagens moderadamente sensíveis ao contexto (tradução livre de Mildly context-sensitive languages[2]).
De um ponto de vista teórico, qualquer linguagem pode ser analisada em tempo polinomial se, e somente se, pertencer ao subconjunto de RCG chamado gramáticas de Concatenação de Intervalo Positivo (tradução livre de positive range concatenation grammars).[3]
Embora projetada como uma variante das Gramáticas de Movimento Literal de Groenink (sigla LMG), as RCGs tratam o processo gramático mais como prova do que produção. Enquanto LMGs produzem uma cadeia final de um predicado inicial, RCGs focam em reduzir o predicado inicial (que implica na cadeia final) para a cadeia vazia, que constitui a prova do pertencimento da cadeia final à linguagem.
Descrição
editarDefinição Formal
editarUma gramática de Concatenação de Intervalo Positivo - tradução livre de positive range concatenation grammar, PRCG - é uma tupla , onde:
- , e são conjuntos disjuntos finitos de (respectivamente) predicados, simbolos teminais e variáveis. Cada nome de predicado tem uma aridade associada dada pela função .
- é o início do predicado e verifica .
- é um conjunto finito de cláusulas da forma , onde os são predicados da forma com e .
Uma gramática de Concatenação de Intervalo Negativo - tradução livre de Negative Range Concatenation Grammar, NRCG - é definida como uma PRCG, mas com o adicional de que alguns predicados ocorrendo no lado direito das cláusulas podem ter a forma . Estes predicados são chamados predicados negativos.
Uma gramática de Concatenação de Intervalo é ou positiva ou negativa. Embora PRCGs sejam tecnicamente NRCGs, dizemos que essas gramáticas são de intervalos negativos ou positivos enfatizar a ausência ou presença de predicados negativos.
Um intervalo no palavra são alguns , com , onde é o comprimento de . Dois intervalos and podem ser concatenados sse , então nós temos: .
Para uma palavra , com , a notação pontuada para intervalos é: .
Reconhecimento de cadeias
editarComo LMGs, cláusulas de RCG tem o esquema geral , onde em uma RCG, é, ou a cadeia vazia ou uma cadeia de predicados. Os argumentos consistem de cadeias de símbolos terminais e/ou símbolos de variáveis, padrão o qual corresponde com os valores do argumento atual como no LMG. Variáveis adjascentes constituem uma família de correspondências em partições, então esse argumento , onde duas variáveis, correnpondem a cadeias de litais em três modos diferentes: .
Termos predicados vêm de duas formas, positiva (que produz a cadeia vazia em caso de sucesso), e negativa (que produz a cadeia vazia em caso de falha ou se termos positivos não produzem a cadeia vazia). Termos negativos são denotados da mesma forma que os positivos, com uma barra sob si, como em .
A re-escrita da semântica para RCGs é bastante simples, idêntica à semântica correspondente de LMGs. Dado uma cadeia de predicado , onde os símbolos são cadeias finais, se há uma regra na gramática que corresponde à cadeia de predicado , a cadeia de predicado é substituida por , substituindo as variáveis correspondentes em cada .
Por exemplo, dada uma regra , onde and são símbolos de variáveis e e são símbolos terminais, a cadeia de predicado pode ser re-escrita como , porque corresponde a onde . Da mesma forma, se houvesse uma regra , poderiamos re-escrever como .
A prova/reconhecimento de uma cadeia é feita mostrando que produz a cadeias vazia. Para os passos de re-escrita individuais, quando multiplas correspondecias alternativas de variáveis são possíveis, qualquer re-escrita que pode guiar a prova por inteiro é considerada.
Exemplo
editarRCGs são capazes de reconhecer uma linguagem de índice não-linear como segue:
Sejam x, y, and z símbolos de variáveis:
A prova para abbabbabb é então
Ou, usando a mais correta "notação pontuada" para intervalos:
References
editar- ↑ Pierre Boullier (1998). «Chinese Numbers, MIX, Scrambling, and Range Concatenation Grammars». Proposal for a Natural Language Processing Syntactic Backbone (PDF). [S.l.: s.n.]
- ↑ Pierre Boullier (1999). «Chinese Numbers, MIX, Scrambling, and Range Concatenation Grammars». Proc. EACL (PDF). [S.l.: s.n.] pp. 53–60. Consultado em 17 de fevereiro de 2015. Arquivado do original (PDF) em 15 de maio de 2003
- ↑ Laura Kallmeyer (2010). Parsing Beyond Context-Free Grammars. [S.l.]: Springer Science & Business Media. p. 37. ISBN 978-3-642-14846-0 citing http://mjn.host.cs.st-andrews.ac.uk/publications/2001d.pdf