logo

人工知能の一次論理

命題論理のトピックでは、命題論理を使用してステートメントを表現する方法について説明しました。しかし、残念なことに、命題論理では、真か偽の事実しか表現できません。 PL は、複雑な文や自然言語ステートメントを表現するには十分ではありません。命題論理の表現力は非常に限られています。次の文を考えてみましょう。これは PL ロジックでは表現できません。

ツリーマップ
    「一部の人間には知性がある」、または 「サチンはクリケットが好きです。」

上記のステートメントを表現するには、PL ロジックでは十分ではないため、1 次ロジックなどのより強力なロジックが必要でした。

一次ロジック:

  • 一次論理は、人工知能における知識表現のもう 1 つの方法です。これは命題論理の拡張です。
  • FOL は、自然言語ステートメントを簡潔な方法で表現するのに十分な表現力を持っています。
  • 一次論理とも呼ばれます。 述語ロジックまたは一次述語ロジック 。一次ロジックは、オブジェクトに関する情報をより簡単な方法で開発し、それらのオブジェクト間の関係を表現できる強力な言語です。
  • 一階論理 (自然言語と同様) は、世界に命題論理のような事実が含まれていることを前提とするだけでなく、世界に次のことも前提とします。
      オブジェクト:A、B、人々、数字、色、戦争、理論、四角形、穴、ウンパス、......
  • 関係: 次のような単項関係にすることができます。 赤、丸、隣接、 または、次のような n- 任意の関係: の妹、弟、色がある、間に入る関数:父親、親友、三回裏、終わり……。
  • 自然言語として、一次ロジックにも 2 つの主要な部分があります。
      構文
  • セマンティクス

    一次ロジックの構文:

    FOL の構文は、どのシンボルの集合が一次論理の論理式であるかを決定します。一階論理の基本的な構文要素はシンボルです。 FOL ではステートメントを短縮表記で書きます。

    一次ロジックの基本要素:

    FOL 構文の基本要素は次のとおりです。

    絶え間ない 1、2、A、ジョン、ムンバイ、猫、....
    変数 x、y、z、a、b、....
    述語 兄さん、父さん、>、
    関数 sqrt、LeftLegOf、....
    接続詞 ∧、∨、ε、⇒、⇔
    平等 ==
    数量詞 ∀、∃

    アトミックセンテンス:

    • アトミックセンテンスは、一次論理の最も基本的なセンテンスです。これらの文は、述語記号とその後に続く括弧で囲まれた一連の用語から形成されます。
    • アトミックな文は次のように表すことができます。 述語 (用語 1、用語 2、...、用語 n)

    例: Ravi と Ajay は兄弟です: => Brothers(Ravi, Ajay)。
    チンキーは猫です: => 猫 (チンキー)

    複雑な文章:

    • 複雑な文は、接続詞を使用して原子文を組み合わせることで作成されます。

    1 次論理ステートメントは 2 つの部分に分けることができます。

      主題:件名はステートメントの主要部分です。述語:述語は、ステートメント内の 2 つのアトムを結合する関係として定義できます。

    「x は整数です」というステートメントを考えてみましょう。 、これは 2 つの部分で構成されており、最初の部分 x はステートメントの主語であり、2 番目の部分「は整数である」は述語として知られています。

    人工知能の一次論理

    一次ロジックの量子:

    • 定量化子は定量化を生成する言語要素であり、定量化は言説の世界における標本の量を指定します。
    • これらは、論理式内の変数の範囲とスコープを決定または識別できるようにする記号です。量指定子には 2 つのタイプがあります。
        Universal Quantifier、(すべて、全員、すべてのもの)
    • 存在量指定子 (一部の場合、少なくとも 1 つ)。

    ユニバーサル数量子:

    全称量指定子は論理表現のシンボルであり、その範囲内のステートメントがすべて、または特定のもののすべてのインスタンスに対して真であることを指定します。

    オペレーティング システムの例

    Universal 数量指定子は、A を反転したような記号 ∀ で表されます。

    注: 全称数量詞では、暗黙の '→' を使用します。

    x が変数の場合、∀x は次のように読み取られます。

      すべてのxについて 各 x について x ごとに。

    例:

    男は皆コーヒーを飲みます。

    変数 x が猫を参照すると、すべての x は以下のように UOD で表現できます。

    人工知能の一次論理

    ∀x男(x)→飲み物(x、コーヒー)。

    これは次のように読み取られます: There are all x ここで、x はコーヒーを飲む男性です。

    存在量指定子:

    存在量指定子は、範囲内のステートメントが何かの少なくとも 1 つのインスタンスに対して true であることを表現する量指定子のタイプです。

    これは、論理演算子 ∃ で示され、E を反転したものに似ています。述語変数とともに使用される場合、存在量指定子と呼ばれます。

    注: 存在量指定子では、常に AND または結合記号 (∧) を使用します。

    x が変数の場合、存在量指定子は ∃x または ∃(x) になります。そして、それは次のように読み取られます:

    挿入Python
      「×」が存在します。 いくつかの「x」について。 少なくとも 1 つの「x」。

    例:

    賢い男の子もいます。

    人工知能の一次論理

    ∃x: 少年(x) ∧ 知的(x)

    これは次のように読み取られます。「いくつかの x があります。x は賢い少年です。」

    留意すべき点:

    • ユニバーサル数量詞の主接続詞 暗示です
    • 存在量指定子の主接続詞 そして

    量指定子のプロパティ:

    • 全称量指定子では、 ∀x∀y は ∀y∀x に似ています。
    • 存在量指定子では、∃x∃y は ∃y∃x に似ています。
    • ∃x∀y は ∀y∃x と似ていません。

    量指定子を使用した FOL の例:

    1. すべての鳥は空を飛びます。
    この質問の述語は ' ハエ(鳥) 。」
    そして飛ぶ鳥はすべているので次のように表されます。
    ∀x 鳥(x) → 飛ぶ(x)

    2. すべての人は自分の親を尊敬します。
    この質問では、述語は ' respect(x, y),' ここで、x=男性、y= 親
    すべての男性があるので ∀ を使用し、次のように表されます。
    ∀x man(x) → (x, 親) を尊重

    3. クリケットをする男の子がいます。
    この質問では、述語は ' プレイ(x, y) 、' ここで、x= 男の子、y= ゲームです。男の子もいるので利用します。 ∃ と表されます。 :
    ∃x ボーイズ(x) → プレイ(x、クリケット)

    4. すべての生徒が数学と科学の両方を好むわけではありません。
    この質問では、述語は ' like(x, y),' ここで、x= 学生、y= 被験者
    生徒が全員いないので、 否定付きの ∀ なので、 これを次のように表現します。
    з∀ (x) [学生(x) → like(x, 数学) ∧ like(x, 科学)]。

    5. 数学で失敗した生徒は 1 人だけでした。
    この質問では、述語は ' failed(x, y),' ここで、x= 学生、y= 被験者
    数学で不合格になった生徒は 1 人だけなので、これに対して次の表現を使用します。
    ∃(x) [ 学生(x) → 不合格 (x, 数学) ∧∀ (y) [ ̄(x==y) ∧ 学生(y) →  ̄不合格 (x, 数学)]

    itn への文字列

    自由変数とバインド変数:

    量指定子は、適切な方法で現れる変数と相互作用します。一次ロジックには次の 2 種類の変数があります。

    自由変数: 変数が量指定子の範囲外にある場合、その変数は数式内で自由変数であると言われます。

    例: ∀x ∃(y)[P (x, y, z)]、z は自由変数です。

    バインドされた変数: 変数が量指定子の範囲内に存在する場合、その変数は式内の束縛変数であると言われます。

    例: ∀x [A (x) B( y)]、ここで x と y はバインドされた変数です。