2장. 술어 해석(Predicate Calculus)(1)

기타/[인공지능]

2019. 3. 18. 01:15

[인공지능 2장. 술어 해석(Predicate Calculus)(1)]


- 지식 표현의 수단으로 논리가 응용됨 : 자연언어로 표기된 사실을 서술논리로 표현 가능


[술어 해석]

<용어>

- 명제(proposition) : 기본적, 원자적 문장. ex) 눈은 희다, 사람이 지구에 산다...

- 명제 논리의 기호(Symbols) : 

  1) 명제기호 : 명제를지칭(P,Q,R등)  

  2) 진리기호 : T/F 

  3) 논리 연산자(connectives) : ㄱ,=>,v 등의 기호

- 복합 명제 : 여러개의 단일 명제와 논리 연산다들로 구성. 

- 명제 논리에서의 문장 

  1) 모든 명제기호와 진리기호(T/F)는 문장

  2) P와 Q가 문장이면 ㄱP, P v Q , P => Q 등도 문장

- 명제 논리의 의미론 : 어떤 문장의 의미는 그 문장의 진위이다.(T/F)

  * 해석 : 각 명제 기호에 T/F값 할당하는 것

- 등가 규칙 : 드모르간등

- 진리표

- 술어계산, 서술논리


- 1차서술논리(FOPL : First Order Predicate Logic)

  : 명제 논리의 표현력 확대를 위해 개발

  : 잘 정의된 의미론과 견고하고 완전한 추론 규칙들로 인해 인공지능 분야에서 표현 언어로 활용됨.




[술어와 문장의 의미(The Syntax of PRedicates and Sentences)]


[서술 논리에서의 기호(Symbol)]

  : 더이상 단순화할 수 없는 구문적 요소  ex) George, fire3, tom_and_jerry,bill등

     +) 잘못된 기호 예시 : 3jack, "not allowed" 등


  * 기호 : 서술 논리로 표현하고자 하는 세계에 존재하는 개체(objects), 성질(properties), 관계(relations)등을 나타냄.

     ex) 정원에 장미꽃 여러개 존재 => 1차서술논리로 표현.. 기호정하기 : rose1, rose2, rose3(변수설정)




[기호의 종류]


1) 상수 기호(constant symbol) : 표현하고자 하는 세계에 존재하는 특정 개체, 성질. 소문자로 시작  ex) tree, red, rose, true, false


2) 변수 기호(variable symbol) : 개체나 성질의 일반적 클래스(=임의의 대상=변수)를 지칭할떄 사용. 대문자로 시작 ex) George, Color, Flower, BILL, X, Y등


3) 함수 기호(function symbol) : 정의역(domain) 내의 하나 이상의 개체로부터 치역내의 하나의 개체로 사상(mapping)하는 함수. 소문자로 시작

   ex) father_of(john), color_of(rose) 등


4) 술어(원자적 문장) 기호(predicate symbol) : 표현하고자 하는 세계의 개체 사이에 존재하는 관계, T/F로 사상됨개체의 성질을 나타냄. 소문자로 시작



+) 함수 기호와 술어기호의 구분

  : 둘다 함수의 모양을 띄고 있어서 헷갈릴수 있음.

  * 술어는 한개의 문장 형태를 띄고있음!  ex) friend(X,Y) = X와 Y는 친구 사이다.

    +) friend(father_of(X), father_of(Y)) = friend는 술어 기호이고, father_of는 함수 기호이다 = 술어 기호는 맨 앞에만들어옴!

  * 술어 기호의 인자는 상수, 변수, 함수기호만 들어올수 있다(술어안에 술어는 X) - 시험출제





[변수에 대한 한정사 ∀와 ∃]

- 전체 한정사() : 모든(All)의 의미

- 존재 한정사() : 어떤(Some)의 의미

ex) ∃Y friends(Y,peter) : peter와 친구사이인 어떤 Y.  /   ∀X likes(X, ice_cream) : 아이스크림을 좋아하는 모든 X.  #사용방법익히기





[서술 논리에서의 문장(Sentences)]  #이 조건 만족시, 1차적 서술논리 만족

: 모든 원자적 문장은 문장.

: 논리 연산자와 원자적 문장을 조합하여 새로운 문장을 만들수 있다.

ex) s가 문장이면, ㄱs도 문장

ex) s1, s2가 문장이면, s1 v s2, s1=>s2등도 문장 ( 문장 + 논리연산자 = 문장 )

