language agnostic - क्या करता है! ए &&(एक || बी) को सरल करता है?




language-agnostic boolean-logic (6)

टैटोलॉजी टेबल

 | a | b | !a | a || b |  !a && (a || b)  | !a && b | [ !a && (a || b) ] <=> [!a && b]    |
 |---|---|----|--------|------------------|---------|-------------------------------------|
 | 0 | 0 |  1 |   0    |      0           |    0    |                   1                 |
 | 0 | 1 |  1 |   1    |      1           |    1    |                   1                 |
 | 1 | 0 |  0 |   1    |      0           |    0    |                   1                 |
 | 1 | 1 |  0 |   1    |      0           |    0    |                   1                 |

"प्रमाण"

  1. वितरण के वक्तव्य के सिद्धांत के अनुसार !a && (a || b) बराबर है (!a && a) || (!a && b) (!a && a) || (!a && b)
  2. गैर-विरोधाभास कानून (!a && a) लिए समानता false बराबर है
  3. यह सब एक साथ डालें:

    !a && (a || b) <=> (!a && a) || (!a && b) <=> false || (!a && b) <=> !a && b

मैं थोड़ा और उलझन में हूँ !a&&(a||b) यदि मैं इसे प्रत्यक्ष रूप से देखता हूं और बस इसे व्याख्या करता हूं, तो ऐसा लगता है जैसे वह समान है

!a&&a or !a&&b

लेकिन यह थोड़ा अजीब लगता है क्योंकि a सच्चा और झूठा नहीं हो सकता है, यह केवल तभी सत्य होगा यदि बाद का सत्य था। मैंने यह भी इसी तरह की व्याख्या की थी

!a || a&&b

मैं सच में नहीं जानता कि मैं कैसे इस एक के साथ आया था, लेकिन यह सिर्फ अधिक तर्कसंगत दिखता है क्योंकि कोई विरोधाभास नहीं हैं। क्या कोई मुझे इस पर मदद कर सकता है कृपया?


आप इसे इस तरह सरल कर सकते हैं (!a && b) क्योंकि अभिव्यक्ति में (!a && a || !a && b) हालत !a && a हमेशा झूठी है


मैं आपको इस तरह की सरलीकरण के लिए वॉल्फ्राम अल्फा का उपयोग करने की अनुशंसा करता हूं, यह अद्भुत हो सकता है कि कभी-कभी आपके भावों के लिए यह क्या कर सकता है यह विशेष अभिव्यक्ति सरल है !a && b

WA से लिंक: http://www.wolframalpha.com/input/?i=%21a%26%26%28a%7C%7Cb%29


मैं मान रहा हूँ "या" निम्न प्राथमिकता (सामान्य रूप से बूलीय तर्क && या || समान हैं और जैसे यह अस्पष्ट हो गया होता है

  !a&&a or !a&&b
= (!a&&a) || (!a && b)
= false || (!a && b) 
      // because X and not X will never be true for any combination of X
= (!a && b)
      // because false || X == X for any value of X
= !a && b
      // removed parens

!a && (a || b) को बाइनरी सच्चाई के साथ माना जा सकता है,

a       b       out
true    true    false
false   true    true
false   false   false
true    false   false

इसलिए केवल एक ही परिस्थिति गुजरती है

 (!a && b)

और हम इसे डीमोर्गन के कानूनों को लागू कर सकते हैं और प्राप्त कर सकते हैं

 !(a || !b)

(!a && a) || (!a && b) (!a && a) || (!a && b) का एक सही विस्तार (वितरण कानून का उपयोग करके) है

यह करने के लिए सरलीकृत किया जा सकता है !a && b

बूलियन बीजगणित के लिए वितरण कानून हैं:

a && (b || c) == (a && b) || (a && c)
a || (b && c) == (a || b) && (a || c)






boolean-logic