Erro menor em computabilidade, complexidade e idiomas?

7

No livro Computability, complexidade e Línguas (2 nd edição), Martin Davis escreve no capítulo 1 (Preliminares), Seção 2 (Funções):

Uma função parcial de um conjunto é simplesmente uma função cujo domínio é um subconjunto de . Um exemplo de função parcial em é dado por , onde o domínio de é o conjunto de quadrados perfeitos.SSN g(n)=ng

Até agora, tão simples. Mas ele segue em frente e escreve algumas linhas mais tarde, no final da seção:

Às vezes, nos referiremos à idéia de fechamento . Se é um conjunto e é uma função parcial em , então é fechada sob se a gama de é um subconjunto de . Por exemplo, está fechado em , mas não está fechado em ( onde é uma função total em ).SfSS ffSNf(n)=n2h(n)=nhN

Portanto, na primeira citação, em é um exemplo para uma função parcial , enquanto na segunda citação a mesma função é um exemplo para uma função total .nN

Ambos os exemplos parecem se contradizer. Ou estou faltando alguma coisa em relação aos fechamentos aqui?

Orgulho Nerd de Boa Noite
fonte
11
Este é pedagogicamente um mau exemplo de uma função parcial, porque o domínio é restrito apenas por definição arbitrária . Um exemplo melhor de uma função parcial é f (x) = 1 / x , que é indefinido quando x = 0.
Curinga
11
@Wildcard: Como isso é arbitrário? não é uma escolha estranha para a gama de ..Ng(n)
MSalters
@MSalters, nethertheless é uma escolha como arbitrária .
Good Night Nerd Pride
11
@GoodNightNerdPride: Se você usar essa lógica, não é um exemplo melhor, porque existem intervalos (por exemplo, linha real projetada estendida) nos quais isso também é definido. 1/x
MSalters 9/09/16
@Wildcard Não é arbitrário. definida como uma função de a , que é um objeto completamente natural. A função é indefinida em certos lugares porque, por exemplo, não existe um número natural tal que . É exatamente igual ao seu exemplo: é muito natural ter uma função de a , e a função que você escolheu é indefinida em alguns lugares porque, por exemplo, não há um número real tal que . gNNyy2=2RRyy0=1
David Richerby

Respostas:

12

Não há contradição aqui. O primeiro caso define a função parcial dada por Como o texto diz, "o domínio de é o conjunto de quadrados perfeitos".g:NN

g(n)={xif xN and x2=nundefinedif no such x exists.
g

O segundo caso define a função total dada por O domínio de é o conjunto de todos os números naturais.h:NR

h(n)=xif xR0 and x2=n.
h

Você diz que essas são as mesmas funções, mas não são. é indefinido, mas é definido (e igual a ).  associa uma raiz quadrada a todo número natural, mas  associa raízes quadradas a números naturais que são quadrados perfeitos.g(2)h(2)2hg

N  é fechado em  porque, sempre que  é definido, .  não está fechado em  porque, por exemplo, mas .ggg(n)NNh2Nh(2)N

David Richerby
fonte
+1, embora eu ache que o livro está errado quando usa " é uma função parcial em " para significar " é uma função parcial de para algum conjunto". fSfS
ruakh 9/09/16
@ruakh O que há de errado nisso?
David Richerby
Na minha experiência, a menos que você adicione explicitamente um modificador como "valor real" (para que o codomain seja claro), uma função em um conjunto é uma função desse conjunto para si mesma (analogamente à maneira como uma relação em um conjunto é uma relação desse conjunto para si mesmo). Mas talvez isso não seja um erro, e é apenas uma tradição terminológica diferente?
ruakh 9/09/16
6

No segundo exemplo, é definido para todos os números naturais ; quando não é um quadrado, é uma quantidade irracional e, em particular, não é um número natural.h(n)nnh(n)

Em outras palavras, o conjunto de números naturais não é fechado sob raízes quadradas: por exemplo, não é um número natural.2

Yuval Filmus
fonte
Desculpe, acho que não estava suficientemente claro. Consulte o segundo ao último parágrafo que adicionei à minha pergunta.
Good Night Nerd Pride
4
@GoodNightNerdPride Acho que Yuval está exatamente certo. No primeiro exemplo, a função raiz quadrada é uma função parcial de a ; no segundo exemplo, é uma função total de a . NNNR
David Richerby