Processing math: 100%

Wiki

A universe of ideas

User Tools

Site Tools


uni:6:fsv:start

This is an old revision of the document!


Formale Spezifikation und Verifikation

Formal = Mittels Logik

Propositionallogik

Syntax

Propositionale Variablen A,B,C,
Junktoren ¬,,,,
Formel ϕ,ψ,
Konstanten ,

Semantik

Belegung η
Foo ϕη
Bar &,
Tautologie η:ϕη
Erfüllbar η:ϕη
Unerfüllbar η:¬ϕη
Äquivalent η:ϕη=ψη
Erfüllbarkeitsäuivalenz (ϕ und ψ sind erfüllbar)(ϕ und ψ sind unerfüllbar)

Normierung

Literal A und ¬A
Minterm Konjunktion: (Die wenigsten Belegungen sind )
Maxterm / Klausel Disjunktion: (Die meisten Belegungen sind )
KNF ()()
DNF ()()
  • =
  • =⊥
ϕ … KNF Größe Zeit
Äquivalent exponentiell ?
Erfüllungsäuivalent linear polynomiell

Tseitin Übersetzung

  • Rekursive Funktion KNF
    • Rein
      • (Nicht-Normalisierte) Formel
    • Raus
      • Neuster (frischer) Variablenname
      • KNF
  • C ist frische Variable
  • Regel: Cϕ als KNF
    1. Tabelle Erstellen
    2. Bei 0: Veroderung (Disjunktion) erstellen (A=0A / A=1¬A)
    3. Verodrungen verunden (Konjunktion)
KNF(A)=(A,)
KNF(¬ϕ)=let (B,Γ)=KNF(ϕ) in(C,Γ(CB)(¬C¬B))
KNF(ϕ1ϕ2)=let (B1,Γ1)=KNF(ϕ1) inlet (B2,Γ2)=KNF(ϕ2) in(C,Γ1Γ2(¬CB1B2)(C¬B1)(C¬B2))

SAT-Solver

SAT

  • “ist ϕ erfüllbar?”
  • Entscheidungsproblem (NP-Hart)
  • Nur für KNF
  • Erweiterung auf nicht KNF: Tseitin Übersetzung
  • Erweiterung auf Äquivalenz von ϕ und ψ: ¬(ϕψ) unerfüllbar?

DPLL-Algorithmus

  • Rekursive Funktion DPLL
    • Rein
      • (Teil) Besetzung
      • (Rest) KNF
    • Raus
      • Bessere Belegung

Hier gibt es mehr. Aber das halte ich für Klausurirrelevant

Gleichheit von Schaltkreisen

Wenn gezeigt werden soll, das die Schaltungen f und f bezüglich ihrer Eingänge x das selbe liefern, dann darf ¬((f1(x)f1(x))(f2(x)f2(x))) keine Lösung liefern.

Nebenläufige Systeme

Zeit
0 1 n-1
Zustand z1 xzt
z2
tzZzz¬(xztxzt) Zu jeder Zeit ist nur ein zustand gesetzt
zIxz0 Einer der Startzustände
n2t=0zzxztxz(t+1) Zu jeder Zeit führt ein Zustand in einen Folgezustand
n1t=0zVxzt Zu einer Zeit ist ein verbotener Zustand erreicht

Dieses System darf keine Lösung haben.

BDD

nichtreduzierter BDDs

  • Gerichtet
  • Azyklisch
  • Knoten auf Pfad mit fixer Ordnung (es dürfen welche fehlen)

reduzierte BDDs (zusätzlich)

  • Keine Kanten mit identischen Start und Ziel (gleich ist OK)
  • Keine Redundanz (isomarphen Teilgraphen)
  • Nur True und False als Blätter (jeweils max. 1x)

nichtreduziert → reduziert

  • Knoten mit identischen Nachfolgern entfernen
  • Knoten: Name gleich & Nachfolger gleich ⇒ verschmelzen
  • True/False verschmelzen.

BDDs sind eindeutig: Gleiche Funktion ⇒ isomorphe BDDs

Shannon-Zerlegung: f=(xf[x:=])(¬xf[X:=])

uni/6/fsv/start.1405019163.txt.gz · Last modified: 2020-11-18 18:10 (external edit)