uebung4

Aus ProgrammingWiki

Herleitung der Funktionen für x und y aus z = (x; y)

z =\left(\frac{(x+y)(x+y+1)}{2} \right) +y = t + y; w = x + y; x,y,z \in \N, w,t \in \R_{0}^{+}


t = z - y = \frac{w(w+1)}{2} = \frac{w^{2}+w}{2}

Die Lösung von w^{2} + w + 2t = 0

für positives w ist w = \frac{\sqrt{8t+1}-1}{2} Außerdem gilt t \leq z = t + w - x \leq t + w \leq t + w + 1 = \frac{w^{2}+w}{2} + w + 1 = \frac{(w+1)^{2} + (w+1)}{2}

Unter verwendung von z \leq \frac{(w+1)^{2} + (w+1)}{2} können wir w nach oben abschätzen.

w = \frac{\sqrt{8t+1}-1}{2} < \frac{\sqrt{8z+1}-1}{2}< w+1


Um die beiden natürlichen Zahlen x und y aus z zu gewinnen, ist als erstes w = \lfloor \frac{\sqrt{8z+1}-1}{2} \rfloor zu berechnen. Dann ergeben sich

t = \frac{w(w+1}{2} und y = z -t sowie

x = w - y