Accolades worden gebruikt in de notatie van functiedefinities met onderscheid tussen hoofdletters en kleine letters. We zoeken de simpele vraag of deze representatie ook kan worden geëlimineerd en de functie kan worden teruggebracht tot een notatie die het zonder kan. Bijvoorbeeld de functie
$$f: \mathbb{R} \to \mathbb{R}, f(x) = \left\{\begin{matrix} 42, & \text{falls } x = 0 \\ x, & \text{sonst} \end{matrix}\right.$$
met behulp van de vier rekenkundige basisbewerkingen met een term van één regel?
Dat is onmogelijk en dat bewijzen we met behulp van continuïteit.
We beschouwen de reeks \((x_n)\) met \(x_n = \frac{1}{n}\) . Voor deze reeks \( \lim_{ n \to \infty } x_n = \lim_{ n \to \infty } \frac{1}{n} = 0\) . Bovendien, \(\lim_{ n \to \infty } f(x_n) = \lim_{ n \to \infty } \frac{1}{n} = 0 \neq 42 = f(0)\) . Dus \(f\) is discontinu op het punt \(x=0\) d.w.z. in het algemeen discontinu.
Aangezien de som en het product van continue functies weer continu zijn vanwege de kettingclausules, kan men alleen continue functies genereren (d.w.z. in het bijzonder nooit \(f\) ) met behulp van de vier rekenkundige basisbewerkingen.
Als we bijvoorbeeld de discontinue signum-functie toestaan, kunnen we zo'n notatie gemakkelijk vinden. Dan namelijk
$$f: \mathbb{R} \to \mathbb{R}, f(x) = sgn^2(x-42)+42.$$
Voor een algemene functie \(f\) met hoofdletter onderscheid geldt
$$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).$$
Aan de andere kant, als je naar functies in programmeertalen kijkt, kunnen vertakkingen worden opgelost. In PHP kan bijvoorbeeld de signum-functie worden toegewezen:
e367d0ca10c4f0ac43640ad7fd1b3f0d
\(f\) kan ook worden weergegeven zonder if / else-besturingsstructuren met:
e367d0ca10c4f0ac43640ad7fd1b3f0d
Als je het zonder vergelijkingsoperatoren wilt stellen, kun je nog een stap verder gaan en jezelf onderdompelen in de prachtige wereld van bitwise-operators:
e367d0ca10c4f0ac43640ad7fd1b3f0d