論理演算

論理演算とは,2進数(1ビット)の1桁を対象とする。ある条件が成立するか否かを論理と称し1を真(成立)、0を偽(不成立)とする結果を導出する演算(数学でいう計算)である。

まずは Anaconda から数値計算機能(モジュール)の numpy をインポートしておく。

~$ conda activate
(base)~$ python3
#省略
>>> import numpy as np

論理演算の演算子(四則計算でいう+−×÷)は and, or, not, の3つである。

論理演算子

それぞれの論理演算子の機能を確認してみる。

and は 論理積 といい、2つの値がどちらも True なら True を、それ以外なら False を返す。

>>> print(True and True)
True
>>> print(True and False)
False
>>> print(False and True)
False
>>> print(False and False)
False
>>> print(100 == 100 and 100 < 200)
True
>>> print(100 == 100 and False)
False

or は 論理和 といい、2つの値、もしくは一つの値が True なら True を、どちらも False なら False を返す。

>>> print(True or True)
True
>>> print(True or False)
True
>>> print(False or True)
True
>>> print(False or False)
False
>>> print(100 == 100 or 100 < 200)
True
>>> print(100 == 100 or False)
True

not は 論理否定といい、返り値(True, False)の逆の値(True\(\small\rightarrow\)False, False\(\small\rightarrow\)True)を返す。

>>> print(not(True and True))
False
>>> print(not(True or False))
False
>>> print(not(False and True))
True
>>> print(not(False or False))
True
>>> print(not(100 == 100 and 100 < 200))
False
>>> print(not(100 == 100 or False))
False

論理回路

\(\textsf{単純パーセプトロンの計算式}\hspace{10pt}y{\scriptsize\,=\,}\left\{\begin{array}{l}0\:(w{\tiny 1}x{\tiny 1}{\scriptsize\,+\,}w{\tiny 2}x{\tiny 2}{\:\scriptsize\leqq\:} \theta) \\ 1\:(w{\tiny 1}x{\tiny 1}{\scriptsize\,+\,}w{\tiny 2}x{\tiny 2}{\:\scriptsize\gt\:} \theta)\end{array}\right.\hspace{20pt}\textsf{ステップ関数式}\hspace{10pt}h{\small(x)}{\scriptsize\,=\,}\left\{\begin{array}{l}1\:(u{\scriptsize\,\geqq\,}0) \\ 0\:(u{\scriptsize\,\lt\,}0)\end{array}\right.\)

PAGE TOP
タイトルとURLをコピーしました