知識、知恵のカタマリ

[PR]コレがGoogleの検索ストーリー

お蔵入り

clip!clip!
Ads By Google

論理式がわかりません。

X + Y + _( ( X + _Y ) * ( _X + Y ) )
が、どうして
X + Y + _( ( X * Y + X * _Y + _Y ) * ( _X + _X * Y + X * Y ) )
になるか、教えてください。X * Yと_Yと_Xと_Y は+で結ばれているので、もとの式と関係はなく、計算のためにあるのですか?
_は否定です。

2007-12-24 14:52の質問
この質問は、30日間解決しなかったために自動的に質問が一旦閉じられました。

回答(1)

2.

2007-12-24 16:46:56
まず前提として、論理否定というのは
"_X" は "X以外のすべて"という意味と理解しておいたほうがよいです。

そうすると、
 X + _X は "XとX以外の全てのOR結合"なので、
結局"(世の中の)全て"と言う意味になります。

これを念頭におくと、
たとえば、
 Y*X + Y*_X

 Y*(X + _X)
と変形できますが、意味は
 "Yと世の中の全てのAND結合"
となるので、結局Yになります。
(世の中の全てとAND結合しても、何も変化しない)
まとめると、
  Y*X + Y*_X = Y です。

XとYを入れ替えても同じですから、
  X*Y + X*_Y = X でもあります。

これを最初の式に入れれば、

X + Y + _( ( X + _Y ) * ( _X + Y ) )
= X + Y + _( ( (X*Y + X*_Y) + _Y ) * ( _X + (Y*X + Y*_X ) ) )
= X + Y + _( ( X*Y + X*_Y + _Y ) * ( _X + Y*X + Y*_X ) )
= X + Y + _( ( X * Y + X * _Y + _Y ) * ( _X + _X * Y + X * Y ) )

となります。
(最後は * や + 演算の順番を入れ替えただけです)。
自信度 : 自信あり 回答レベル : 回答
Ads By Google

コメント(44)

2007-12-24 17:01:04

説明は回答で尽くされていると思いますが、もし、感覚がわかないようであれば、↓のように各項を表に一度書き出してみると、どこが同じになっているのかわかりやすいかもしれません。
X|Y|~X|~Y|X+~Y|・・・
0|0|1 | 1| 1 |・・・
0|1|1 | 0| 0 |・・・
1|0|0 | 1| 1 |・・・
1|1|0 | 0| 1 |・・・

#3.  1987
2007-12-24 23:35:18

では、世の中にXとYしかなかったら、_XはYや、XとYどちらにも属さない部分は同じなのですか? 

2007-12-25 00:11:26

>>#3
「世の中に」という言葉がひとり歩きしていますので、そう考えない方がいいでしょう。abcosmeticさんのX+~Xの説明は「AND結合しても、何も変化しない」ものであり、それは普通の掛け算でいう1なので、imqさんは、
 Y + ~Y = 1
という風に書いています。私の#1の表の続きで試してみればわかりますが、どの入力に対しても1になります。

もし、まじめに考えるなら、考えている問題は、
{(0,0),(0,1),(1,0),(1,1)}→{0,1}
という変換が世の中全体になります。でもそういう抽象的な記述をしても、あんまり嬉しくないですよね?w

まぁXとYだけで、4行書けばいいだけなので、0と1を埋めて眺めてみた方がいいですよ。所詮16種類なので。

#5.  imq
2007-12-25 00:12:40

>>#3
~XはXに属さない部分で、Yとは無関係です(論理否定)
XとYに属さない部分は~(X + Y)ですね(論理和の否定)

ベン図を書くと分かりやすいです。
http://ja.wikipedia.org/wiki/%E3%83%99%E3%83%B3%E5...
↑この例だとXとYをそれぞれPとQとなっています。

#7.  BLUEPIXY
2007-12-25 16:07:13

もし、世の中にXとYしかないのであれば、
XでなければそれはYなのですから
_X は、Yに属するということでいいと思います。

#8.  imq
2007-12-25 18:03:59

なんですけどね^^
そっちに話が行くと収束しないような気がして^^

#9.  1987
2007-12-26 23:45:57

