Jean-Michel Muller's Iteration - ein Lehrstück zu Rundungsfehlern


Iteration: (nicht definiert falls x=0 or y=0)
  F(x,y) = (y, a+b+c - (ab+bc+ca - abc/x) /y )
 

Fixpunkte:    (a,a), (b,b), (c,c)
Invariante Kurven:
  y = a+b - ab/x (magenta/grün)
  y = b+c - bc/x, y = c+a - ca/x (rot)

Die roten Kurven sind anziehend für (c,c)
und abstoßend für (a,a), (b,b)
Die magenta/grüne Kurve ist anziehend
für (b,b) und abstoßend für (a,a).

Wegen Rundungsfehlern bei reellen Rechnungen
können iterierte Punkte nicht auf der magenta/
grünen Kurve wandern und gegen (b,b)
konvergieren, sie wandern schließlich alle
nach (c,c) - abwarten bis Start/Stop stopped!

Für rationale Punkte auf y = a+b - ab/x kann
man Code schreiben, der beliebig große ganze
Zahlen benutzt und Iteration nach (b,b) erlaubt.
Kein Programm iteriert (pi, a+b-ab/pi) richtig.