명제 논리 주제에서는 명제 논리를 사용하여 진술을 표현하는 방법을 살펴보았습니다. 그러나 불행하게도 명제 논리에서는 참이거나 거짓인 사실들만 표현할 수 있습니다. PL은 복잡한 문장이나 자연어 문장을 표현하기에는 충분하지 않습니다. 명제 논리는 표현력이 매우 제한적입니다. PL 논리를 사용하여 표현할 수 없는 다음 문장을 생각해 보세요.
힙 정렬
위의 문장을 표현하기 위해서는 PL 로직만으로는 충분하지 않기 때문에 1차 로직과 같은 좀 더 강력한 로직이 필요했습니다.
1차 논리:
- 1차 논리는 인공 지능의 지식 표현의 또 다른 방법입니다. 이는 명제논리의 확장이다.
- FOL은 자연어 문장을 간결하게 표현할 수 있을 정도로 표현력이 충분합니다.
- 1차 논리는 다음과 같이 알려져 있습니다. 술어 논리 또는 1차 술어 논리 . 1차 논리는 객체에 대한 정보를 보다 쉬운 방법으로 전개하고 해당 객체 간의 관계를 표현할 수도 있는 강력한 언어입니다.
- 1차 논리(자연어와 같은)는 세상에 명제 논리와 같은 사실이 포함되어 있다고 가정할 뿐만 아니라 세상에 다음과 같은 사항도 가정합니다.
사물: A, B, 사람, 숫자, 색상, 전쟁, 이론, 사각형, 구덩이, 웜퍼스, ......
1차 논리의 구문:
FOL의 구문은 어떤 기호 집합이 1차 논리의 논리 표현인지 결정합니다. 1차 논리의 기본 구문 요소는 기호입니다. FOL에서는 약칭 표기법으로 진술을 작성합니다.
1차 논리의 기본 요소:
다음은 FOL 구문의 기본 요소입니다.
끊임없는 | 1, 2, A, 존, 뭄바이, 고양이,.... |
변수 | x, y, z, a, b,.... |
술어 | 형님, 아버지님, >,.... |
기능 | sqrt, LeftLegOf, .... |
접속사 | ∧, ∨, ¬, ⇒, ⇔ |
평등 | == |
수량자 | ∀, ∃ |
원자 문장:
- 원자 문장은 1차 논리의 가장 기본적인 문장이다. 이 문장은 술어 기호와 괄호, 일련의 용어로 구성됩니다.
- 원자 문장을 다음과 같이 표현할 수 있습니다. 술어(term1, term2, ......, 용어 n) .
예: 라비와 아제이는 형제입니다: => 형제(라비, 아제이).
Chinky는 고양이입니다: => 고양이(Chinky) .
복잡한 문장:
- 복잡한 문장은 연결사를 사용하여 원자 문장을 결합하여 만들어집니다.
1차 논리문은 두 부분으로 나눌 수 있습니다.
다음 진술을 고려하십시오: 'x는 정수입니다.' , 이는 두 부분으로 구성됩니다. 첫 번째 부분 x는 명령문의 주제이고 두 번째 부분은 '정수'이며 술어로 알려져 있습니다.
1차 논리의 수량자:
- 수량자는 수량화를 생성하는 언어 요소이며, 수량화는 담화의 세계에서 표본의 양을 지정합니다.
- 이는 논리식에서 변수의 범위와 범위를 결정하거나 식별할 수 있는 기호입니다. 수량자에는 두 가지 유형이 있습니다.
Universal Quantifier(모든 사람, 모든 사람, 모든 것)
범용 수량자:
만능 수량자는 해당 범위 내의 진술이 모든 것 또는 특정 사물의 모든 인스턴스에 대해 참임을 지정하는 논리적 표현의 상징입니다.
Universal 수량자는 반전된 A와 유사한 기호 ∀로 표시됩니다.
참고: 보편적 한정사에서는 '→'라는 의미를 사용합니다.
x가 변수인 경우 ∀x는 다음과 같이 읽습니다.
예:
남자는 모두 커피를 마신다.
자바가 비어있다
모든 x가 아래와 같이 UOD로 표시될 수 있도록 고양이를 참조하는 변수 x를 지정합니다.
∀x 남자(x) → 음료수(x, 커피).
다음과 같이 읽힐 것입니다: x가 커피를 마시는 남자인 곳에 x가 모두 있습니다.
존재 수량자:
존재 수량자는 한정자 유형으로, 해당 범위 내의 명령문이 적어도 하나의 인스턴스에 대해 참임을 표현합니다.
이는 반전된 E와 유사한 논리 연산자 ∃로 표시됩니다. 술어 변수와 함께 사용되면 존재 수량자라고 합니다.
참고: 존재 수량자에서는 항상 AND 또는 결합 기호(∧)를 사용합니다.
x가 변수인 경우 존재 수량자는 ∃x 또는 ∃(x)가 됩니다. 그리고 그것은 다음과 같이 읽혀질 것입니다:
예:
어떤 소년들은 똑똑합니다.
∃x: 소년(x) ∧ 지능(x)
그것은 다음과 같이 읽혀질 것입니다: x가 똑똑한 소년인 어떤 x가 있습니다.
자바 방법
기억해야 할 사항:
- 만능 수량자의 주요 접속사 ∀ 암시이다 → .
- 존재 수량자의 주요 접속사 ∃ 이고 ∧ .
수량자의 속성:
- 만능 수량자에서 ∀x∀y는 ∀y∀x와 유사합니다.
- 존재 수량자에서 ∃x∃y는 ∃y∃x와 유사합니다.
- ∃x∀y는 ∀y∃x와 유사하지 않습니다.
수량자를 사용하는 FOL의 몇 가지 예:
1. 모든 새는 날아다닌다.
이 질문에서 술어는 ' 파리(새) .'
그리고 날아다니는 새는 모두 있으므로 다음과 같이 표현하겠습니다.
∀x 새(x) →파리(x) .
2. 모든 사람은 자기 부모를 존경합니다.
이 질문에서 술어는 ' 존중(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. 단 한 명의 학생만이 수학에서 낙제했습니다.
이 질문에서 술어는 ' 실패(x, y),' 여기서 x= 학생, y= 과목 .
수학에서 낙제한 학생은 단 한 명뿐이므로 이에 대해 다음 표현을 사용합니다.
∃(x) [ 학생(x) → 실패함 (x, 수학) ∧∀ (y) [¬(x==y) ∧ 학생(y) → ¬실패함 (x, 수학)] .
자유변수와 결합변수:
수량자는 적절한 방식으로 나타나는 변수와 상호 작용합니다. 1차 논리에는 다음과 같은 두 가지 유형의 변수가 있습니다.
자유변수: 변수가 수량자의 범위 밖에서 발생하는 경우 공식에서 자유 변수라고 합니다.
예: ∀x ∃(y)[P (x, y, z)], 여기서 z는 자유 변수입니다.
바인딩된 변수: 변수가 수량자의 범위 내에서 발생하는 경우 수식의 바인딩된 변수라고 합니다.
예: ∀x [A (x) B( y)], 여기서 x와 y는 경계 변수입니다.