高校でやった集合のように、まず、変数が3つでも、ベン図で表す場合は3つとも重なり、それぞれ2つが重なる。つまり重なり合っている部分が4つであることが前提ですね。 

このように書くことはあまりないかもしれませんが、X ・Y・(X+_X)と、X・Y・(Y+_Y)と、X・Y・(Z+_Z) は同値ですよね?

#10.  1987
2007-12-26 23:47:54

#7さん、もし、世の中にXとYしかないのであれば、
XでなければそれはYなのですから>
Xでなくても、XにもYにも属さない部分はありませんか?

#11.  オニキス
2007-12-27 01:30:44

>>#10
その議論はこの問題に対して無意味ですよ。。。「もし」とかじゃなくて、ブール代数の2項演算の「世の中」は#4に書いた通りです。XとYの取り方で値が決まるのだから、単純にベン図を書くと解釈に悩むことになります。

#12.  BLUEPIXY
2007-12-27 02:54:48

>>#10 Xでなくても、XにもYにも属さない部分はありませんか?
X と Y しかない場合
X にもY にも属さない部分は
#5 さんの仰る通り _(X + Y) だと思いますが、
この(X と Y しかない)場合空集合(Φ)だと思います。空集合をあるとするというより、単にないと言うのが(数学的に自然と言うより感覚的に)自然だと思います。
例えば、袋の中に赤玉と白玉をいれます。
世の中(袋の中)には、X(赤玉)とy(白玉)です。
今、赤玉(X)を取り出しました。
袋の中には赤玉と白玉しかないということがわかっていますから、
袋の中には白玉が残っていると推測できます。
つまり、赤玉を取り出した時には赤玉でないモノが残っているわけですがそれは白玉です。
白玉と白玉(と赤でもないもの)以外が残っているなんて言わないでしょう?

#13.  1987
2007-12-27 03:50:42

 そうですね。 たしかに X・_X=0 も、「男かつ女」=0で、男でも女でもない人はいないという前提がありますよね。 ということは、論理回路では、高校の数学Aで習ったこととは違い、XとYのどちらにも属さない部分は0になり、存在しないということですか? 

#14.  BLUEPIXY
2007-12-27 18:12:53

>>#13 論理回路では、高校の数学Aで習ったこととは違い、XとYのどちらにも属さない部分は0になり、存在しないということですか?
仰ることがよくわかりません。
よければ、「高校の数学Aで習ったこと」で矛盾するという部分について教えて下さい。
#7以降基本私のコメントは、質問についてではなくて、#3についてですけど・
コンピュータ(論理演算)の世界では、多値を扱うようなモノでなければ一般的に1と0だけを扱います。
0の論理否定は1であり、1の論理否定は0であるということになっています。
これは、0と1だけを扱うという前提があるからです。
プログラムの世界では、
偽と真とを
0と0以外というように表す場合があります。
この場合、真とは1とは限りません。

#18.  imq
2007-12-28 02:02:43

すみません。
私の余計な入れ知恵でドツボにはまってしまったみたいで。。
論理的には皆さんのコメントで出尽くしていますがイメージしにくいみたいなので付け加えました。

#20.  imq
2007-12-28 02:40:45

>>#13
1987さんの例に合わせるなら
「属す」は「1」という値を持つことで、
「属さない」は「0」という値になります。

「X」が「男性かどうか」という条件を表すなら
「女性かどうか」という条件は「男性かどうか」の反転なので「~X」です。

もう1コの条件「Y」は性別以外(Xとは無関係なもの)にする必要があります。
「Y」を「成人かどうか」とすると、
同様に「未成年かどうか」という条件は「~Y」です。

これを踏まえて例を挙げると
「男性かつ未成年」かどうか(条件のみ) → X + ~Y
「男性かつ未成年」に属す(条件が値を持つ) → X + ~Y = 1

#22.  imq
2007-12-28 02:54:34

つまり1987さんの言う「XでもYでもない」という条件は
今回の例では「男性または成人」以外の人かどうかを表していて、
~(X + Y)
という式になります。
これが必ず0という値を持つように思われているようですが、
「女の子は一人もいない」という条件が常に成り立ってしまいまうので間違いです。

