2017-02-21 7 views
2

Может кто-нибудь сказать мне (формально), почемуПропозициональное логика: почему "не А или (не А и В) = не А"

not A or (not A and B) 

является

not A? 
+0

Потому что, если вы НЕ с обеих сторон, вы получаете: –

+1

@mazenelzoor OP правильный, вы нет. '(¬A ∨ (¬A ∧ B))' имеет ту же таблицу истинности, что и '¬A', ее легко проверить –

+0

Потому что, если вы НЕ с обеих сторон получаете: ** ** ** ** ** & ** a ** or! b –

ответ

0
A or (A and B) == A 

всегда тавтология (где А здесь можно заменить на «не» или любое другое булево выражение, аналогично для B).

Вам не нужно рассматривать всю таблицу истинности, как другие сделали, просто рассмотрят значение самого A (то есть, только два случая) и применить правила булевой логики для упрощения:

  • , если A истинно, то у нас есть: true or (true and B), что тривиально верно (по определению или - true or X всегда true).
  • если A является ложным, то у нас есть false or (false and B) == (false and B) == false (по определению или (false or X == X) и (false and X == false)).

В зависимости от вашего личного вкуса, было бы более интуитивным напомнить об этом или иметь отношение к СОЮЗу в теории множеств, а «и» относится к ИНТЕРСЕКЦИИ. В этом случае, очевидно. UNION (A INTERSECTION B) равен A, так как (A INTERSECTION B) является строгим подмножеством A.

+0

okay. второй момент - это именно то, что я хотел знать. THX, все за то, что помогли мне! – MBD

0
!A || (!A && B) means : 

if(A = true and B = true) => false (!A) 

if(A = True and B = false) => false (!A) 

if(A = false and B = True) => True (!A) 

if(A = false and B = false) => True (!A) 

в все случаи вашего выражения! A Это называется таблицей истинности входов выражения.

Если у вас большой набор входов и логических операций, этот метод не просто проверить ваше выражение.

что вы можете сделать в этом случае:

доказательство !A = !A || (!A && B) же, как доказав A = !(!A || (!A && B))

!(!A || (!A && B)) = A && !(!A && B) = A && (A || !B) = A 
+0

Это недействительный способ сделать это. В этом случае у вас есть только небольшое выражение с 4 различными выходами. Иногда выражения могут достигать 100 (!) И 100 (&&). –

+0

Вот почему это называется таблицей истинности выражения! когда он ограничен небольшим количеством входов; – Ayyoub

+0

ОП спросил: «Кто-нибудь может сказать мне (* formal *), ** why **». ОП уже знал, что они одинаковы, поэтому ваш ответ не добавляет к этому знанию; вы не объясняете ** почему **. Честно говоря, я не думаю, что это вопрос программирования, и ОП должен задавать это на стороне математики. Но это не отвечает на вопрос. –

Смежные вопросы