Brauche Hilfe beim Lösen einer boolschen Gleichung

Hallo,

wer weiss, wie ich die folgende Funktionsgleichung mittels boolscher
Algebra vereinfachen kann?

(A oder Bnicht oder Cnicht) und (Anicht oder B oder Cnicht) und
(Anicht oder Bnicht oder Cnicht)= Z

Ich komme damit irgendwie nicht alleine weiter. Vielen Dank für die
Hilfe!

André

hallo,

google nach den de Morgan’schen Regeln und wende sie an…

stefan

Hallo,

wer weiss, wie ich die folgende Funktionsgleichung mittels
boolscher
Algebra vereinfachen kann?

(A oder Bnicht oder Cnicht) und (Anicht oder B oder Cnicht)
und
(Anicht oder Bnicht oder Cnicht)= Z

Ich nehme mal die zweite:

(Nicht(A) oder Nicht(B) oder Nicht©) = Z

Nicht ((Nicht(A) oder Nicht(B) oder Nicht©) = Nicht (Z)

Nicht(Nicht(A)) und Nicht(Nicht(B)) und (Nicht(Nicht©) = Nicht(Z)

A und B und C = Nicht(Z)

Im Prinzip läuft boolsche Algebra auf die Anwendung immer wieder derselben Regeln hinaus:

A und (B oder C) = (A und B) oder (A und C)
A oder Nicht(A) = wahr
A und Nicht(A) = falsch
nicht(nicht(A)) = A
Nicht(A oder B) = Nicht(A) und Nicht(B)
Nicht(A und B) = Nicht (A) oder Nicht(B)

… und ein paar triviale Regeln, wie z. B. A und B = B und A

Für die letzten beiden hatte ich folgende Eselsbrücke: In der Schreibweise

  • Nicht(…) = Strich drüber
  • oder = v
  • und = umgekehrtes v
    Wenn man die Linie über dem Term in zwei Teile bricht, dreht sich das Rechenzeichen darunter herum.

Michael

Hallo,

wer weiss, wie ich die folgende Funktionsgleichung mittels
boolscher
Algebra vereinfachen kann?

(A oder Bnicht oder Cnicht) und (Anicht oder B oder Cnicht)
und
(Anicht oder Bnicht oder Cnicht)= Z

Durch Ausmultiplizieren.

Ich schreibe jetzt ein kleines a für a und ein großes A für NichtA, ein „+“ für Oder und ein „*“ für Und:

(a+B+C)*(A+b+C)*(A+B+C)

Jetzt kannst du wie mit ganz normaler Algebra ausmultiplizieren.

= aAA + aAB + aAC + abA + abB + aCC + …

Jetzt kannst du dir überlegen, dass alle Terme, in denen z.B. a und A vorkommen, nicht zum Ergebnis beitragen, weil (a UND (nicht a)) immer false ist. Ausserdem kannst du aa zu a vereinfachen. Die ersten fünf Terme, dich ich aufgeschrieben haben, fallen also weg, der sechste (aCC) kann zu aC vereinfacht werden.

Ist nicht gerade wenig Aufwand, aber eine schöne Übung in Rechnen :wink:

Grüße,
Moritz

Nachtrag
Hallo,

noch ein kleiner Nachtrag: zum intuitiven Vereinfachen kann man ganz gut KV-Diagramme verwenden, wenn man nicht zu viele (max. 4) Variablen hat: http://de.wikipedia.org/wiki/Karnaugh-Veitch-Diagramm

Grüße,
Moritz

(A oder Bnicht oder Cnicht) und (Anicht oder B oder Cnicht)

Durch Ausmultiplizieren.

Ich schreibe jetzt ein kleines a für a und ein großes A für
NichtA, ein „+“ für Oder und ein „*“ für Und:

(a+B+C)*(A+b+C)*(A+B+C)

Jetzt kannst du wie mit ganz normaler Algebra
ausmultiplizieren.

= aAA + aAB + aAC + abA + abB + aCC + …

Nanana, das geht einfacher:

Ich schreibe A für A und ~A für Nicht(A), ODER wird zu „v“ und UND zu &:

(A v ~B v ~C) & (~A v B v ~C)

~C v ((A v ~B) & (~A v B)) |Distributivgesetz
~C v ~~((A v ~B) & (~A v B)) |~~x = x
~C v ~(~(A v ~B) v ~(~A v B)) |Morgansche Regel
~C v ~((~A & B) v (A & ~B)) |Morgansche Regel
~C v ~(A XOR B)
~C v (A = B)

„XOR“: exklusiv-ODER (A XOR B ist wahr, wenn entweder A oder B wahr ist, sonst falsch)
„=“: Identität (A = B ist wahr, wenn A und B denselben Wahrheitswert haben, sonst falsch)

Michael