Equação de Pell negativa: solvabilidade e solução mínima
Descubra se x² − Dy² = −1 tem soluções inteiras e obtenha a menor: quando D vale 13, a resposta é x 18 e y 5, encontrada com uma fração contínua de período ímpar 5. Mesmo soluções muito grandes saem exatas. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- D
- 13
- D
- 13
- Comprimento do período
- 5
- X
- 18
- Y
- 5
O solucionador da equação de Pell negativa determina se x ao quadrado menos D vezes y ao quadrado igual a menos um possui solução inteira para um D positivo e não quadrado. Quando há solução, ele retorna exatamente os menores valores positivos de x e y, sem arredondamento de ponto flutuante. Também informa o comprimento do período da fração contínua que decide a solvabilidade.
O que a equação de Pell negativa procura
A equação x² − Dy² = −1 parece uma pequena variação da equação de Pell comum, mas a mudança de sinal torna a existência de soluções condicional. D deve ser um inteiro positivo que não seja quadrado perfeito, e x e y são procurados entre os inteiros positivos. Outros valores não quadrados não possuem solução.
Este solucionador diferencia esses casos e, quando existe uma solução, identifica a mínima, isto é, aquela com o menor x positivo. Como soluções de Pell podem ultrapassar muito a faixa numérica segura do JavaScript e de diversos bancos de dados, x, y e D são devolvidos como strings decimais. Elas representam inteiros exatos, não aproximações.
O indicador solvable apresenta a decisão direta, e os campos da solução são omitidos quando ele é falso, evitando valores nulos enganosos ou marcadores inventados. Um D quadrado perfeito é rejeitado por estar fora do domínio definido para esta ferramenta.
Como as frações contínuas decidem a solvabilidade
O cálculo usa a fração contínua simples e periódica da raiz quadrada de D. Para todo inteiro positivo não quadrado, essa expansão tem um bloco de repetição finito. Um teorema clássico fornece um teste preciso: a equação de Pell negativa é solucionável exatamente quando o bloco periódico tem comprimento ímpar.
O solucionador gera a expansão somente com recorrências inteiras e nunca estima a raiz quadrada com aritmética de ponto flutuante. Em cada convergente, acompanha numerador e denominador como inteiros de precisão arbitrária e verifica diretamente a equação. Se uma convergente produzir −1, seu numerador e denominador serão os valores positivos mínimos de x e y.
Se o período se fechar sem essa convergente, o comprimento será par e a resposta informará que não existe solução inteira. O método oferece, em uma única passagem, uma justificativa verificável e a solução solicitada. Ele é determinístico: entradas idênticas sempre percorrem a mesma recorrência e geram a mesma saída, sem rede, aleatoriedade, relógio ou formatação numérica regional.
Como interpretar e usar o resultado
Informe D como inteiro no campo d. Se o valor puder ultrapassar a faixa inteira segura da linguagem utilizada, envie uma string decimal exata sem sinal; o núcleo computacional aceita essa representação sem perder dígitos. Você pode verificar o resultado com uma biblioteca de inteiros grandes, testando x*x − D*y*y = −1.
Um caso insolúvel mantém D e o comprimento do período, mas omite x e y, pois nenhum valor atenderia ao contrato. Essa distinção ajuda em pesquisas, demonstrações didáticas e pipelines de teoria dos números: consulte solvable antes de ler os campos da solução. Frações, inteiros negativos, entrada ausente e quadrados perfeitos produzem um erro de entrada tipado, e não uma resposta matemática.
Casos de uso
Verificar uma conjectura de teoria dos números
Teste valores não quadrados selecionados de D e registre as soluções mínimas exatas para análise simbólica posterior.
Preparar exemplos resolvidos
Gere casos solucionáveis e insolúveis reproduzíveis para aulas sobre irracionais quadráticos e frações contínuas.
Validar outra implementação
Compare um solucionador de Pell próprio com resultados exatos determinísticos, incluindo períodos e respostas decimais muito grandes.
Perguntas frequentes
Quando a equação de Pell negativa é solucionável?
Ela é solucionável exatamente quando a fração contínua periódica da raiz quadrada de D tem período de comprimento ímpar.
O que significa solução mínima?
É a solução inteira positiva com o menor x; o valor positivo correspondente de y é determinado junto com ele.
solvable falso significa que a busca terminou cedo?
Não. Significa que o período da fração contínua se fechou com comprimento par, o que prova que não existe solução inteira.
Qual é a menor solução quando D vale 13?
É x 18 e y 5. A fração contínua da raiz quadrada de 13 se repete com período 5, um comprimento ímpar, então existe solução, e 18 e 5 formam o menor par positivo.
Qual a diferença para a equação de Pell comum?
Só muda o sinal, de +1 para −1, mas isso faz a solução deixar de ser garantida. Alguns valores não quadrados de D têm solução e outros não têm nenhuma, então primeiro você fica sabendo em qual caso está.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/numth/negative-pell \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"d":13}'const res = await fetch("https://api.kit.forhosting.com/numth/negative-pell", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"d": 13
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/negative-pell",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"d": 13
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/negative-pell", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"d":13}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"d":13}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/negative-pell", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"d": 13
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.negative_pell",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Respostas grandes são fornecidas como strings decimais, preservando todos os dígitos em JSON, navegadores, terminais e aplicativos.
O que a equação de Pell negativa procura
Alguns valores funcionam imediatamente: para D = 2, o par x = 1 e y = 1 satisfaz a equação.
Como interpretar e usar o resultado
Um resultado bem-sucedido inclui solvable como verdadeiro, period_length para o período da fração contínua e as strings decimais exatas x e y. O navegador e a API compartilham o mesmo solucionador puro, portanto usam as mesmas regras de validação, recorrência, minimalidade e saída exata. O uso da API custa US$ 0,002 por solicitação.
Perguntas técnicas
Por que x e y são devolvidos como strings?
Soluções de Pell podem superar a precisão inteira comum de JSON e JavaScript. Strings decimais preservam exatamente todos os dígitos.
O que acontece quando D é um quadrado perfeito?
A solicitação falha com um erro invalid_input, pois esta capacidade é definida somente para valores não quadrados de D.
Quanto custa uma solicitação de API?
Cada solicitação de API custa US$ 0,002; o mesmo solucionador determinístico também pode ser executado gratuitamente no navegador.