常に値の決まる条件というのは例えば、
Y * ~Y = 0
「成人かつ未成年」という人はいないからから、
X + ~X = 1
「男性または女性」はすべての人だから、
X + 1 = 1
「男性またはすべての人」はすべての人だから、
Y * 0 = 0
「成人かつ誰もいない」は誰もいないからです。

#23.  1987
2007-12-28 03:02:06

「X」が「男性かどうか」という条件を表すなら
「女性かどうか」という条件は「男性かどうか」の反転なので「~X」です。>
XとYは全く異なったことでもいいのですね。 それはもちろんXの中に男と女の2通りしかない前提ですよね? それとも、3通り以上の事柄があってもいいのですか? 

#26.  imq
2007-12-28 03:20:01

皆さん書いていますが、
論理式の場合、値は「0」と「1」の2通りです。
先ほどは「属す」「属さない」と例えましたが、
「正しい」か「正しくない」かを「1」と「0」で表すと言った方がいいかもしれなかったです。

3通り持てるのは条件の方です。
その場合「X」「Y」「Z」のそれぞれが「0」か「1」の値を持ちます。

コメント#11にもありますが、
XとYは関連性のない条件にしないと、XとYを設ける意味がないですね。

#27.  1987
2007-12-28 03:25:15

#22 では、0の「誰もいない」とは、XとYのどちらにも属さない人のことですか?

#28.  BLUEPIXY
2007-12-28 03:33:29

