A linguagem da representação binária de quadrados perfeitos é regular?


7

Vamos denotar a representação binária de um número inteiro . Deixe .bin(n)nL={bin(n2)nN}

é uma linguagem comum?L

Acho que se pode provar que não é regular usando o lema de bombeamento, mas não sei como usá-lo aqui.L


4
Bem-vindo ao CSTheory, um site de perguntas e respostas para perguntas em nível de pesquisa em ciência da computação teórica (TCS). Sua pergunta não parece ser uma pergunta em nível de pesquisa no TCS. Consulte as Perguntas frequentes para obter mais informações sobre o significado disso e sugestões de sites que podem dar boas-vindas à sua pergunta. Por fim, se sua pergunta está encerrada por estar fora do escopo e você acredita que pode editá-la para torná-la uma questão de nível de pesquisa, sinta-se à vontade para fazê-lo. O fechamento não é permanente e as perguntas podem ser reabertas. Consulte as Perguntas frequentes para obter mais informações.


3
Uma pergunta interessante. Embora pareça que a linguagem não deva ser regular, deve-se notar que a linguagem das representações binárias do módulo de resíduos quadráticos de potência 2 é regular.
Karolis Juodelė

3
math.stackexchange.com/questions/380411/… alguém já perguntou aqui o mesmo e inclui uma resposta provisória.
Alejandro Sazo 5/05

Existem outros métodos para mostrar que um idioma não é regular (consulte cs.stackexchange.com/questions/1031/… ). Eu acho que usaria o teorema de Myhill-Nerode.
AProgrammer 5/05

Respostas:


10

Começamos com um lema.

Lema. Seja . Se é um quadrado, então .a>b42a+2b+1a2b3

Prova. Seja . Claramente deve ser ímpar, diga . Então , e assim . Se é par, então é ímpar e, portanto, para ímpar e, portanto, e então . Se é ímpar, então necessariamente para algum ímpar e, portanto,2a+2b+1=x2xx=2y+1x2=4y2+4y+1(y+1)y=y2+y=2a2+2b2=2b2(2ab+1)yy+1y=2b2zz2ab+1=(2b2z+1)z2b2+1a2b2yy+1=2b2zz2ab+1=z(2b2z1)2b21=2b3+1+(2b32). Desde , podemos concluir que . b4a2b3

Seja . De acordo com o lema, todas as palavras em têm a forma com . Além disso, como , para todos os , .L=L10100001L10ab110b11ab1(b1)322c+2c+1+1=(2c+1)2c310c210c1L

Se é regular, então também é , digamos que seu DFA mínimo tenha estados. Considere a palavra e marque a substring . O lema de bombeamento estendido mostra que, para cerca de , para todos os . No entanto, de acordo com nosso lema, para todos os , devemos ter e, portanto, , o que é falso para .LLp10p210p1L0p0<qp10p210p+q(t1)1Lt0tp2p+q(t1)31q(t1)t3

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.