728x90

[ Ch.10 ]

< p.149 부울대수를 위한 예시 ~ >

수컷 고양이 : M

암컷 고양이 : F

황갈색 고양이 : T

검정 고양이 : B

흰색 고양이 : W

다른 모든 색 고양이 : O

중성화 O : N

중성화 X : U

 

부울 대수에서 + 기호는 합집합을 의미한다. ex) B+W = 검은색이거나 하얀색인 고양이 모두

부울 대수에서 * 기호는 교집합을 의미한다. ex) F * T = 암컷이면서 황갈색인 고양이 모두

 

부울대수에서도, 기존 대수학에서 적용되던 교환, 결합, 분배 법칙은 모두 적용된다.

게다가 부울 대수에서는, *연산에 대한 +연산의 결합법칙도 성립된다.

==> W + (B * F) = (W + B) * (W + F)

하얀색 고양이 + 검정 암컷 고양이 = 하얀색 고양이 + 검정 고양이 * 하얀색 암컷 고양이

 

좌항에는 하얀색 고양이(성별모두) + 검정색 암컷 고양이 이고

우항에는 하얀색 고양이(성별모두) + (검정 고양이(성별모두) ∩ 하얀색 암컷 고양이 => 암컷이 교집합으로 성립되어, 모든 성별이 있는 검정 고양이중, 암컷이 뽑힌다.)

=> 하얀색 고양이(성별모두) + 검정 암컷 고양이 이다.

 

따라서 성립하게 된다.

 

부울 대수에서 1이라는 기호는 전부(Universe)를 의미한다.

M + F = 1

T + B + W + O = 1

N + U = 1

1 - M = F

등...

 

부울 대수에서 0이라는 기호는 공집합을 의미한다.

F * M = 0

0 * F = 0

0 + F = F

1 + F = 1

등...

 

부울 대수와 일반 대수학의 차이점

    <부울 대수>

    F * F = F (암컷과 암컷의 교집합은 암컷)

    F + F = F (암컷과 암컷의 합집합은 암컷)

    <대수학>

    F * F = F^2

    F + F = 2F

 

이 부울 대수에서, 논리게이트 (AND, OR ...) 가 탄생하게 됐다.

 

AND 는 * 로 표현하고 아래와 같은 표에 부합한다.

AND 0 1
0 0 0
1 0 1

 

OR 는 + 으로 표현한다.

OR 0 1
0 0 1
1 1 1

 

이를 바탕으로 예시를 하나 들어보자

중성화된 수컷 고양이, 하얀색이나 황갈색, 혹은 중성화된 암컷 고양이, 하얀색을 제외 한 고양이를 원한다고 가정

위와 같은 조건을 만족하는 고양이를 원한다고 해볼때 이를 부울대수 수식으로 나타내면

(M * N * (W + T)) + (F * N * (1 - W)) + B 

다음과 같다.

만약 중성화되지 않은 수컷 황갈색 고양이를 가져오면,

수컷이므로 M = 1

황갈색이므로 T = 1

이외엔 모두 0이다.

 

위의 식에 대입해보면, (1 * 0 * (0 + 1)) + (0 * 0 * (1 - 0)) + 0

결과는 예상가듯이 0이다.

 

스위치와 전구가 있는 회로에서도 위와 같은 원리들이 모두 똑같이 적용된다.

스위치가 꺼져있으면 0, 켜져있으면 1로 구분지어서 위의 표처럼 논리연산을 할 수 있는 것이다.

 

한가지 덧붙이자면, 회로는 직렬, 병렬로 연결을 할 수가 있다.

여기서 직렬은 AND연산(*기호), 병렬은 OR(+기호)로 나타내어 회로를 구성할 수 있다.

728x90
복사했습니다!