0 Daumen
385 Aufrufe

Aufgabe:

xn+1 = x1 XOR x2 XOR ....XOR xn ist genau die even parity dieser n bits.


Mein Ansatz:

Induktion

I,A

n=2

aba XOR b
000
011
101
110


Für n = 2 stimmt das.

I.S n -> n+1

xn+1 = (a XOR b) +1 = (a XOR b) XOR c

abca XOR b(a XOR b) XOR c
00000
00101
01011
01110
10011
10110
11000
11101
Avatar von

1 Antwort

0 Daumen

Antwort mit KI erzeugt

Aufgabe:

Die Aussage, dass \(x_{n+1} = x_1 \oplus x_2 \oplus \ldots \oplus x_n\) genau die even parity dieser \(n\) Bits repräsentiert, soll überprüft werden. Dazu wurde der Ansatz mittels Induktion gewählt.

Induktionsanfang (I.A):

Für \(n=2\), wird die Gültigkeit mittels der gegebenen Tabelle überprüft:

| \(a\) | \(b\) | \(a \oplus b\) |
| ----- | ----- | ------------- |
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |

Hier sieht man, dass \(a \oplus b\) genau dann 0 ist, wenn eine gerade Anzahl von Einsen in den Eingangsbits existiert, und 1, wenn eine ungerade Zahl von Einsen vorliegt. Somit ist die even parity für \(n=2\) erfüllt.

Induktionsschritt (I.S.):

Annahme: Die beim Induktionsschritt gemachte Formulierung \(x_{n+1} = (a \oplus b) + 1 = (a \oplus b) \oplus c\) scheint nicht korrekt, da der Schritt von \(n\) zu \(n+1\) korrekterweise bedeuten müsste, dass ein weiteres Bit mittels XOR verknüpft wird, also:
\(x_{n+2} = x_n \oplus x_{n+1}\)

Daher sollte der Induktionsschritt wie folgt korrigiert und angewendet werden:

Annahme: Wir haben gültige even parity für \(n\) Bits, dies bedeutet, \(x_{n+1} = x_1 \oplus x_2 \oplus \ldots \oplus x_n\) entspricht 0 für eine gerade Anzahl von Einsen und 1 für eine ungerade Anzahl von Einsen.

Zu zeigen: Nach Hinzufügen eines weiteren Bits (\(x_{n+1}\)) bleibt die Eigenschaft der even parity erhalten, d.h. \(x_{n+2} = x_1 \oplus x_2 \oplus \ldots \oplus x_{n+1}\) bildet die even parity für \(n+1\) Bits.

- Falls \(x_{n+1}\) gleich 0 ist, ändert sich die Anzahl der Einsen im Ausdruck nicht, und \(x_{n+2}\) entspricht \(x_{n+1}\), was die Annahme der even parity erfüllt.
- Falls \(x_{n+1}\) gleich 1 ist, wechselt die Parität der Anzahl von Einsen von gerade zu ungerade oder umgekehrt. Das XOR mit einer 1 (d.h., das Hinzufügen einer 1) wechselt daher genau die Parität von 0 auf 1 oder von 1 auf 0, was wiederum der Definition der even parity entspricht.

Schlussfolgerung:

Da für den Induktionsanfang mit \(n=2\) die even parity bewiesen wurde und mittels Induktionsschritt gezeigt wurde, dass bei Hinzufügen eines weiteren Bits die even parity erhalten bleibt, ist bewiesen, dass \(x_{n+1} = x_1 \oplus x_2 \oplus \ldots \oplus x_n\) genau die even parity für \(n\) Bits darstellt.
Avatar von

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community