지식 표현과 추론

Yeons·2022년 10월 4일

스터디

목록 보기
2/8

논리

4가지 단어로 한 번 자신만의 문장을 만들어보세요

지식

추론

증명

기호

"저는 지식을 정의하기 위해선 추론을 하고, 이를 증명하며, 방식은 기호를 사용한다고 생각을 합니다."

이렇게요. 간단해도 됩니다.
지식 표현은 간단하지만 말이 많아서, 효과적으로 알기 위해선 이 방법 밖에 없어요.

논리는 말로 표현된 문장들에 대한 타당한 추론을 위해, 기호를 사용하여 문장들을 표현하고 기호의 조작을 통해 문장들의 참 또는 거짓을 판정하는 분야이다.

제 언어로 해석해보자면, 논리는 타당한 생각을 도출하기 위해, 기호(문자) 등을 사용하는 거 같네요.

논리는 일종의 정형화된 언어로 볼 수 있으며, 지식을 표현하고 이렇게 표현된 지식에 대해 추론하는 데 사용할 수 있다.

그리고 논리는 지식을 사용하는군요!

지식을 중심으로 정의한 단어들이 많아요. 제가 지금 책에서 보는 '프레임', '슬롯', '패싯' 등만 해도, 머리가 복잡해지네요.

역시 개념을 이해할 때는 인터넷에 쉬운 설명을 보고 다시 책을 보는 것이 나아요. 위키백과에 잘 나와있군요.^-^

우와~ 개념~개념~개념~개념

프레임(frame)은 규칙과 함께 지식 기반 시스템의 지식 표현방법으로 많이 쓰이는 방법 중 하나이다. 프레임 시스템에서는 지식을 서로 관계있는 것끼리 분류하고, 이들을 상하 관계에 따라 구성함으로써, 인간이 사고하는 방식과 유사한 방법으로 지식을 처리한다.

하나의 프레임은 슬롯과 그 슬롯에 저장된 값의 집합으로 나타낸다. 여기서 슬롯은 하나의 속성(attribute)으로 볼 수 있다. 하나의 프레임은 그 자체로는 그다지 큰 효용가치가 없다. 일반적으로 여러 개의 프레임이 서로 상대방 프레임의 슬롯에 연결되어 있는 형태로 프레임 시스템을 구성하게 된다.

한 프레임은 유사한 성격을 갖는 객체들의 집합을 표현 하기도 하고, 또는 그러한 집합에 소속된 개개의 객체(object)를 표현 하기도 한다. 전자의 경우를 클래스 프레임, 후자의 경우를 사례(인스턴스) 프레임이라고 한다.

오! 위키백과를 통해 저희는 프레임이 지식을 표현하는 방법, 슬롯은 속성, 프레임의 종류와 특징을 바로 알 수 있었어요.

액자처럼 지식을 묶어서 표현한다는 느낌..?

명제 논리

명제란 참, 거짓을 분명하게 판정할 수 있는 문장을 일컫는다.

EX)
아리스토텔레스는 플라톤의 제자이다. (명제 : 문장이 참이다.)
1+1 = 3.(명제 : 참이 아니지만, 문장이 분명함)
일어나서 아침 먹자(명제 아님 : 참과 거짓을 말할 수 없음.)

명제 논리 구성

  • 명제 논리의 기호(Symbols) :
    1) 명제기호 : 명제를지칭(P,Q,R등)
    2) 진리기호 : T/F
    3) 논리 연산자(connectives) : ㄱ(부정),⇒,∨(논리합),∧(논리곱), 등의 기호
  • 명제 논리에서의 문장
    1) 모든 명제기호와 진리기호(T/F)는 문장
    2) P와 Q가 문장이면 ㄱP, P v Q , P => Q 등도 문장

  • 명제 논리의 구문
    1) 리터럴 : 명제 기호와 명제 기호의 부정
    2) 절 : 논리곱(합)으로만
    3) CNF : 논리곱으로 연결된 논리합 절
    4) DNF : 논리합으로 연결된 논리곱 절
    5) 정형식 : 논리에서 문법에 맞는 논리식

"아.. 점점 외울 게 많아져서 마음에 안든다. 흑흑 그래도 해야지"

다시 말하자면, 명제 논리는 명제 간의 관계를 정의하기 위해서입니다.

그래서 복잡하지만 간단한 기호를 쓰는 것이에요.

이렇게 진리를 나타낼 수 있답니다.

  • 명제기호의 외연 : 명제기호의 의미, p의 외연은 토마토는 빨갛다 이다
    모델 : 논리식 명제기호에 T,F 할당 하는것 -> 이로써 해석가능 논리 기호가 n개 있으면 모델은 2^n개 존재한다
    항진식 : 모든 모델에 대해 항상 참인 논리식 (p와 ㄱp의 논리합)
    항위식 : 모든 모델에 대해 항상 거짓인 논리식 (p와 ㄱp의 논리곱)
    충분 가능한 논리식 : 참으로 만들수 있는 모델이 1개라도 있는 논리식
    충분 불가능한 논리식 : 항위식
    동치관계 : 어떤 모델에 대해서도 같은값을 같는 두 논리식
    논리적 귀결 Δ : 정형식의 집합
    ω : 정형식
