[x0,…] + [y0,…] = [z0,…]
Hilfsvariablen:
[c0,…] = Überträge
- Anfang:
HALFADD(x0, y0;z0, c0)
- Schritt:
∀i : FULLADD(xi, yi, ci;zi, ci+1)
- Ende: cw = 0 (kein Überlauf)
Realisierung:
-
HALFADD(x, y;z, c)(z↔xor(x, y))∧(c↔x∧y)
-
FULLADD(x, y, c;z, c')...
(zweimal
HALFADD)
dafür CNF ohne Hilfsvariablen!
2014-07-06