É muito comum se ouvir, pelo menos no Brasil, "não tem nada", "não tem ninguém", "não sabe nada", etc., mas seria gramaticalmente correto dizer isso?
Porque, pela lógica, se não tem ninguém, então tem alguém, e se não tem nada, então tem algo, se considerar "ninguém" e "nada" um objeto/elemento ao invés de um conceito/ideia.
Na lógica de programação seria algo como:
ninguém = false;
if (!ninguém) alert("Há alguém");
Em inglês, é incorreto dizer "there isn't nothing", se o sentido da frase é negativo, sendo correto apenas "there isn't anything". Assim como em português temos o "não há coisa alguma".
Mas tem um correto? Ou é apenas questão de qual achar melhor?