>>#23
ちょっと整理しておきたいのですが、
imq さんが仰るX Y とは、2つの状態を取り得る変数のコトです。(なので、X の取り得る状態がどうであろうとY の状態には関係ないということになります。)
それで、
#4 で仰る2種の状態×2種の状態で全てで4つということになります。
私のいう(#3での解釈としての)X と Y は、変数ではなく実体です。
それは、メロンとりんごでも白玉と赤玉でもよいですが、「変数的な:取り得る可能性を含んだもの」ではありません。
もし、変数的に取り扱うとしても、
「XとYしかない」という前提からすると、
Y が実はXであったり、YがXであったりすると
X しかない(あるいはY しかない)ということになり、題意を満たしません。

#29.  imq
2007-12-28 03:38:33

>>#27
0は値です。
XにもYにも無関係な
「正しくない」という値です。

#30.  BLUEPIXY
2007-12-28 03:46:02

ついでにいうなら、
「世の中にXとYしかなかったら」
という時
X と Y を命題(2種の関連しない条件)であるとみなすのはムリがあると思います。
「世の中に(男性かどうか)と(未成年かどうか)しかなかったら」
なんていわないでしょう?

#32.  imq
2007-12-28 03:58:10

あれ?
出題はXとYが0か1の値を持つ普通の論理式ですよね?
#3が1987さんの勘違いだと思って説明してきましたが、
私が勘違いしてたかな??

#33.  1987
2007-12-28 04:31:33

 #22の例では、Xが男性 _Xが女性ですよね。つまり女性は、ベン図のXの外にいる(成人か否かも同様に)ということですか?

#34.  imq
2007-12-28 08:09:26

>>#33
そうです。

#35.  1987
2007-12-28 21:29:10

 では、#22をベン図にすると、ベン図内のどこにいても、そういった人は存在するので、4通りすべてが1になりますか? 
 それとも、1か0は(男であるを1としたら女は0のように)その題意と比較して決めているのですか? 
 #14のご回答の「0の論理否定は1であり、1の論理否定は0であるということになっています。
これは、0と1だけを扱うという前提があるからです。」となると、女性と未成年はすべて0になりますよね。

#36.  imq
2007-12-28 23:13:23

ベン図が却ってややこしくしてしまったようですね^^;
「ベン図のどの位置でも存在する可能性がある」というのはもはや条件としては成り立ちませんよ!
だってXという条件で正しければ(1なら)
~Xという条件では正しくなくなる(0になる)から。

その辺はとりあえず捨て去って、ベン図では
「条件式は塗りつぶされるパターンで表される」
ということのみに使うのがいいと思います。
つまり

式が違っても塗りつぶされるパターンが同じなら条件は同じになる
その確認にベン図を使ってください。

ちなみに論理式をベン図に置き換えた場合において、
「1」というのは領域全体が塗りつぶされる状態、
「0」というのは領域が全く塗りつぶされない状態
を指します。
それぞれの意味は、XとYとは無関係に
常に正しい(=1)か、
常に正しくない(=0)か、
ということです。

#37.  imq
2007-12-28 23:20:23

更に補足すると、
条件式中の
1と0は定数
XとYは変数
です。

条件式に1と0があるのと
XとYが0~1の不定値を持つ
ことを混同しているようです。

#38.  1987
2007-12-29 00:02:15

#22にある
常に値の決まる条件というのは例えば、
Y * ~Y = 0
「成人かつ未成年」という人はいないからから、
X + ~X = 1
「男性または女性」はすべての人だから、
X + 1 = 1
「男性またはすべての人」はすべての人だから、
Y * 0 = 0
「成人かつ誰もいない」は誰もいないからです。

で、0になる2つのケース(Y * ~Y = 0とY * 0 = 0)はベン図のどこにも存在しません(成り立ちません)よね。だから0になるのではないですか?
ただ、男性が1で女性が0というのとも解釈が違うのですよね・・・。女性は0でも存在はしているから。

#39.  imq
2007-12-29 01:18:39

>>#38
前者の解釈は正しいです。
上の4つの式は恒等式で、
無条件に「常に成り立つ」ものです。
これを使って元の質問にある

X + Y + ~((X + ~Y) * (~X + Y))
という式を変形させていきます。


>男性が1、女性が0
これは「X」(男である)という条件式が持ちうる値です。
X = 1
X = 0
…と変数に定数を代入している事を指します(恒等式ではないです)。

#40.  imq
2007-12-29 01:28:59

あと気になるのが
「男性が1で女性が0」
と端折った表現をしていますが、始めの内は勘違いしやすいので、
「男性である」という条件(命題)に対して
正しいときが1
正しくないときが0
という感じに、正しいか正しくないかで考えるようにするといいです。

#41.  BLUEPIXY
2007-12-29 16:32:44

参加しない方が良いような気がしますが、ココだけ
>#14のご回答の「0の論理否定は1であり、1の論理否定は0であるということになっています。これは、0と1だけを扱うという前提があるからです。」となると、女性と未成年はすべて0になりますよね。
えっと
「男である」は、条件で、
あるXが男であるか否かということです。
男であるなら真で
男でないなら偽です。
この場合のXにあてはまる要素(属性)は「男」または、「女」で、「未成年」を当てはめても意味がありません。(強いて言えば偽でしょうが)
もし当てはめられるとしたら、
「男」「女」「未成年」の3値があることになります。

#42.  BLUEPIXY
2007-12-29 16:56:10

>>#41 「未成年」を当てはめても意味がありません。
男かどうかを調べる時未成年かどうかは関係ない。
という意味。

#43.  BLUEPIXY
2007-12-29 17:05:25

整理なんですが
男、女,成年、未成年をごっちゃに扱うことは、おかしかないですか?

例えば、そういう世の中(集合)は、
人という集合で
その中には男,女,成年,未成年という属性(部分集合)があります。
男と女あるいは成年,未成年は排他的で共通部分(同時に持てる属性で)はありません。
というような世界の話なんでしょうか?

#44.  1987
2007-12-29 21:21:14

 では、#41より、全て(#1で出てきた16通り)の論理式次第で、その論理式の1か0が決まるのですか?
 Y * ~Y = 0など、その論理式が成り立たなければ0になるのですね。

#45.  BLUEPIXY
2007-12-30 00:49:58

>>#45 では、#41より
「では、#41より」の意味がわかりません。
話つながってますか?
>>#45(#1で出てきた16通り)
16通りじゃないように思いますが・
>>#45 その論理式の1か0が決まるのですか?
論理値(0,1)を表すX,Yの組み合わせは2×2で全てで4通り
X,Yで表す論理式はX,Yが決まれば1か0が決まる。
>>#45 Y * ~Y = 0など、その論理式が成り立たなければ0になる
Y * ~Y = 0 は、恒等式、(Yがどのような値をとろうとも)常に成り立つ。

#46.  BLUEPIXY
2007-12-30 01:02:41

え~、
今現在、わかっていること、わかっていないことを整理されたらどうでしょうか?

#47.  1987
2007-12-30 02:18:57

#44の論理値(0,1)を表すX,Yの組み合わせは2×2で全てで4通り>
これは、ベン図の4箇所(_(X+Y), X・_Y, X・Y, _X・Y)のことですよね。 それと#22の
常に値の決まる条件というのは例えば、
Y * ~Y = 0
「成人かつ未成年」という人はいないからから、
X + ~X = 1
「男性または女性」はすべての人だから、
X + 1 = 1
「男性またはすべての人」はすべての人だから、
Y * 0 = 0
「成人かつ誰もいない」は誰もいないからです
の論理式を一緒に考えていいですか?

#48.  imq
2007-12-30 14:33:18

>ベン図の4箇所(_(X+Y), X・_Y, X・Y, _X・Y)のことですよね。
これが違います。
なぜこのように飛躍してしまったのか分かりませんが、よく意味を考えれば違うということは分かると思います。

ベン図はあくまで条件式が図形パターンで分かるということだけです。
XとYに0~1の値を代入するようなことにはここでは使えません。

恒等式はXに(もしくはYに)0が入ろうが1が入ろうが常に成り立つということです。
代入式ではないので、こちらはベン図上で確認できます。

#49.  1987
2007-12-30 15:06:24

 そうすると、ベン図の4箇所(_(X+Y), X・_Y, X・Y, _X・Y)を _(X+Y)=1, X・_Y=1, X・Y=1, _X・Y=1 とは書けないということですか?
 一方
Y * ~Y = 0
「成人かつ未成年」という人はいないからから、
X + ~X = 1
「男性または女性」はすべての人だから、
X + 1 = 1
「男性またはすべての人」はすべての人だから、
Y * 0 = 0
「成人かつ誰もいない」は誰もいないから
では、0か1を決められるのですね。この4つも論理式ですよね。

#50.  imq
2007-12-30 19:39:09

前者は今回の設問においては書けないです。
問題文のどこにも~(X+Y)=1という値を代入する設定する条件がないからです。
何度も言いますが、こういう代入式はベン図上では確認できません。
コメント#1は動作を理解するために用いています。
XもYもあるいは~(X+Y)も、0と1のどちらの値を持つかは不定です。
常に成り立つわけではありません。

後者は値を代入しているわけではなく、「常に成り立つ」ということですので、
同じ論理式でも前者の式とは意味合いが違います。

#51.  1987
2007-12-31 02:17:29

 #1は真理値表で、ベン図の4箇所(_(X+Y), X・_Y, X・Y, _X・Y)を _(X+Y)=1, X・_Y=1, X・Y=1, _X・Y=1 と書くのも真理値表を書いているようなものですか? 
#50の「常に成り立つ」とは何ですか?
Y * ~Y = 0 と Y * 0 = 0は成り立っているといえるのでしょうか? 偽ということが成り立っているという解釈ですか?

#52.  imq
2007-12-31 14:59:40

>真理値表を書いているようなものですか?
そのようなものです。

>「常に成り立つ」とは何ですか?
理屈は#13で理解いただけているものと思いますが、
Yと~Yには共通部分がないのでANDをとると無くなってしまうから、
Yがどんな値を取ろうと常に成り立つといえます。

表現を正確に書くと
Y * ~Y = 0は成り立っていると言えて、
Y * ~Yは偽ということが成り立っていると言えます。

#53.  1987
2007-12-31 18:39:11

そうしますと、#52の解釈で、「成り立たない」というケースはあるのでしょうか?
論理式は
Y * ~Y = 0
「成人かつ未成年」という人はいないからから、
X + ~X = 1
「男性または女性」はすべての人だから、
X + 1 = 1
「男性またはすべての人」はすべての人だから、
Y * 0 = 0
「成人かつ誰もいない」は誰もいないから
以外にもありますよね。

#54.  imq
2008-01-01 01:37:53

はい、以外にもあります。
元の質問がまさにそれですね。

X + Y + ~((X + ~Y) * (~X + Y)) = X + Y + ~((X * Y + X * ~Y + ~Y) * (~X + ~X * Y + X * Y))
なのです。

成り立たないケースは挙げてもきりが無いし、
今回の設問に対しては考慮しない方がいいです。

トラックバック(2)

トラックバックURL: