リウヴィル関数計算機
λ(12) は −1 です。12は 2 × 2 × 3 で、重複を含めると素因数が3個あるからです。正の整数を入力すると、個数が偶数なら1、奇数なら −1 を返し、確認できるよう個数も表示します。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- N
- 12
- リウヴィル関数
- -1
- 重複度つきの素因数
- 3
リウヴィル関数計算機は、対応範囲の正の整数について、重複を含めた素因数の個数を数えて λ(n) を求めます。同じ素数も現れるたびに数えます。たとえば 12 = 2 × 2 × 3 には因数が3個あるため、個数は奇数で結果は −1 です。個数も同時に表示するので、符号をご確認いただけます。計算は決定的でネットワークを使用せず、1には素因数がないため λ(1) = 1 とします。
リウヴィル関数が表すもの
リウヴィル関数は、各正の整数に簡潔な算術的符号を割り当てます。nを素数の積で表し、同じ素数の繰り返しも残して数えた因数の個数をΩ(n)とします。このとき λ(n) = (−1)<sup>Ω(n)</sup> です。
素因数の個数が偶数なら1、奇数なら−1になります。ここでは重複度が重要です。18 = 2 × 3 × 3 なので、Ω(18)は2ではなく3であり、λ(18)は−1です。
一方、12 × 3 = 36 = 2 × 2 × 3 × 3 には因数が4個あり、値は1です。Ω(n)と、通常ω(n)で表す異なる素数の個数を混同しません。後者を使うと、素数が繰り返される場合に誤答となることがあります。
λ(n) の計算方法
1以上の整数nをご入力ください。計算機は最初に2で割れる間は繰り返し割り、その後、奇数の候補を小さい順に試します。割り切れるたびに重複度の個数を1増やし、同じ素数による繰り返しの除算もすべて数えます。
残った商に、その平方根以下の約数候補がなくなった時点で、商が1より大きければ最後の素因数としてもう1個加えます。分数、数値でない値、公開された上限を超える整数も、丸めたり暗黙に近似したりせず拒否します。対応範囲では正確な整数演算を使い、乱数、時刻、外部サービス、保存状態には依存しません。
そのため、同じ有効な入力からは必ず同じ結果が得られます。
数論での結果の活用方法
リウヴィル値は、素因数の総重複度の偶奇が重要な場面で役立ちます。Ω(ab) = Ω(a) + Ω(b) なので、この関数は完全乗法的であり、aとbが素因数を共有していても λ(ab) = λ(a)λ(b) が成り立ちます。この性質は、手計算の確認、算術関数表の作成、恒等式の検証、ディリクレ級数や総和関数の例題作成に便利です。
数列の実験では、正の整数ごとにこの機能を呼び出し、返された符号を累積して部分和を調べられます。教材では、符号の横に因数個数を示すことで、同じ素数の繰り返しが重要な理由を説明できます。1回の要求で評価するnは1個です。
範囲が必要な場合は明示的に反復し、各入力と結果を対応させてください。
活用例
素因数分解の問題を確認
素因数の総重複度が偶数か奇数かを確認し、表示された個数とご自身の計算を比較できます。
算術関数表を作成
連続する正の整数を評価し、各行に決定的な λ(n) の値を保存できます。
乗法的恒等式を検証
完全乗法的関数の学習や指導で、λ(ab) と λ(a)λ(b) を比較できます。
よくある質問
リウヴィル関数とは何ですか?
λ(n) = (−1) の Ω(n) 乗です。Ω(n) は重複を含めて素因数を数えます。
同じ素因数は複数回数えますか?
はい。 12 = 2 × 2 × 3 では2を2回とも数えるため、Ω(12)は3です。
1未満の値が拒否されるのはなぜですか?
この機能は標準的な正の整数の範囲だけを受け付けるため、nは1以上でなければなりません。
リウヴィル関数は乗法的ですか?
はい、完全乗法的です。素因数の個数は足し算になるので、共通の素因数があっても積の値は値の積になります。例えば12は −1、3も −1 なので、36は1です。
λ(1) はいくつですか?
1です。1には素因数がないため個数は0で、0は偶数だからです。この場合、結果は1、個数は0と表示されます。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/numth/liouville-function \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":12}'const res = await fetch("https://api.kit.forhosting.com/numth/liouville-function", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 12
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/liouville-function",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 12
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/liouville-function", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":12}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":12}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/liouville-function", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"n": 12
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.liouville_function",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
min_n | 1 |
max_n | 1000000000000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
リウヴィル関数が表すもの
n = 1では素因数分解が空で、Ω(1)は0、結果は1です。この計算機は符号と数えた重複度の両方を返すため、結果を確認できます。
λ(n) の計算方法
出力の prime_factors_with_multiplicity はΩ(n)で、liouville はその個数が偶数なら1、奇数なら−1です。この機能は正の整数だけを対象とするため、1未満の入力は拒否します。
数論での結果の活用方法
自動処理が符号を直接利用し、根拠となる個数も保存できるよう、結果は文章ではなく小さく安定したJSONオブジェクトです。APIは1回 $0.002 で、ブラウザー版も同じ純粋な計算を使います。
技術的な質問
λ(1) はいくつですか?
1です。整数1の素因数は0個で、0は偶数です。
APIリクエストの料金はいくらですか?
APIリクエストは1回 $0.002 です。同じ決定的計算をブラウザーでも実行できます。