Verificador de matriz simétrica
Descubra na hora se uma matriz quadrada é simétrica: a de linhas 1 2 3, 2 4 5 e 3 5 6 passa depois de comparar 3 pares, e uma que falha mostra a primeira divergência. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Roda direto no seu navegador. Grátis, sem cadastro — seus dados não são enviados para lugar nenhum.
Uma matriz quadrada é simétrica quando coincide com a sua própria transposta: cada entrada acima da diagonal principal espelha a entrada abaixo. Os estudantes encontram a definição ao estudar formas quadráticas, diagonalização ortogonal e matrizes de covariância; os engenheiros precisam da mesma verificação antes de enviar uma matriz a um fatorador de Cholesky ou a uma rotina espectral que assume simetria. Quando a matriz falha, a resposta nomeia o primeiro par infrator com ambos os valores para que voce possa corrigir os dados sem recalcular a transposta completa.
O que a simetria significa e como o verificador decide
Escreva uma matriz quadrada real A com n linhas e n colunas. A sua transposta A transposta é a matriz obtida ao trocar linhas e colunas de modo que a entrada na posição j,i da transposta iguale a entrada na posição i,j de A. Se todos esses pares coincidem, a matriz é simétrica; o primeiro desvio prova que não é.
Compreender a definição recompensa depois: matrizes simétricas reais têm autovalores reais, admitem diagonalização ortogonal e sustentam modelos definidos positivos em estatística e mecânica. O verificador não calcula autovalores nem fatorações; só responde à pergunta booleana e, quando necessário, aponta o primeiro par contraexemplo para que voce corrija um erro tipográfico antes que uma rotina mais pesada falhe mais abaixo na pilha.
Quando vale a pena verificar a simetria
Salas de aula e plataformas de tutoria usam um verificador de matriz simétrica para que os alunos verifiquem matrizes de lição de casa antes de tentar diagonalização ou classificação de formas quadráticas à mão. Geradores de preparação para exames precisam de um oráculo determinístico que falhe em entrada não quadrada em vez de devolver false em silêncio, para que avaliadores distingan erro de forma de assimetria verdadeira. Validação falha não consome saldo.
Prefira esta ferramenta quando a pergunta for puramente estrutural; para transposta, determinante, inversa, posto ou produtos, use a capacidade de matriz correspondente no catálogo.
Casos de uso
Verificação de lições e tutoria
Estudantes e avaliadores confirmam se uma matriz n×n enviada é simétrica, com um par de primeiro desvio claro quando não é, sem instalar um CAS local.
Pré-checagem antes de Cholesky ou eigensolvers
Pipelines que assumem que uma covariância ou um Hessiano é simétrico chamam primeiro este oráculo e exibem as entradas infratoras antes que uma fatoração mais profunda falhe.
Correção automática em LMS e exames
Avalie questões de simetria com um veredito determinístico que rejeita entrada não quadrada como inválida em vez de como uma falsa assimetria.
Perguntas frequentes
Como verifico se uma matriz é simétrica?
Envie um array aninhado quadrado no campo matrix.
A matriz precisa ser quadrada?
Sim. A simetria é definida apenas para matrizes quadradas.
Como as entradas de ponto flutuante são comparadas?
As entradas são tratadas como iguais quando coincidem dentro de um épsilon absoluto ou relativo pequeno, de modo que o pó de arredondamento minúsculo não marque em falso como assimétrica uma matriz quase simétrica.
O que a primeira divergência me mostra?
Mostra o primeiro par de posições em que a entrada acima da diagonal difere do seu espelho abaixo, com os dois valores. Assim você corrige essa célula sem calcular a transposta inteira à mão.
Qual é o tamanho máximo de matriz aceito?
Até 32 linhas por 32 colunas, desde que cada entrada seja um número finito. Dentro desse limite, cada entrada acima da diagonal é comparada com a sua simétrica; numa matriz 3×3 são 3 comparações.
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/algebra/matrix-symmetric-check \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"matrix":[[1,2,3],[2,4,5],[3,5,6]]}'const res = await fetch("https://api.kit.forhosting.com/algebra/matrix-symmetric-check", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"matrix": [
[
1,
2,
3
],
[
2,
4,
5
],
[
3,
5,
6
]
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/algebra/matrix-symmetric-check",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"matrix": [
[
1,
2,
3
],
[
2,
4,
5
],
[
3,
5,
6
]
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/algebra/matrix-symmetric-check", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"matrix":[[1,2,3],[2,4,5],[3,5,6]]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"matrix":[[1,2,3],[2,4,5],[3,5,6]]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/algebra/matrix-symmetric-check", 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
{
"matrix": [
[
1,
2,
3
],
[
2,
4,
5
],
[
3,
5,
6
]
]
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "algebra.matrix_symmetric_check",
"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
Este verificador de matriz simétrica aceita um array real n por n, compara cada entrada do triângulo superior a_ij com a contraparte a_ji e devolve um veredito claro verdadeiro ou falso. Formas não quadradas, linhas irregulares, entradas vazias e células não numéricas são rejeitadas com invalid_input em vez de um falso silencioso.
O que a simetria significa e como o verificador decide
Por definição A é simétrica exatamente quando A é igual a A transposta, o que equivale à família de identidades escalares a_ij igual a a_ji para cada par de índices i e j. A diagonal principal sempre coincide consigo mesma, de modo que um algoritmo prático só precisa inspecionar o triângulo estritamente superior: para cada par com i menor que j, compare a_ij com a_ji. Este endpoint implementa esse teste de livro com uma tolerância estável de ponto flutuante para que o pó de arredondamento minúsculo não falhe em falso entradas de sala de aula ou de engenharia que são simétricas até o épsilon de máquina. Os índices do relatório de infração são de base zero para coincidir com a indexação de arrays JSON do campo matrix.
Contrato de entrada, campos de resposta e comportamento de erro
Campos ausentes, matrizes vazias, células NaN ou Infinity e strings não numéricas são igualmente rejeitados e não são cobrados. O pó de flutuantes quase nulos é limpo para que goldens e demos permaneçam estáveis, enquanto os reais ordinários mantêm precisão dupla. Envie um corpo JSON com o campo obrigatório matrix: um array aninhado não vazio de linhas que forme uma grade n por n de números finitos, com n no máximo trinta e dois. Voce também pode passar os aliases a, A, input ou m, e pode enviar a matriz como string JSON da mesma estrutura aninhada quando um formulário só aceita texto. Cada linha deve ter exatamente n entradas; comprimentos desiguais e formas não quadradas falham com invalid_input e uma mensagem que indica o número esperado de colunas. Em caso de sucesso o corpo inclui n, a matriz limpa, is_symmetric como booleano, pairs_checked como o número de pares fora da diagonal examinados, e uma string formula breve que reafirma A igual a A transposta. Quando is_symmetric é false, first_violation aparece com row, col, entry e transpose_entry para o desvio mais cedo em ordem linha-maior sobre i menor que j; quando a matriz é simétrica esse objeto é omitido por completo em vez de ser definido como null. Exemplo: a matriz com linhas um dois e dois um é simétrica; alterar a entrada inferior esquerda para três produz is_symmetric false com first_violation na linha zero coluna um mostrando entry dois contra transpose_entry três. Combine a resposta com a sua própria exibição da grade se desejar destacar as células desalinhadas em uma interface; este endpoint resolve apenas o problema de decisão e não emite gráficos nem prosa passo a passo além do campo formula.
Onde uma API de matriz simétrica agrega valor
Cadernos de ciência de dados e finanças frequentemente constroem arrays no estilo de covariância por construção e ainda assim querem um portão antes de rotinas de Cholesky ou espectrais que assumem simetria; chamar uma API parse pequena evita puxar um sistema completo de álgebra computacional para um único teste estrutural. Como a implementação é parse pura de nível A, cada chamada bem-sucedida custa o preço base publicado US$ 0,002 sem tokens de modelo e sem rede de saída. Mantenha as matrizes dentro de magnitudes ordinárias de ponto flutuante, fixe is_symmetric e first_violation nos testes, e voce obtém vereditos reproduzíveis para plugins LMS, workers de borda e checagens de integração contínua sem montar infraestrutura de matemática simbólica própria.
Perguntas técnicas
O que é first_violation?
Quando a matriz não é simétrica, first_violation nomeia o par mais cedo (row, col) com i < j onde a_ij difere de a_ji, mais entry e transpose_entry. O campo é omitido por completo quando a matriz é simétrica.
Quanto custa o verificador de matriz simétrica?
A ferramenta do navegador é gratuita. Pedidos API usam saldo pré-pago KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.