推移律とは?意味・仕組み・活用例をわかりやすく解説

AIの初心者
「推移律」って、AとB、BとCの関係からAとCの関係もわかる、という考え方ですよね?でも、どんな関係でも使えるわけではないんですか?

AI専門家
そうだね。たとえば「山田さんは田中さんの友達」「田中さんは佐藤さんの友達」だからといって、「山田さんは佐藤さんの友達」とは限らないよね。

AIの初心者
たしかに、友達の友達が自分の友達とは限らないですね。関係がつながって見えても、推移律が成り立つとは限らないんですね。

AI専門家
その通り。推移律は、is-a や part-of のように階層をたどれる関係で特に重要だよ。AIで知識を扱うときも、関係の種類を見分けることが大切なんだ。
推移律とは。
推移律とは、AとB、BとCに同じ種類の関係があるとき、AとCにもその関係を導ける性質です。たとえば「人間は哺乳類である」「哺乳類は動物である」なら、「人間は動物である」と考えられます。一方で、友達関係のように連鎖しない関係もあるため、関係の種類を確認することが重要です。
推移律とは?関係の連鎖から結論を導く考え方

推移律とは、関係が鎖のようにつながるときに、途中を省いた関係も成り立つ性質です。AとBにある関係があり、BとCにも同じ性質の関係がある場合、AとCにもその関係を導けることがあります。
身近な例では、数の大小関係がわかりやすいでしょう。「10は5より大きい」「5は2より大きい」なら、「10は2より大きい」と言えます。このとき、10と2を直接比べていなくても、途中の5を通じて結論を導いています。
ただし、推移律は「何かがつながっているなら何でも使える」という意味ではありません。重要なのは、連鎖している関係そのものが推移的な性質を持つかどうかです。分類、大小、順序、部分と全体のような関係では使いやすい一方、人間関係や好みのような関係では慎重に考える必要があります。
推移律を式で表すとどうなるか

推移律は、論理や数学では次のように表せます。
\(A R B \land B R C \Rightarrow A R C\)ここで \(R\) は「関係」を表します。たとえば \(R\) を「より大きい」と読むなら、「AはBより大きい、BはCより大きいなら、AはCより大きい」という意味になります。
この式で大切なのは、AとB、BとCのあいだにある関係が同じ \(R\) として扱えることです。途中で関係の意味が変わると、結論は正しくなくなる場合があります。たとえば「AはBが好き」「BはCの一部」のように関係が混ざっている場合、AとCの関係を自動的に決めることはできません。
推移律が成り立つ代表例

推移律が成り立つ関係には、いくつかの代表的なパターンがあります。初心者がまず押さえたいのは、数の大小、分類の包含、部分と全体、場所の順序です。
| 関係 | 例 | 導ける結論 |
|---|---|---|
| 大小関係 | 10 > 5、5 > 2 | 10 > 2 |
| 分類 | すずめは鳥、鳥は動物 | すずめは動物 |
| 部分と全体 | ピストンはエンジンの一部、エンジンは車の一部 | ピストンは車の一部 |
| 位置の順序 | 東京は大阪より東、大阪は福岡より東 | 東京は福岡より東 |
これらに共通しているのは、関係が階層や順序として一方向にたどれることです。関係の連鎖をたどっても意味が崩れにくいため、AからCへの結論を導きやすくなります。
包含関係と is-a:分類をたどる推移律
AIや知識表現でよく使われるのが、is-a と呼ばれる分類関係です。is-a は「AはBである」という関係を表します。たとえば「すずめは鳥である」「鳥は動物である」という2つの関係がある場合、「すずめは動物である」と導けます。
このような包含関係では、小さな分類が大きな分類の中に含まれます。すずめ、鳥、動物という順に見れば、より具体的な概念から、より一般的な概念へ階層を上がっていく構造です。
分類の推移律は、知識を整理するときの基本になります。AIに「すずめは鳥」と「鳥は動物」という知識を与えておけば、明示的に「すずめは動物」と書かれていなくても、推論によってその関係を補える場合があります。
部分と全体の関係:part-of をたどる推移律
part-of は「AはBの一部である」という関係です。たとえば「東京都は日本の一部」「日本はアジアの一部」という関係があるなら、「東京都はアジアの一部」と考えられます。
機械の構造でも同じです。「ピストンはエンジンの一部」「エンジンは自動車の一部」なら、「ピストンは自動車の一部」と整理できます。この考え方を使うと、複雑なシステムを部品、装置、全体という階層で理解しやすくなります。
ただし、part-of は文脈によって扱いが難しい場合もあります。たとえば「会員は団体の一部」「団体は地域社会の一部」という表現から、会員一人ひとりを地域社会の構成要素と見ることはできますが、どの範囲まで推論するかは目的によって変わります。AIで使う場合は、関係の定義をあいまいにしないことが大切です。
推移律が成り立たない関係

