対称行列チェッカー
正方行列が対称かどうかをすぐに判定します。行が1 2 3、2 4 5、3 5 6の3×3行列は3組を比べて対称と分かり、対称でない行列は最初の不一致を示します。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
処理はブラウザ内で完結します。ファイルは送信されません。無料でご利用いただけます。
正方行列が自身の転置と一致するとき、その行列は対称です。主対角の上側の各成分が下側の対応成分を鏡写しにします。学生は二次形式、直交対角化、共分散行列を学ぶときに定義に出会います。技術者は対称性を前提とするCholesky分解やスペクトル計算に行列を渡す前に同じ確認が必要です。行列が条件を満たさない場合、応答は最初の違反ペアを両方の値付きで示しますので、転置全体を再計算せずにデータを修正できます。
対称性の意味とチェッカーの判定方法
n行n列の実正方行列Aを書いてください。その転置A転置は、行と列を入れ替えて得られる行列で、転置の位置j,iの成分がAの位置i,jの成分と等しくなります。主対角は常に自分自身と一致するため、実用アルゴリズムは厳密上三角だけを調べれば足ります。
すべての対が一致すれば行列は対称であり、最初の不一致が非対称を証明します。定義を理解すると後で報われます。実対称行列は実固有値を持ち、直交対角化が可能で、統計や力学の正定値モデルを支えます。
チェッカーは固有値も因子も計算しません。真偽の問いに答え、必要なら最初の反例ペアを指し示し、重いルーチンがスタックの下層で失敗する前に誤記を直せるようにします。
対称性の確認が役立つ場面
教室やチュータリング基盤は、学習者が対角化や二次形式の分類を手計算する前に宿題行列を確認できるよう対称行列チェッカーを使います。試験準備ジェネレータには、非正方入力を静かにfalseとせず失敗させる決定的オラクルが必要で、採点者は形状エラーと真の非対称を区別できます。検証失敗は残高を消費しません。
問いが純粋に構造的なときに本ツールを選び、転置、行列式、逆行列、階数、積についてはカタログの対応する行列機能を使ってください。
活用例
宿題とチュータリングの検証
提出されたn×n行列が対称かを学生と採点者が確認し、非対称なら最初の不一致ペアを明確に示します。ローカルCASの導入は不要です。
Choleskyや固有値ソルバ前の事前確認
共分散やヘッセが対称だと仮定するパイプラインが、まず本オラクルを呼び、深い分解が失敗する前に違反成分を表面化します。
LMSと試験の自動採点
非正方入力を偽の非対称ではなく無効として拒否する決定的判定で、対称性の設問を採点します。
よくある質問
浮動小数点成分はどう比較されますか?
小さな絶対または相対イプシロン内で一致すれば等しいとみなし、微小な丸め誤差でほぼ対称な行列を誤って非対称と判定しません。
行列が対称かどうかはどう確かめますか?
主対角より上の各成分を、対角をはさんだ反対側の成分と比べます。すべての組が一致すれば対称です。3×3行列なら比べる組は3つです。
正方行列でない場合はどうなりますか?
行数と列数が違う行列や行の長さがそろわない行列は、「対称でない」ではなく入力の誤りとして扱われます。形の問題と本当の非対称を区別できます。
最初の不一致からは何が分かりますか?
対角の上側の成分と下側の対応成分が食い違った最初の位置の組と、その両方の値が分かります。転置行列を手で計算し直さずに、そのセルを直せます。
何次の行列まで扱えますか?
32行×32列までの正方行列を扱えます。各成分は有限の数である必要があります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
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)リクエスト例
{
"matrix": [
[
1,
2,
3
],
[
2,
4,
5
],
[
3,
5,
6
]
]
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "algebra.matrix_symmetric_check",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
この対称行列チェッカーは実数のn×n配列を受け取り、上三角の各成分a_ijを対応するa_jiと比較し、真または偽の明確な判定を返します。非正方の形状、長さの異なる行、空入力、非数値セルは、静かなfalseではなくinvalid_inputで拒否されます。
対称性の意味とチェッカーの判定方法
定義により、AがA転置と等しいとき、かつそのときに限りAは対称であり、これはすべての添字対iとjについてa_ijがa_jiと等しいというスカラー恒等式の族と同値です。iがjより小さい各対についてa_ijとa_jiを比較します。このエンドポイントは教科書どおりの検査を安定した浮動小数点許容誤差で実装し、機械イプシロン程度まで対称な教室や工学入力が微小な丸め誤差で誤って失敗しないようにします。違反報告の添字はゼロ始まりで、matrixフィールドのJSON配列インデックスと一致します。
入力契約、応答フィールド、エラーの扱い
有限数のn×n格子をなす空でない入れ子配列で、nは最大32です。行列が対称なときはそのオブジェクトはnullではなく完全に省略されます。ゼロ近傍の浮動小数点のゴミは整形され、goldensとデモが安定する一方、通常の実数は倍精度を保ちます。例として、行が1 2と2 1の行列は対称です。UIで不一致セルを強調したい場合はご自身の格子表示と応答を組み合わせてください。必須フィールドmatrixを含むJSON本体を送信してください。別名a、A、input、mも使え、フォームがテキストのみ受け付ける場合は同じ入れ子構造のJSON文字列として送れます。各行はちょうどn個の成分を持つ必要があり、長さが異なる行や非正方形状はinvalid_inputと、期待される列数を示すメッセージで失敗します。欠落フィールド、空行列、NaNやInfinityのセル、非数値文字列も同様に拒否され、課金されません。成功時の本体にはn、整形済みmatrix、真偽値is_symmetric、検査した非対角ペア数pairs_checked、およびAがA転置と等しいことを再述する短いformula文字列が含まれます。is_symmetricがfalseのとき、iがjより小さい行優先順での最初の不一致についてrow、col、entry、transpose_entryを持つfirst_violationが現れます。左下成分を3に変えるとis_symmetricはfalseとなり、行0列1のfirst_violationがentry 2とtranspose_entry 3を示します。本エンドポイントは判定問題のみを解き、formulaフィールド以外の図や手順説明は出力しません。
対称行列APIが役立つ場面
データサイエンスや金融のノートブックは構成上共分散風の配列を作りつつ、対称性を前提とするCholeskyやスペクトル計算の前にゲートを欲し、小さなparse APIを呼べば構造検査だけのために計算機代数系一式を引き込む必要がありません。実装は純粋parseのティアAのため、成功した各呼び出しはモデルトークンも外向きネットワークもなく、公開された基本料金$0.002です。行列を通常の浮動小数点範囲に保ち、テストでis_symmetricとfirst_violationを固定すれば、LMSプラグイン、エッジワーカー、継続的インテグレーション検査向けに再現可能な判定が得られ、独自の数式処理基盤を立てる必要はありません。
技術的な質問
行列が対称かどうかはどう確認しますか?
matrixフィールドに正方の入れ子配列を送ってください。APIはすべてのi < jについてa_ijとa_jiを比較し、is_symmetricをtrueまたはfalseで返します。falseのときは両方の成分値付きのfirst_violationも返します。
first_violationとは何ですか?
行列が対称でないとき、first_violationはa_ijがa_jiと異なる最も早い対(row, col)(i < j)と、entryおよびtranspose_entryを示します。対称なときはフィールド全体が省略されます。
行列は正方である必要がありますか?
はい。対称性は正方行列にのみ定義されます。非正方や不揃いの配列はis_symmetric falseではなくinvalid_inputで失敗します。
対称行列チェッカーの料金はいくらですか?
ブラウザツールは無料です。APIリクエストは成功した呼び出しごとに前払いKIT残高から$0.002です。無効な入力は課金されません。