0 Daumen
690 Aufrufe

Gibt man bei wolframalpha folgendes ein

x^4 - 52*x^3 - 56*x - 364 = 0 mod 71

wird das korrekte Ergebnis x = 31 und x = 61 ausgegeben.

Wie rechnet wolframalpha das? Anders gefragt wo finde ich ein numerisches Verfahren, um Nullstellen eines Polynoms über einer Restklasse zu berechnen ?

Avatar von 3,4 k

Z/71Z ist ein (sehr kleiner) endlicher Körper. Endliche Körper haben den Vorteil, dass es Algorithmen gibt die jedes Polynom über ihnen deterministisch und in endlicher Zeit faktorisieren können:

https://en.m.wikipedia.org/wiki/Factorization_of_polynomials_over_finite_fields

Da dieser Körper aber wirklich sehr klein ist: einfach ausprobieren

2 Antworten

+1 Daumen

hm,

durch ausprobieren?

numerisch sind die 70 fälle schnell durchgelaufen…

Avatar von 21 k

Mich würde ein Verfahren mit einem grossen Modulo-Operator interessieren - wenn einfaches Probieren nicht mehr effektiv ist.

Hm,

schau mal unter

https://mathepedia.de/Bairstow-Verfahren.html

zum anderen sind in der praxis die großen modulo-operatoren wohl ehr primzahlen?

+1 Daumen

Hallo,

Der Vorteil für einen Computer, bei Aufgabe dieser Art, besteht darin, dass die Mächtigkeit der Menge, in der sich \(x\) bewegt, ziemlich überschaubar ist. In diesem Fall ist$$x \in \mathbb M \implies |\mathbb M| = 71$$Und 71 ist für einen digitalen Rechenknecht ein Fliegenschiss im Wind!

Will sagen: Die einfachste Methode ist in diesem Fall wirklich alle 71 Fälle durchzurechnen und nach zu schauen, ob die Gleichung aufgeht. Ich schließe nicht aus, dass es da die eine oder andere trickreiche Vereinfachung gibt, so würe ich z.B. die Gleichung zunächst umformen:$$\begin{aligned} x^{4} - 52\cdot x^{3} - 56\cdot x - 364 &\equiv 0 \mod 71 \\ \implies x^{4} + 19x^{3} + 15 x +62 &\equiv 0 \mod 71 \\ \end{aligned}$$dann rechnet es sich intern leichter mit dem Modulo-Operator, aber ab hier kann schon probiert werden.

Mein PC ist damit in ca. 0,12ms (ms: Millisekunden!) fertig und auch ein \(\mod 9073\) bringt die Lösung 7201 in weniger als 7ms zu Tage.

Gruß Werner

Avatar von 48 k

Mich würde ein Verfahren mit einem grossen Modulo-Operator interessieren - wenn einfaches Probieren nicht mehr effektiv ist.

Frage: Haben solche Berechnungen irgendeinen praktischen Nutzen?

Wo kommen sie in der Realität vor? Verschlüsselung von Daten?

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community