ex) X가 변수, s가 문장이면, ∀Xs 도 문장 ( 한정사 + 변수 + 문장 = 문장 )




[문장을 1차서술논리로 표현하기] #변환하는법 익숙해지기!

1) 내일 비가 오지 않으면, Tom은 산에 갈것이다.

   : ㄱ날씨(비, 내일) => 가다(Tom, 산)

   : ㄱweather(rain, tomorrow) => go(tom, mountains)


2) Emma는 Doberman pinscher 이고 good dog이다.

   : goodDog(emma) ㅅ Isa(emma, doberman)


3) 모든 농구선수들은 키가 크다

   : ∀X (농구선수(X) => 크다(X))


4) Some people like anchovies

   : X (person(X)ㅅlike(X,anchovies))


5) Nobody likes taxes

   : ∃X likes(X,taxes)


- 1차 서술논리로 표현하기 위해선 제일먼저 술어 기호를 설정해야한다,

  ex) e(X) : X가 피고용인이다, p(X) : X가 사장이다, i(X) : X의 수입을 반환하는 함수, ge(U,V) : U가 V보다 크거나 같다.

       s(X) : X가 오늘 병가중이다, t(X) : X가 세금을 내는것을 의미.


6) 100만원 이상의 수입이 있는 피고용인은 세금을 낸다.

   : ∀X((e(X) ㅅ ge(i(X), 100만원)) => t(X)

   : 모든 X((X는 피고용인) 이고 (X의 수입이 100만원보다 크거나 같다)) => 이면 X는 세금을 낸다.



7) 어떤 피고용인은 오늘 병가중이다.

   : X(e(Y) => s(Y))

   : 어떤 X(피고용인 Y => Y는 오늘 병가중)


8) 어떤 피고용인의 수입도 사장보다 많지는 않다.

   : ∀X∀Y((e(X) ㅅ p(Y)) => ㄱge(i(X),i(Y)))

   : 모든X,Y ((피고용인X) 이고 (사장Y) =>이면 (X의 수익이 Y의 수익보다 작거나 같다)




- 가족관계의 표현


<전제> mother(X,Y) : X는 Y의 mother이다. father도 동일


9) ∀X∀Y father(X,Y) v mother(X,Y) => parent(X,Y)

   : 모든 X,Y (X는 Y의 father) 이거나(or) (X는 Y의 mother) =>d이면 (X는 Y의 parent)


10) ∀X∀Y∀Z parent(X,Y) ㅅ parent(X,Z) => sibling(Y,Z)

   : 모든X,Y,Z (X가 Y의 parent) 이고(and) (X가 Z의 parent) =>이면 (Y와 Z는 sibling(형제))




- 블럭잡기




1) 술어기호 설정 : on(X,Y) : X가 Y 위에 있다, ontable(X) : X가 table위에 있다, clear(X) : X위에는 아무것도 없다, hand_empty : 집게에 아무것도 없다

2) 상황 묘사

  : on(c,a), on(b,d), ontable(a), ontable(d), clear(b), clear(c), hand_empty.

3) ∀X∀Y ((hand_empty ㅅ clear(X) ㅅ clear(Y) ㅅ pick_up(X) ㅅ put_down(X,Y)) => stack(X,Y))

   : 모든 X,Y에 대해, 집게가 비어있고, X와 Y위에 아무것도 없고, X를 집고, Y위에 X를 내려놓으면, X가 Y위에 쌓인다.


* 의미를 파악하기위해선 해석을 해야한다. 해석하기위해선 각 술어기호들이 무슨 의미인지 물어봐야한다.





[정의역 D에서의 해석] #생략...



[정의역 D와 해석 I하에서 정규식 E의 진리값 결정 규칙]  #기본상식

- 진리기호 : true는 T, false는 F

- 원자적 문장은 T/F로 결정됨

- s1 => s2 :  s1이 T, s2가 F이면 F

- s1 = s2 : s1과 s2가 같은 진리값이면 T

- ∀Xs : X에 대한 모든 가능한 경우에 대해 T이면 T

- ∃Xs : s를 T로하는 X가 있으면 T

'기타 > [인공지능]' 카테고리의 다른 글

3장. PROLOG  (0) 2019.04.07
2장. 술어 해석(Predicate Calculus)(3)  (0) 2019.03.24
2장. 술어 해석(Predicate Calculus)(2)  (0) 2019.03.24
1장. 인공지능 개론  (0) 2019.03.15