Despre notarea funcțiilor ramificate

Parantezele cretate sunt utilizate în notația definițiilor funcției cu distincție de majuscule. Urmărim întrebarea simplă dacă această reprezentare poate fi, de asemenea, eliminată și funcția poate fi redusă la o notație fără ea. De exemplu, funcția

$$f: \mathbb{R} \to \mathbb{R}, f(x) = \left\{\begin{matrix} 42, & \text{falls } x = 0 \\ x, & \text{sonst} \end{matrix}\right.$$

cu ajutorul celor patru operații aritmetice de bază folosind un termen cu o singură linie?


Acest lucru este imposibil și o dovedim cu ajutorul continuității.

Considerăm secvența \((x_n)\) cu \(x_n = \frac{1}{n}\) . Pentru această secvență \( \lim_{ n \to \infty } x_n = \lim_{ n \to \infty } \frac{1}{n} = 0\) . În plus, \(\lim_{ n \to \infty } f(x_n) = \lim_{ n \to \infty } \frac{1}{n} = 0 \neq 42 = f(0)\) . Deci \(f\) este discontinuu la punctul \(x=0\) adică discontinuu în ansamblu.

Deoarece suma și produsul funcțiilor continue sunt din nou continue din cauza clauzelor de înlănțuire, se pot genera funcții continue numai cu ajutorul celor patru operații aritmetice de bază (în special niciodată \(f\) ).

Cu toate acestea, dacă permitem funcția signum discontinuă, de exemplu, putem găsi cu ușurință o astfel de notație. Atunci și anume

$$f: \mathbb{R} \to \mathbb{R}, f(x) = sgn^2(x-42)+42.$$

Pentru o funcție generală \(f\) cu distincție de caz se aplică

$$f,g,h,a: \mathbb{R} \to \mathbb{R}, f(x) = \begin{Bmatrix} g(x), & \text{falls } a(x) = 0 \\ h(x), & \text{falls } a(x) \neq 0 \end{Bmatrix} = sgn^2 \left(a(x)\right)\cdot h(x) + \left(1-sgn^2\left(a(x)\right)\right)\cdot g(x).$$

Pe de altă parte, dacă vă uitați la funcții în limbaje de programare, ramurile pot fi rezolvate. De exemplu, în PHP funcția signum poate fi mapată cu:

e367d0ca10c4f0ac43640ad7fd1b3f0d

\(f\) poate fi afișat și fără structuri de control if / else cu:

e367d0ca10c4f0ac43640ad7fd1b3f0d

Dacă doriți să faceți și fără operatori de comparație, puteți face un pas mai departe și vă puteți scufunda în frumoasa lume a operatorilor bit-bit:

e367d0ca10c4f0ac43640ad7fd1b3f0d

Înapoi