Δ에 있는 모든 정형식을 참으로 만드는 모델이 반드시 ω를 참으로 만든다. (Δ참 -> ω참도 이다)
Δ는 ω를 논리적으로 귀결한다.
ω는 Δ를 논리적으로 따른다 or 논리적 결론이다.

Δㅑω

- 추론

귀납적 추론 : 관측된 여러 사실로 부터 일반화하여 패턴 또는 명제 도출
연역적 추론 : 참인 사실,명제로 부터 새로운 사실 명제 도출 (논리에서 추론)
p(전제)->(함의) q(결론)
추론규칙 : 참인 논리식 들이 논리적으로 귀결 하는 새로운 논리식 만들어내는 규칙

긍정논법 : Δ = {p->q , p} 로부터 ω = q 추론 (p->q, pㅏq) (추론규칙에 의해 만들어질땐 ㅏ)
부정논법 : Δ = {p->q , ㄱp} 로부터 ω = ㄱp 추론 (p->q, ㄱqㅏㄱp)
삼단논법 : Δ = {p->q , q->r} 로부터 ω = p->r 추론 (p->q, (q->r)ㅏ(p->r))

논리 융합 : 두 논리합절에 같은 기호의 긍정,부정의 리터럴을 서로 나눠 가질때 이를 없애고 하나의 논리합절로 만들수 있다.
이는 긍정,부정,삼단논법 규칙을 모두 포함 하므로 따라서 추론규칙은 논리융합만 써도된다.

추론규칙 정당성 : Δㅏω(추론규칙에 의한) -> Δㅑω 를 의미, 즉 추론규칙이 만들어낸것은 항상 참
추론규칙 완전성 : 논리적으로 귀결하는것은 추론규칙이 찾아낼 수 있다.

증명
공리 : 추론할때 참으로 주어지는 논리식
정리 : 추론하여 얻은 논리식
증명 : 공리들을 이용하여 정리가 참임을 보임

1. 구성적 증명 : 공리들에 추론 규칙들을 적용하여 증명을 만들어 보이는 증명
2. 논리융합 반박 : 정리를 부정하여 이를 이용해 부정한 정리와 공리를 논리 융합 false임을 보이면서 정리가 참임을 보인다.

술어논리(다음 시간에 정리해보는 것으로.)

술어논리에서 술어는 대상의 속성이나 대상 간의 관계를 나타내는 것으로 참 또는 거짓 값을 갖는다.

존재 한정사 ∃ 와 전칭 한정사 ∀ 사용

변수의 범위를 고려한 지식을 표현

변수,함수에 따라 "참" "거짓"을 결정한다. 술어가 서술어에 해당.
한정사 : 변수 대상의 범위를 표현

함수 : 술어의 인자로 사용한다. 참거짓값이 아니라 일반적인 값을 나타낸다.
: 함수의 인자가 될수 있는것, 개체상수(Adam), 변수(x), 함수(f(x))
일차 술어 논리 : 변수에만 한정사 쓸수 있게 한 논리
고차 술어 놀리 : 변수뿐만 아니라 함수, 술어 기호 등에도 한정사 가능
술어논리 추론 : CNF로 변환후 논리융합 반박을 통해 증명을 한다.
*CNF : 논리곱으로 연결된 논리합 절

읽을 수 있으면 문맹이 아니다
원숭이는 문맹이다.
어떤 원숭이는 지능적이다
지능적이어도 문맹일 수 있다. 이를 증명해야함

한정사를 없앤다 (술어를 만족시키는 것을ㄱ, 논리합 으로 변환)
전칭한정사 경우 그저 한정사를 없애면 되고
존재한정사 경우, 술어에 변수가 단독인경우 특정 상수 A를 대입하고 다른변수와 있을경우
스콜렛 함수(x에대해서 술어를 참으로 만족 시키는 y를 찾는 함수)를 도입한다.

단일화 과정 : 리터럴이 같아지도록 변수의 값을 맞춘다.
ex) ㄱKnow(John, x) V Hate(John, x) , Know(John, jim)을 논리융합 할때
Know의 리터럴이 같도록 x에 jim을 대입 Hate(john, jim) 이 된다.

논리 프로그래밍 언어 Horn절 : 논리식을 논리합 형태로 표현할때 ㄱA(x) v ㄱB(x) v c(x) 와 같이 긍정인 리터럴을 최대하나만 사용
즉 ㄱ(A(x) ^ B(x)) v C(x), A(x) ^ B(x) -> C(x) 꼴이 되고 결론부가 없거나 하나만 있는 것을 Horn절 이라고 한다.

prolog : Horn 절만 허용하는 논리 프로그래밍 언어

profile
공부중

0개의 댓글