dh-Materialien
Einführung in Maple    
Übungen
 

Wahrheitsfunktionen

> restart;

Definition der Funktion  pbv ("PrintBooleanValue"):

> pbv:= proc(p):
    if p = true then "T" else "F" fi
  end:

Die Boole’schen Operatoren not, and, or, xor und implies:

> Not:=  proc(p)    not p end:
  And:=  proc(p, q) p and q  end:
  Or:=   proc(p, q) p or q  end:
  Xor:=  proc(p, q) p xor q  end:
  Imp:=  proc(p, q) p implies q  end:
  Aeq:=  proc(p, q) (p implies q) and (q implies p)  end:

Definition der Struktur einer Wahrheitstabelle:

> fst:= "   %s   %s      %s\n": # Formatstring
  Tabelle:= proc(bool, wf)
    local p, q:
    printf("   p   q   p %s q\n\n", bool);   
    for p in [true, false] do
      for q in [true, false] do
        printf (fst, pbv(p), pbv(q), pbv(wf(p, q)));
      od
    od
  end:

Die Konjunktion zweier Aussagen p und q 
(Verknüpfung mit and: "p und q"):

> Tabelle("and", And);

  p q p and q
       
  T T T
  T F F
  F T F
  F F F

Die Alternation zweier Aussagen p und q 
(Verknüpfung mit or: "p oder q" ):

> Tabelle("or", Or);

  p q p or q
       
  T T T
  T F T
  F T T
  F F F

Das Konditional der Aussagen p und
(Verknüpfung mit implies: "wenn  p, dann  q"):

> Tabelle("implies", Imp);

  p q p implies q
       
  T T T
  T F F
  F T T
  F F T

Das Bi-Konditional der Aussagen  p und q
("p ist äquivalent zu  q"):

> Tabelle("aequ", Aeq);

  p q p aequ q
       
  T T T
  T F F
  F T F
  F F T

 Home   Back   Top