推移律を理解するうえで重要なのは、成り立つ例だけでなく、成り立たない例も見ることです。もっとも身近なのは友達関係です。「AさんはBさんの友達」「BさんはCさんの友達」でも、「AさんはCさんの友達」とは限りません。
隣同士の関係も注意が必要です。家が一列に並んでいる場合、「Aの隣にB、Bの隣にC」なら、AとCは直接の隣ではないことが多いでしょう。円形に並んでいる場合など、配置によって結論が変わることもあります。
好き嫌いの関係も推移的ではありません。「彩さんは和食が好き」「和食は体に良い」からといって、「彩さんは体に良いものが好き」とは言えません。これは、前半が好みの関係で、後半が性質の説明だからです。関係の種類が混ざると、推移律として扱えないと考えると判断しやすくなります。
| 関係 | なぜ注意が必要か | 誤った結論の例 |
|---|---|---|
| 友達 | 人間関係は相互の認識や距離感で変わる | 友達の友達は必ず自分の友達 |
| 隣同士 | 配置によって直接隣かどうかが変わる | Aの隣がB、Bの隣がCならAの隣はC |
| 好き嫌い | 好みと対象の性質は別の関係 | 好きなものの性質をすべて好きだとみなす |
AI・知識表現で推移律が重要な理由

人工知能では、物事の関係をデータとして表し、そこから新しい知識を推論する場面があります。知識グラフやオントロジーでは、概念同士をノードとして置き、is-a や part-of のような関係で結びます。
たとえば「猫は哺乳類」「哺乳類は動物」という知識があれば、AIは「猫は動物」と推論できます。このような推論は、検索、質問応答、分類、推薦、データベース設計などで役立ちます。
一方で、推移律を使ってはいけない関係にまで自動推論を広げると、誤った知識が作られます。「ユーザーAは商品Bを好き」「商品BはカテゴリCに属する」から、「ユーザーAはカテゴリCのすべてを好き」と決めつけると、推薦の精度を下げる可能性があります。AIで推移律を使うときは、関係の名前だけでなく、推論してよい意味を設計することが重要です。
推移律を使うときの注意点
推移律を正しく使うには、まず「同じ関係が連鎖しているか」を確認します。大小なら大小、分類なら分類、部分と全体なら部分と全体というように、AからB、BからCに同じ性質の関係があるかを見ます。
次に、その関係が本当に推移的かを考えます。見た目にはつながっていても、友達関係のように個別の事情が強いものは推移的ではありません。文脈によって意味が変わる言葉にも注意が必要です。
また、「推移律」と「推移率」は別の言葉です。推移率は割合や変化率を指す文脈で使われることが多く、論理や関係の連鎖を表す推移律とは意味が異なります。検索や学習で混同しないようにしましょう。
まとめ
推移律は、AとB、BとCの関係から、AとCの関係を導くための基本的な考え方です。数の大小、包含関係、部分と全体、位置の順序のように、関係が階層や順序として自然に連鎖する場合に力を発揮します。
一方で、友達関係、隣同士、好き嫌いのような関係では、同じように結論を導けるとは限りません。推移律を使う前に、関係の種類と意味が本当に連鎖してよいものかを確認する必要があります。
AIや知識表現では、推移律を正しく扱うことで、明示されていない関係を推論できます。しかし、関係を誤って設計すると、間違った知識も自動的に広がります。推移律は便利な道具ですが、使いどころを見極めることが理解の中心です。
更新履歴
| 日付 | 内容 |
|---|---|
| 2025年2月1日 | 初回公開 |
| 2026年6月3日 | 成立条件とAIでの扱いを補い、例の比較を追いやすく調整 |
