Hi,
genau kenne ich die formalen Bestimmungen nicht, aber ich versuche es mal, zu interpretieren.
Der komische Ausdruck auf der rechten Seite besteht anscheinend aus ternären Operatoren, wie sie z.B. in C vorkommen.
Also z.B. (a>2) ? b = 1 : b = 3 ist äquivalent zu
Jetzt wandeln wir den gesamten Ausdruck: (d?(b?(a?true: false): true): (c?(b?true: false): true)) in Pseudocode:Code:if(a > 2) { b = 1; } else { b = 3; }
Auf die Shannon-Normalform komme ich, indem ich mir die Pfade anschaue, die zu True werden:Code:if d: if b: if a: true else: false true else: if c: if b: true else: false else: true
(D und B und A) oder (D und Nicht B) oder (Nicht D und C und B) oder (Nicht D und Nicht C). Die Klammern dienen nur der Übersicht.
Wenn ich das jetzt umsortiere zu
(A und B und D) oder (B und C und Nicht D) oder (D und Nicht B) oder (Nicht C und Nicht D), komme ich auf den angegebenen Term:a&b&d|b&c&!d|d&!b|!c&!d
Das Ganze hat keinen formalen Anspruch und zeigt nur, wie ich mir das hergeleitet habe. Ob das deinen Professoren so reicht, weiß ich nicht ;-)



Zitieren