一対一関数チェッカー
逆関数を作る前に、その関数が一対一かどうかを確かめられます。f(x) = 2x − 1は、どの出力もちょうど1つの入力から生じるため、水平線判定に合格します。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 種類
- Linear
- A
- 2
- B
- -1
- 式
- 2x-1
- ドメイン名
- all real numbers
- 定義域コード
- all_reals
- 水平線テスト
- pass
関数が一対一(単射)であるとは、異なる入力が決して同じ出力を生まないことです。その性質こそ、グラフ上の水平線テストが捉えるものです。どの水平線も曲線と高々一点で交わるなら、その関数は一対一であり、したがって値域上で逆関数を持ちます。学習者は逆関数の準備、二次関数の定義域の制限、あるいは指数関数や対数関数が追加の切り詰めなしにすでに逆を持つかを判断する場面でこのテストに出会います。教員やLMSの著者には、曖昧な図ではなく、短い理由付きで合格・不合格を述べる決定的な判定器が必要です。この一対一関数チェッカーは、線形・二次・絶対値・三次・指数・対数・逆数・べき乗・平方根といったよくある代数的な族、任意の係数、任意の定義域制限を受け取り、水平線の判定が通るか、写像が可逆か、表示用の式、平易な理由を返します。
水平線テストが決めること
水平線の判定基準は、単射の代数的定義の図形的な双子です。代数的には、定義域 D 上で f が単射であるとは、D 内の任意の組について f(x1) が f(x2) に等しいならば x1 が x2 に等しいことを意味します。図形的には、水平線 y が k に等しいものが D 内でグラフと二回以上交わってはいけません。
テストに合格すれば、値域の各出力はちょうど一つの入力から来るので、矢印を逆にして値域から D への明確な逆関数を得られます。失敗すれば、少なくとも一つの出力が二つの入力に共有され、逆を作ろうとすれば一度に二つの値を返すことになります。典型的な失敗は、すべての実数上の x の二乗のような偶数次のべき、全直線上の絶対値の V 字、頂点の両側に開く放物線です。
典型的な合格は、定数でない線形写像、妥当な底を持つ指数の増減、本来の半直線上の対数、奇数次のべき、およびずらし以上の x における平方根の枝です。三次は微妙です。 例えば x の三乗のように全直線で狭義単調なものもあれば、局所最大と最小を経てうねり、定義域を切るまで失敗するものもあります。
このチェッカーは、すべての実数・片側の半直線・放物線と絶対値の頂点半直線といった明示的な定義域オプション付きで族ごとの規則を符号化しているので、ピクセルや数式処理の核に頼らず、教科書がスケッチ後に下すのと同じ結論を述べられます。
一対一チェッカーが役立つ場面
代数の授業では、y が 2x たす 1 なら可逆だがすべての実数上の x の二乗はそうではないことを確認し、すぐに x が 0 以上の x の二乗を再検査して判定が反転する様子を見るために一対一関数チェッカーを使います。定義域制限を逆関数の形式化の前に身につける対話的な方法です。
試験ジェネレータと LMS プラグインには、二つの折り返しを持つ三次に合格を捏造したり純粋な指数に不合格を付けたりしない決定的なオラクルが必要です。「一対一関数チェッカー」や「水平線テスト計算機」といった語句で順位を争うコンテンツサイトは、無料枠が自動化契約とバイト単位で一致するライブツールの恩恵を受けます。
工学ノートでは、記号的な逆を呼ぶ前や可逆な校正曲線を当てる前に、素早い単射ゲートだけが必要なことがあります。
活用例
授業での逆関数の準備
学習者に族と定義域を送らせ、水平線テストが通るかを確認してから、初めて逆の式を書かせます。
LMS・試験の自動採点
全直線の放物線と頂点半直線の制限を区別する決定的オラクルで、単射の設問を採点します。
よくある質問
一対一関数チェッカーは何を調べますか?
宣言された代数的な族と定義域に水平線の判定基準を適用し、関数が単射(一対一)であり値域上で可逆かどうかを短い理由付きで返します。
xの2乗は一対一ですか?
実数全体では一対一ではありません。xと−xが同じ値になり、水平線が放物線と2回交わるためです。頂点の片側に定義域を制限すれば判定に合格します。
3次関数はすべて一対一ですか?
いいえ。xの3乗のように常に増える3次関数は合格しますが、極大と極小をもつ3次関数は同じ値をくり返すため、定義域を区切るまで不合格です。
どんな種類の関数を調べられますか?
一次、二次、絶対値、三次、指数、対数、分数、累乗、平方根の各関数です。係数を指定でき、放物線やV字形では頂点の片側に定義域を限定できます。
一対一の関数はすべて逆関数をもちますか?
はい、値域への逆関数をもちます。水平線判定に合格すれば各出力はちょうど1つの入力から生じるので、対応を逆向きにたどれます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/algebra/one-to-one-function-check \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"kind":"linear"}'const res = await fetch("https://api.kit.forhosting.com/algebra/one-to-one-function-check", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"kind": "linear"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/algebra/one-to-one-function-check",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"kind": "linear"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/algebra/one-to-one-function-check", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"kind":"linear"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"kind":"linear"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/algebra/one-to-one-function-check", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"kind": "linear"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "algebra.one_to_one_function_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 | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
入力契約、関数族、応答の形
任意の係数 a、b、c、d、n、base、h、k は関連する代数ツールと同じ命名の精神に従います。定義域の既定は族本来の集合です。linear・quadratic・absolute・cubic・exponential はすべての実数、対数・根・非整数べきは正または非負の半直線、逆数は極を除く直線です。族が潰れる零の主係数、正でないか 1 に等しい指数・対数の底、頂点のない族への頂点専用コード、実の主枝を外れる log や根の要求などです。必須フィールド kind を含む JSON 本体を POST してください。値は linear、quadratic、absolute、cubic、exponential、logarithmic、reciprocal、power、square_root のいずれかです。linear は ax たす b、quadratic は a かける x の二乗たす b x たす c、absolute は a x たす b の絶対値に外側の定数 c、cubic は a x の三乗たす b x の二乗たす c x たす d、exponential は a かける base の x 乗たす k、logarithmic は a かける底 base の log(引数は x ひく h)たす k、reciprocal は a を(x ひく h)で割ったものたす k、power は a かける x の n 乗たす k、square_root は a かける(x ひく h)の主平方根たす k です。ただし放物線や V 字を意図的に制限して逆を存在させたいときは nonnegative、positive、nonpositive、negative、right_of_vertex、left_of_vertex を渡せます。無効な組合せは invalid_input になります。成功時は kind、コンパクトな式文字列、人が読める定義域ラベル、domain_code、実効係数、is_one_to_one、is_invertible(実関数の値域上の単射フラグと同じ)、pass または fail の horizontal_line_test、UI 向けの理由段落、method が horizontal_line_criterion であることを返します。失敗の証拠が示しやすい場合、任意の witness_x1 と witness_x2 が同じ水平レベルを共有する相異なる入力を指します。無料のブラウザ経路と前払い API は同じ純粋モジュールを共有するので、教室デモと採点スクリプトは同一のペイロードで同一の真偽値を見ます。
一対一チェッカーが役立つ場面
教科書族のためだけに本格的な数式処理を引き込む代わりに、小さな parse エンドポイントで足ります。実装は純粋 parse の tier A なので、成功した呼び出しは毎回公開の基本料金 $0.002 のみで、モデルのトークンも外向きネットワークもなく、検証失敗は残高を消費しません。リクエストを小さく保ち、真偽フラグと理由のキーワードをテストに固定すれば、自前の描画基盤なしに宿題・カリキュラムサイト・エッジワーカー向けの再現可能な水平線判定が得られます。
連携の活用例
カリキュラムとコンテンツのウィジェット
水平線テストや可逆関数の検索意図に合わせた授業ページに、無料の一対一関数チェッカーを埋め込みます。
技術的な質問
どの関数の種類が使えますか?
利用可能な族は linear、quadratic、absolute、cubic、exponential、logarithmic、reciprocal、power、square_root で、任意の係数 a、b、c、d、n、base、h、k と任意の定義域制限に対応します。
二次関数はいつ水平線テストに合格しますか?
a≠0 のときすべての実数上では決して合格しません。単一の枝—right_of_vertex、left_of_vertex、または頂点を定義域の内部に置かない片側の半直線—では合格します。
一対一なら常に可逆と報告されますか?
この契約でははい。is_invertible は is_one_to_one を映し、値域から宣言された定義域への逆が存在することを意味します。値域外の終域の選び方は呼び出し側に任せます。
一対一関数チェッカーの料金は?
ブラウザのツールは無料です。API 要求は成功した呼び出しごとに KIT の前払い残高から $0.002 を使います。無効な入力は課金されません。