kostenloser Webspace werbefrei: lima-city


Boolesche Algebra - Rechenregeln

lima-cityForumSonstigesSchule, Uni und Ausbildung

  1. Autor dieses Themas

    w******s

    Also das Problem ist, dass ich nicht si ganz klar komme mit der Booleschen Algebra, zwar verstehe ich die einzelnen Rechenregeln, kann sie leider aber nicht anwenden.

    Es wäre net, wenn man mir mal Schritt für Schritt zeigen könnte wie das geht. Zum Beispiel an dieser Funktion: (! für NOT, v für OR, ^ oder eben nichts für AND)

    S = !a!b!c v !a!bc v !abc v a!bc v abc

    ..vereinfacht soll die Lösung S= c v !a!b sein
    Ich verstehe ja wie man das ohne diese algebra löst.. aber wäre hilfreich wenn ich das mit könnte
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Habe das ehrlich gesagt noch nie gemacht, aber ich würde es mir so erklären. Man kann eine Bedingung duplizieren.


    S = !a!b!c v !a!bc v !abc v a!bc v abc

    <=> s= !a!b!c v !a!bc v !a!bc v !abc v a!bc v abc

    <=> s= !a!b (!c v c) v c (!a!b v !ab v a!b v ab)

    ------------c egal--------------a und b egal

    <=> s= !a!b v c
  4. Autor dieses Themas

    w******s

    erst mal danke. also vom verständnis her, dass das richtig ist hab ich keine probleme, sondern mit den rechenschritten. und da versteh ich deine leider auch nicht.
  5. Hi

    Du musst einfach nur ganz konsequent die einzelnen Regeln anwenden. Ich nehm jetzt mal die Schreibweise:

    OR = +
    AND = * oder eben nichts
    NOT = ! vor der Variablen

    Die wichtigsten Vereinfachungen sind diese hier:

    http://de.wikipedia.org/wiki/Boolesche_Algebra#Definition

    Du musst versuchen mit den Gesetzen (deMorgan, Distributiv, Assoziativ, etc.) so umzuformen das du Vereinfachungen wie \"A + 0 = A\" oder \"A * !A = 0\" hinbekommst.

    Also Beispiel für deine Gleichung:

    S = !a * !b * !c + !a *!b * c + !a * b * c + a * !b + c + a * b * c

    In den ersten Termen (die klammer ich mal ein), dann kannst du das Distributivgesetz anwenden, ich ersetz übersichtshalb !a * !b = x:

    S = (!a * !b * !c + !a *!b * c) + !a * b * c + a * !b + c + a * b * c
    = (x * !c + x * c) + !a * b * c + a * !b + c + a * b * c
    = x * (!c + c) + !a * b * c + a * !b + c + a * b * c

    Jetzt schaust (oderüberlegst du dir) wie sich c! + c vereinfacht (gibt logischerweise 1, kannst du dir aber nochmal klar machen wieso das so ist).

    Also ersetzen wir das mal:

    S = x * (!c + c) + !a * b * c + a * !b + c + a * b * c
    = x * 1 + !a * b * c + a * !b + c + a * b * c

    Dann der nächste Term x * 1. Der gibt natürlich immer x (vielleicht auch einmal klar machen, selbst wenn es so trivial einfach ist). mit x = !a * !b, erhälst du dann:

    S = x * 1 + !a * b * c + a * !b + c + a * b * c
    = !a * !b + !a * b * c + a * !b + c + a * b * c

    Ist doch shconmal wesentlich kürzer als die Ausgangsgleichung. Weils soviel Spaß macht könnt ich das jetzt bfertig machen, aber ich denke das unterstützt den Lernprozess nicht wirklich. Ein Tipp jedoch noch: Das Ganze schreit förmlich nach dem Distributivgesetz :wink:

    Du kannst das ganze ja mal weiterspinnen und bei Problemen einfach nochmal nachfragen. Noch als kleine Motivation: Wenn du 5-10 Aufgaben dieser Art gemacht hast kannst du das hinterher im Schlaf, das garantier ich dir förmlich! :)

    Alles reine Übungssache

    Gruß Tobi
  6. Hmm, dann versuch ichs mal ein wenig zu beschreiben^^

    Unsere Ausganggleichung ist:
    S = !a!b!c v !a!bc v !abc v a!bc v abc

    Da die ersten beiden Bedingungen in !a und !b übereinstimmen, kann man ausklammern:

    s= !a!b (!c v c) v !abc v a!bc v abc

    Dadurch zeigt sich, dass es egal ist, ob ich c nun erfülle oder nicht, es muss nur !a und !b erfüllt sein. Daraus folgt, dass das in Klammern stehende sich gegenseitig auslöscht

    s= !a!b v !abc v a!bc v abc

    Jetzt können wir den hinteren Teil zusammenfassen und c ausklammern:

    s= !a!b v c (!ab v a!b v ab)

    Um den hinteren Teil nicht zu erfüllen, müsste !a!b sein. Dies wird aber durch die erste Bedingung erfüllt. Damit gilt automatisch auch:

    s= !a!b v c

    ---------------------------------------------------

    Falls der letzte Schritt nicht 100%ig richtig formuliert ist, gibt es noch einen anderen weg, den ich eben gegangen bin:

    Man dupliziert sich die Bedingung !a!bc und erhält als Gleichung:

    S = !a!b!c v !a!bc v !a!bc v !abc v a!bc v abc

    Wieder ausklammern etc.

    s= !a!b (!c v c) v c (!ab v a!b v ab v !a!b)

    s= !a!b v c


    Schöne Grüße
    Die Schnarchnase :=)
  7. Autor dieses Themas

    w******s

    @ttobsen: danke. genau das was ich wollte. habs verstanden und der letzte schritt war auch dann relativ einfach.man musst sozusagen nur das c \"ausklammern\" un dann stand da noch was mit (c * (!ab v a!b v ab))
    und da die \"innere\" klammer ja alle möglichkeiten beinhaltet kann ich da auch 1 hinschreiben und somit kommt man aufs ergebnis. danke

    @scharchnase: auch danke. musste es aber so mit den umformungsregeln haben;)
  8. werktags schrieb:
    un dann stand da noch was mit (c * (!ab v a!b v ab))
    und da die \\\'innere\\\' klammer ja alle möglichkeiten beinhaltet kann ich da auch 1 hinschreiben und somit kommt man aufs ergebnis.


    Das kann nicht ganz sein. Mit b = a = 0 wäre (!ab v a!b v ab) = 0

    Denn:

    !ab v a!b v ab = !ab v ab v a!b = b (!a v a) v a!b = b v a!b = (b v a) * (b v !b) = b v a

    Gibt daher mit S:

    S = !a * !b + !a * b * c + a * !b + c + a * b * c
    = !a * !b + c * (!ab + a!b + ab)
    = !a * !b + c * (a + b)

    mit De Morgan ergibt sich:

    S = !a * !b + c * (a + b) = !(a + b) + c * (a + b)

    Anschließend nochmal Distributivgesetz:

    S = !(a + b) + c * (a + b) = (!(a + b) + c) * (!(a + b) + (a + b))

    Ersetzt man auf der Rechten Seite a + b = x steht da: !x + x und dies ist immer 1.Somit ergbt sich:

    S = (!(a + b) + c) * (!(a + b) + (a + b)) = !(a + b) + c) * 1 = !(a + b) + c)

    De Morgan nochmal und du hast das Ergebnis:

    S = !(a + b) + c) = !a * !b + c

    Logische Schlußfolgerungen wie oben


    und da die \\\'innere\\\' klammer ja alle möglichkeiten beinhaltet kann ich da auch 1 hinschreiben\"


    sind prinzipiell immer gut (in diesem Fall war sie aber falsch, sie ist erst korrekt wenn man den kompleten Term von S betrachtet) trotzdem würd ich sie nicht zum Rechnen verwenden (aber als Hilfe um das Ergebnis zu prüfen!). Mit den Rechenregeln der Boolechen Algebra bekommst du ALLES hin. Manchmal vielleicht umständlich, aber bei konsequenter und korrekter Anwendung bkommt man immer das richtige Ergebnis.

    Gruß Tobi


    Beitrag geändert: 8.4.2008 0:27:01 von ttobsen
  9. Autor dieses Themas

    w******s

    hm. ja, hab gemerkt, dass es falsch war. leider! bräuchte da echt übung... naja jetzt ist die kursarbeit vorbei^^
    wäre aber wahrscheinlich auch nie dadrauf gekommen de Morgan anzuwenden, obwohl das ganze prinzipiell nichts anderes ist wie mathe auch.
    nochmal danke
  10. werktags schrieb:
    obwohl das ganze prinzipiell nichts anderes ist wie mathe auch


    So ist es :)

    Wenn du an die Uni gehst und deine erste Mathevorlesungen hast musst du genau das gleiche machen, nur mit Mengen. Das ganze hilft wirklich viel, nichtnur in Digitaltechnik, mit der Zeit wirst du allgemein besser (und vor allem schneller) im Schlussfolgerungen schließen.

    Falls du noch ein paar Aufgaben brauchst:

    http://www.imtek.de/micro-optics/content/upload/vorlesung/2007/uebungsblatt-11_1.pdf

    Das ist also schon alles Uni Niveau was du machst :wink:

    Gruß Tobi
  11. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!