Wersja z 2014-06-12

Część poprzednia Spis treści Część następna

Definicje wybranych pojęć matematycznych

Funkcja

Jak to mówią zwykle współcześni matematycy, istnieją różne określenia funkcji, ale tylko jedno „ścisłe”. Pozostałe określa się złośliwie jako intuicyjne lub naiwne. Tymczasem to te właśnie „naiwne” sposoby rozumienia funkcji mają największą wartość praktyczną, także przy rozwiązywaniu problemów z różnych działów matematyki.

Słowo łacińskie functio oznacza działanie, wykonywanie, i dlatego właśnie rozumienie funkcji jako rodzaju działania (w sensie niematematycznym) jest najwłaściwsze (niezależnie od poronionych idei matematyków, którzy starają się jak mogą, by to stosunkowo jasne pojęcie maksymalnie zaciemnić). W tym najpierwotniejszym i całkiem właściwym rozumieniu światło żarówki możemy uznać za funkcję dopływającego prądu, obroty wiatraka za funkcję wiatru, a zakres władzy danego pracownika za funkcję zajmowanego przezeń stanowiska (umownie zresztą nazywanego także funkcją).

W matematyce jednak interesować nas będą funkcje, które operują na liczbach, i których rezultatem także są liczby. Tego rodzaju funkcje nazywamy funkcjami liczbowymi. Liczby, na których funkcja operuje, nazywamy argumentami funkcji (lub wartościami argumentu funkcji), zaś liczby, które otrzymujemy w wyniku działania funkcji, nazywamy wartościami funkcji. Zwykle przez liczby rozumiemy tutaj liczby rzeczywiste. Wygodnie jest wyobrazić sobie przy tym funkcję jako rodzaj „czarnej skrzynki” czy też po prostu pudełka, na przykład takiego: wrzucamy do niego 1 – wówczas wyskakuje 1, wrzucamy 2 – wyskakuje 4, wrzucamy 3 – wyskakuje 9, itd. Oczywiście tak argumenty, jak i wartości funkcji mogą być (w ogólnym przypadku) dowolnymi liczbami, niekoniecznie naturalnymi. W typowych przypadkach argumenty oznacza się literą `x`, a wartości funkcji literą `y`.

Żądamy też, żeby działanie funkcji rozumianej jako „pudełko” było powtarzalne. Ilekroć użyjemy argumentu o tej samej wartości, np. 3, tylekroć powinno nam „wyskoczyć” na przykład 9 (oczywiście inna funkcja może dla argumentu 3 zwracać np. wartość `1/13`). Funkcja nie może się zatem „psuć” tak, by jej wynik okazał się przypadkowy.

W praktyce szkolnej używa się takiej oto definicji funkcji: funkcją nazywamy przyporządkowanie, które każdemu elementowi zbioru `X` (zwanego dziedziną) przyporządkowuje dokładnie jeden element zbioru `Y` (zwanego przeciwdziedziną). Określenie to, wyśmiewane przez wyznawców kultu teorii mnogości jako „naiwne” bądź „nieścisłe”, rzeczywiście nie obejmuje wszystkich wypadków, i opisuje raczej coś, co można by nazwać funkcją w sensie klasycznym.

Funkcje analityczne

W wielu działach matematyki zajmujemy się jedynie takimi funkcjami, których działanie da się opisać przy pomocy jakiegoś wzoru. Tylko funkcje dane wzorem, zwane też analitycznymi, bywają bowiem przewidywalne, tj. możemy zawsze odgadnąć, jakie są ich wartości także dla argumentów, których dotąd nie poddawaliśmy przekształceniom. W rzeczywistości bywa i tak, że znamy tylko wartości odpowiadające określonym argumentom, i wówczas funkcja ma charakter nieanalityczny – jednak wynika to tylko z naszej niewiedzy, a nie z faktu, że jakaś funkcja rzeczywiście nie ma wzoru. Funkcja analityczna stanowi kompletny opis informujący, co się stanie z dowolnym dozwolonym argumentem, który zostanie użyty – i tym właśnie różni się od działania, które ma charakter jednostkowy. W dalszym ciągu zajmiemy się tylko takimi właśnie funkcjami analitycznymi. Biorąc pod uwagę, że funkcja to całość wszystkich dopuszczalnych wypadków działania przewidywalnego dla każdej dozwolonej wartości argumentu, możemy przyjąć, że wzór reprezentuje funkcję analityczną. Stąd właśnie ma sens mówienie o funkcji `x^2`, o funkcji `sin x`, lub o funkcji `"arctg" x`.

Wzór może decydować o tym, jakie liczby mogą, a jakie nie mogą być argumentami funkcji. Na przykład funkcja zwracająca odwrotność pobranej liczby `1/x` nie zadziała, jeśli będziemy próbowali opisanej operacji poddać liczbę 0, bowiem dzielenie przez zero nie jest wykonalne. Zbiór wszystkich możliwych argumentów funkcji nazywamy jej dziedziną; z dziedziny wykluczamy liczby, których nie możemy poddać przekształceniu, bo wzór funkcji na to nie pozwala. Innymi słowy, wzór funkcji analitycznej wpływa na jej dziedzinę (nie odwrotnie). Dla oznaczenia dziedziny używa się w nauce szkolnej litery D. Sensowniej jest jednak dziedzinę oznaczać literą X, bo jest to zbiór wszystkich wartości argumentu `x`.

Stara, dobra szkoła matematyczna głosi, że zbiór wszystkich możliwych wartości funkcji nazywamy jej przeciwdziedziną (i tak można wciąż przeczytać w popularnych podręcznikach teorii mnogości, zob. też Wikipedia) lub zakresem. Obecnie niektórzy matematycy próbują te pojęcia oddzielić od siebie, co nie znajduje jednak żadnego uzasadnienia, o czym za chwilę. Przeciwdziedzinę oznacza się u nas często odwróconą literą D (konieczny glif nie występuje w fontach komputerowych), jednak słuszniej jest używać litery Y, gdyż przeciwdziedzina jest zbiorem wartości funkcji `y`.

Funkcję argumentu `x` zapisuje się symbolicznie jako `f(x)`, a także `g(x)`, `h(x)` itd., przy czym symbole te (reprezentujące wzór funkcji) można w równaniach zastąpić symbolem `y`, oznaczającym wartość funkcji. Piszemy także równanie `y = f(x)` zaznaczając, że choć wartości po obu stronach równania są równe, to jednak ich symbole nie są tożsame. Wzór funkcji może mieć na przykład postać `f(x) = x^2`; równie dobrze możemy wówczas zapisać równanie `y = x^2`. Czasem nie używamy odrębnej litery `f`, i piszemy `y(x)`. Wówczas ogólnym zapisem równania funkcji jest `y = y(x)`.

Symbol `f(x_0)` oznacza nie wzór funkcji, ale operację poddania przekształceniu pewnej konkretnej wartości argumentu `x_0`, w wyniku czego otrzymamy nieznaną na razie wartość funkcji `y_0` (faktycznie zatem oznacza po prostu działanie). Dla funkcji `y = x^2` możemy zapisać: `f(1) = 1`, `f(2) = 4`, `f(3) = 9` itd. Poddając `x = 1` operacji (działaniu) `x^2` otrzymamy bowiem `1`, podobnie poddając tejże operacji 2 otrzymamy 4, itd.

Wartości argumentu `x` i odpowiadające im wartości funkcji `y` możemy potraktować jako współrzędne punktów na płaszczyźnie kartezjańskiej. Punkty te utworzą wykres funkcji. Jeśli dziedziną funkcji jest zbiór ciągły (czyli na przykład gdy jest to zbiór liczb rzeczywistych lub jakiś jego podzbiór), i zbiór wartości funkcji również jest zbiorem ciągłym, wówczas funkcja może być i zwykle jest ciągła. Istnieje silniejszy warunek ciągłości, o którym będzie mowa dalej. Wykres funkcji ciągłej ma postać linii, a zatem da się wykonać bez odrywania ołówka od papieru.

Dziedzina funkcji może być dodatkowo ograniczona (zawężona, obcięta) nie tylko przez właściwości wzoru, ale na przykład przez warunki zadania. „Zwykłą” dziedziną funkcji `y = 1/x` jest zbiór `RR setminus {0}`, i zbioru tego nie można poszerzyć o zero (bo dzielenie przez zero jest niewykonalne), ale można go dodatkowo ograniczyć. Możemy na przykład rozpatrywać funkcję daną wzorem `y = 1/x`, której dziedziną jest `RR^+`. Zgodnie ze współczesnymi poglądami, opartymi na teorii mnogości, będzie to już inna funkcja niż ta bez dodatkowego ograniczenia dziedziny (ograniczona tylko właściwościami wzoru). Trzeba sobie jednak postawić pytanie, czy takie stanowisko jest słuszne z punktu widzenia zarówno logicznego, jak i pragmatycznego.

Zwykle dziedziną funkcji „szkolnej” jest zbiór liczb rzeczywistych albo jakiś jego podzbiór. Nie ma jednak często powodów, by nie analizować funkcji np. o argumentach zespolonych. Zwykle wówczas zaznaczamy, że chodzi o funkcję zmiennej zespolonej. Z uwagi na naturę liczb zespolonych sporządzenie wykresu takiej funkcji może okazać się bardzo trudne. Do przedstawienia liczby zespolonej potrzeba bowiem dwóch wymiarów. Jeśli funkcja ma zespolone argumenty i zespolone wartości, jej wykres wymagałby czterech wymiarów. Czterowymiarowa nadprzestrzeń jest czymś zupełnie obcym naszemu doświadczeniu, bo nasz świat ma tylko 3 wymiary, które potrafimy postrzegać zmysłami. Znacznie łatwiej jest sporządzić wykres funkcji, której argumenty są rzeczywiste, a wartości zespolone, bo wtedy wystarczają trzy wymiary, a te są dla nas względnie łatwo dostępne. Poniżej będziemy koncentrować się na funkcjach zmiennej rzeczywistej i o rzeczywistych wartościach; wszelkie odstępstwa od tej zasady będą każdorazowo sygnalizowane.

Możemy także zamiast zbioru liczb rzeczywistych wziąć jako dziedzinę funkcji zbiór liczb wymiernych, całkowitych czy naturalnych, albo jakiś ich podzbiór. Na przykład możemy utworzyć funkcję `y = 1/x`, której dziedziną będzie `NN^+`. Zauważmy, że zbiór argumentów takiej funkcji nie jest ciągły. Podobnie jak w przypadku funkcji zmiennej zespolonej, musimy wyraźnie zaznaczyć, że chodzi nam na przykład o funkcję zmiennej wymiernej. Warto przy okazji zwrócić uwagę, że czymś całkiem innym jest funkcja wymierna.

Możemy wreszcie wziąć dwie funkcje (lub większą ich ilość) i ograniczyć ich dziedziny tak, by nie miały części wspólnych (by na siebie nie nachodziły). Z tak spreparowanych funkcji możemy utworzyć jedną, nową, której działanie opisywać będą różne wzory w zależności od tego, jakie wartości przyjmuje argument. Na przykład:

`{(y = x^2, "dla" x in ("−"infty, 2)),(y = 3, "dla" x = 2),(y = x, "dla" x in (2,"+"infty)) :}`

Funkcje tego rodzaju analizuje się dość często przy testowaniu pewnych pojęć matematycznych, na przykład pojęcia granicy.

Zmienne

Liczby `x`, `y` określane bywają ogólnie jako zmienne. Przy zwyczajnym, dotąd omawianym rozumieniu funkcji `x` jest zmienną niezależną, bo jej wartość od niczego nie zależy. Zmienna `y` jest natomiast nazywana zmienną zależną, bo jej wartość zależy od tego, jaki argument uległ działaniu funkcji (czyli: jaką liczbę podstawiliśmy do wzoru za `x`).

Funkcję daną wzorem możemy (nie do końca słusznie) utożsamić także z jej wykresem. Wykres to geometryczne przedstawienie funkcji jako zbioru punktów o współrzędnych `x`, `y` takich, że `y = f(x)`. Mówimy, że do wykresu funkcji należą punkty spełniające równanie funkcji. W typowych przypadkach wykresem funkcji jest linia na płaszczyźnie. Są jednak wypadki, gdy wykres funkcji składa się z pojedynczych punktów, jak to wspomniano wyżej.

Zamiast typowych współrzędnych kartezjańskich `x`, `y`, funkcja dana wzorem może być określona przy pomocy współrzędnych biegunowych. Zmienną niezależną jest wówczas kąt skierowany `phi`, liczony od pewnej ustalonej półprostej, natomiast zmienną zależną jest odległość `r` punktu wykresu funkcji od początku tejże półprostej. Taka funkcja ma postać ogólną `r = r(phi)`. Postać taka jest szczególnie wygodna, gdy wykresem funkcji jest spirala.

Istnieją funkcje, które wymagają nie jednej zmiennej niezależnej, ale większej ich ilości. Na przykład zapis `z = f(x,y)` oznacza funkcję dwóch zmiennych niezależnych `x` i `y` (zmienną zależną jest tutaj `z`), zaś zapis `w = f(x,y,z,t,u,v)` oznacza funkcję sześciu zmiennych niezależnych (`x`, `y`, `z`, `t`, `u`, `v`; zmienną zależną jest tutaj `w`). Wykres funkcji dwóch zmiennych niezależnych przybierze postać powierzchni w trójwymiarowej przestrzeni. Można też za zmienne przyjąć kąty i odległości w przestrzeni. I tak, `r = r(phi, theta)` oznacza funkcję dwóch zmiennych niezależnych we współrzędnych sferycznych, zaś `rho = rho(phi, z)` to funkcja dwóch zmiennych niezależnych we współrzędnych walcowych.

Funkcje w postaci parametrycznej i uwikłanej

Czasami bywa tak, że wzór funkcji podany jest w postaci parametrycznej przy pomocy układu równań następującej postaci:

`{(x = x(t)),(y = y(t)):}`

Funkcja tego typu ma jedną zmienną niezależną `t`, zwaną parametrem, i dwie zmienne zależne: `x` i `y`. Jej wykres możemy wykonać w układzie współrzędnych na płaszczyźnie, przy czym nie jest to zadanie łatwe, gdyż podstawiając kolejne wartości `t` otrzymujemy punkty `P=(x,y)` w sposób często dość chaotyczny (przynajmniej z pozoru). Istnieją też funkcje, w których obok jednego parametru (zmiennej niezależnej) występuje trzy lub więcej zmiennych zależnych, a także funkcje, w których występują dwie lub więcej zmiennych zależnych obok dwóch lub więcej zmiennych niezależnych.

Funkcja dana jest w postaci uwikłanej, jeśli obie jej zmienne `x`, `y` są wzajemnie zależne. Ogólnie taką funkcję zapisujemy w postaci `F(x,y)=0`. Przykładami funkcji uwikłanych są `(x^2 + y^2)^2 - 4x^2 - 2y^2 + 3 = 0` (jej wykresem jest krzywa Perseusza) oraz `x^2 + y^2 - 25 = 0` (jej wykresem jest okrąg). Funkcje uwikłane ani parametryczne nie spełniają szkolnej definicji funkcji; trzeba jednak koniecznie podkreślić, że nie spełniają one także definicji teoriomnogościowej, o której niżej. Mimo to tradycyjnie również nazywa się je funkcjami.

Funkcje dane w postaci uwikłanej czasem (nie zawsze) dają się rozwikłać, czyli zapisać w postaci jawnej `y = f(x)`, podobnie parametr `t` udaje się czasem wyrugować, otrzymując postać uwikłaną lub jawną. Niekiedy z jednej funkcji uwikłanej otrzymujemy dwie funkcje jawne, np. podane wyżej równanie okręgu można sprowadzić do jawnych funkcji `y = sqrt(25 - x^2)` oraz `y = -sqrt(25 - x^2)`.

Teoriomnogościowa definicja funkcji

We współczesnych kursach matematyki bardzo często wprowadza się definicję pochodzącą od Peano, opartą na teorii mnogości, zgodnie z którą funkcja jest szczególnym rodzajem relacji, rozumianej jako podzbiór iloczynu kartezjańskiego zbiorów `X` i `Y`. Aby relacja była funkcją, wystarczy według zwolenników tego podejścia, by każdy element zbioru `X` był wykorzystany w owej relacji dokładnie raz. Innymi słowy, funkcja musi być określona dla każdego `x`, i by każdej wartości `x` odpowiadała dokładnie jedna wartość `y`.

Zbiór `X` nazywa się przy tym dziedziną lub zbiorem argumentów, natomiast zbiór `Y` nazywany jest przeciwdziedziną (ale niekoniecznie zbiorem wartości). Jeśli funkcja `f` przekształca (odwzorowuje) zbiór `X` na zbiór `Y`, oznacza to, że nie tylko każdy element zbioru `X`, ale także każdy element zbioru `Y` został wykorzystany w konstruowaniu rozpatrywanej relacji. Taką funkcję nazywa się suriekcją (wyraz ten pisze się też niezgodnie z regułami polskiej ortografii „surjekcja”) lub z polska funkcją „na”. Przeciwdziedzina suriekcji jest więc jednocześnie jej zbiorem wartości.

Bywa jednak i tak (i nie jest to zabronione z teoretycznego punktu widzenia), że nie wszystkie elementy zbioru `Y` zostały wykorzystane przy konstruowaniu funkcji zgodnie z pomysłami zwolenników teoriomnogościowego traktowania tego pojęcia. Wówczas zbiór wartości zawiera się w przeciwdziedzinie (będąc jej podzbiorem właściwym, tj. nie jest jej równy), a sama funkcja przekształca zbiór `X` w zbiór `Y`, dlatego nazywa się ją po polsku funkcją „w”. Termin ten nie ma odpowiednika międzynarodowego (w szczególności, czymś całkiem innym jest iniekcja, o czym niżej); właściwym odpowiednikiem byłaby nonsuriekcja.

Sama możliwość istnienia funkcji „w” jest dla myślącego człowieka wysoce wątpliwa, jest jednak konsekwencją niepoważnych teoretycznych pomysłów Peano i jego naśladowców. Zwróćmy uwagę na sposób konstrukcji funkcji: najpierw wybieramy dwa zbiory, a potem dopiero tworzymy ich iloczyn kartezjański, i z tego iloczynu wybieramy niektóre elementy o określonych właściwościach. Jeśli na przykład chcemy koniecznie wziąć dwukrotnie zbiór liczb rzeczywistych `RR`, raz jako `X`, drugi raz jako `Y` (bo mamy taki kaprys), a dopiero potem tworzymy iloczyn kartezjański i funkcję `y = x^2`. Przy takim sposobie postępowania otrzymamy rzeczywiście funkcję „w”, bo przecież żadna wartość ujemna nie może być wartością funkcji `x^2`. Innymi słowy, przeciwdziedziną będzie tu co prawda `RR`, ale zbiorem wartości – przedział `(:0, "+"infty)`.

Gdyby od samego początku dobrać inaczej zbiory `X` i `Y`, mianowicie pierwszy jako `RR`, drugi jako `(:0, "+"infty)`, wówczas – zgodnie z pomysłami wyznawców teorii mnogości – otrzymalibyśmy całkiem inną funkcję, choć opisaną tym samym wzorem. Byłaby ona suriekcją, czyli jej zbiór wartości byłby równy przeciwdziedzinie.

Rozpatrzmy teraz inny wypadek. Wybierzmy znowu dwukrotnie zbiór liczb rzeczywistych `RR`, raz jako `X`, drugi raz jako `Y`. Spróbujmy następnie utworzyć funkcję `y = 1/x`. I co stwierdzamy? Otóż nie jest to możliwe! Aby utworzyć funkcję `y = 1/x`, musimy usunąć ze zbioru `X` wartość `x = 0`. Konstrukcja opisana przez Peano i jego naśladowców okazała się więc błędna, nieskuteczna. Utworzyliśmy zbiory `X` i `Y`, ale gdy przyszedł czas na utworzenie funkcji, okazało się, że ze zbioru `X` trzeba coś usunąć! Inaczej stworzenie funkcji nie byłoby możliwe. Dziedziną nie jest więc pierwotne `X`, ale zbiór zmodyfikowany ze względu na wykonalność działania występującego w ciele funkcji.

I teraz pytanie najważniejsze. Jeśli zbiór `X` nie może być dowolny, to jakim prawem mielibyśmy zakładać, że zbiór `Y` może być dowolny? Dlaczego wolno nam usuwać elementy z wcześniej zaplanowanego zbioru `X`, a nie mamy takiego obowiązku wobec zbioru `Y`? Przecież `y` to zmienna zależna, od czego zatem miałyby zależeć te elementy przeciwdziedziny `Y`, które nie byłyby wartościami funkcji (nie należałyby do zbioru wartości)?

Odpowiedź na te pytania jest prosta. Wypadki, gdy przeciwdziedzina obejmuje coś więcej niż zbiór wartości, są tylko i wyłącznie wynikiem chorych pomysłów niektórych odmóżdżonych matematyków. W wypadku funkcji `y = 1/x` zmuszeni jesteśmy ograniczyć dziedzinę do zbioru `X = RR setminus {0}`; dziedziną nie może być zbiór `RR` tak jak na początku planowaliśmy. Z tego samego powodu zmuszeni jesteśmy ograniczyć przeciwdziedzinę do zbioru `Y = RR setminus {0}`; przeciwdziedziną także nie może być zbiór `RR` tak jak pierwotnie planowaliśmy. Gdybyśmy pozostawili element `0` w zbiorze `Y` tak jak to chcą zwolennicy kultu teorii mnogości, nie moglibyśmy nazwać zbioru `Y` przeciwdziedziną, bowiem w ogólności nie miałby on nic wspólnego z funkcją!

Przypomnijmy sobie raz jeszcze określenie relacji (dwuargumentowej). Tam także zaczynamy od zbiorów `X` i `Y`, tworzymy ich iloczyn kartezjański, a następnie zaznaczamy pewien jego podzbiór, i właśnie to on „jest” (tylko w rozumieniu zdehumanizowanych teoretyków) naszą relacją. Teraz usuwamy wszystkie elementy zbiorów `X` i `Y`, które nie zostały wykorzystane, i dopiero to, co pozostało, określamy mianem dziedziny lewostronnej i dziedziny prawostronnej, czasem zresztą nazywanej przeciwdziedziną.

Postępowanie w przypadku funkcji powinno być dokładnie takie samo: bierzemy dwa zbiory, tworzymy ich iloczyn kartezjański, zaznaczamy pewien jego podzbiór, ale tak, by w każdej parze uporządkowanej konkretny element `x` pojawiał się tylko raz, a następnie usuwamy ze zbiorów pierwotnych wszystkie elementy niewykorzystane, i dopiero wówczas mówimy o dziedzinie i o przeciwdziedzinie.

Innymi słowy, nie istnieją funkcje, które nie są suriekcjami, a przeciwdziedzina i zbiór wartości to synonimy. Nie ma potrzeby, by dodawać do przeciwdziedziny elementy niewykorzystane przez funkcję. Mało to, ich dodanie, przy jednoczesnym niedodaniu takich niewykorzystanych elementów do zbioru `X`, byłoby teoretycznie bardzo podejrzane. Albo inaczej: jeśli po zdecydowaniu się na to, jaki wzór opisywać ma naszą funkcję, okaże się, że musimy nałożyć pewne ograniczenia na zbiór `X` (i wbrew początkowym planom nie może to być na przykład zbiór `RR`), to z tego samego powodu nakładamy ograniczenia na zbiór `Y` (w wypadku funkcji `1/x` musimy z niego również usunąć element `0`). Inaczej naszemu działaniu brakować będzie konsekwencji. Będzie ono po prostu nieeleganckie, a więc niedopuszczalne w matematyce.

W istocie spór toczy się tutaj o kwestie definicji. Pierwotny zbiór `A` nie jest jeszcze dziedziną `X` tak długo, jak długo nie zdecydujemy, jaką postać przyjmie funkcja. Podobnie pierwotny zbiór `B` nie jest jeszcze przeciwdziedziną `Y` tak długo, jak długo nie zdecydujemy, jaką postać przyjmie funkcja. Jeśli tworzymy funkcję `y=1/x`, nie możemy w zbiorze `Y` pozostawić elementu `0`, podobnie jak nie pozostawimy w nim trójkąta, wielomianu ani słonia. Takiego zbioru nie możemy po prostu oznaczać `Y`, bo są w nim elementy, które nie mogą być igrekami. Tak, jak musieliśmy wyczyścić zbiór `A`, by móc nazwać go dziedziną i oznaczyć `X`, to tak samo musimy wyczyścić zbiór `B`, by móc nazwać go przeciwdziedziną i oznaczyć `Y`.

Jeśli jednak mimo tych logicznych argumentów z jakiegoś tajemniczego, teoretycznego powodu, mamy jednak podstawy (jakie?), by w przeciwdziedzinie funkcji umieszczać elementy, które nie mają z funkcją nic wspólnego, to w takim razie dlaczego nie możemy pozostawić takich zbędnych elementów w dziedzinie? Skoro zbiór wartości ma być właściwym podzbiorem przeciwdziedziny, to niechże i zbiór argumentów będzie właściwym podzbiorem dziedziny. Na to nie ma zgody, bo wówczas pojęcie dziedziny straciłoby swój sens. Na tej samej zasadzie nie można się godzić na to, by i w przeciwdziedzinie pozostały elementy zbędne, bo wówczas to pojęcie także traci swój sens.

Jeśli każdy element przeciwdziedziny jest przyjmowany co najwyżej raz, funkcję nazywa się iniekcją czyli funkcją różnowartościową. Jeśli funkcja jest jednocześnie suriekcją i iniekcją, wówczas określana jest jako bijekcja czyli funkcja wzajemnie jednoznaczna. Wtedy każdy element przeciwdziedziny jest przyjmowany dokładnie raz. Z powodów przedstawionych powyżej nie ma sensu ani logicznego uzasadnienia rozpatrywanie iniekcji niebędących bijekcjami, bo konstrukcja funkcji, która nie jest suriekcją, jest logicznie wadliwa.

Każda bijekcja jest odwracalna, tzn. istnieje funkcja, której dziedzina odpowiada przeciwdziedzinie funkcji wyjściowej, a przeciwdziedzina odpowiada jej dziedzinie. Funkcja odwrotna jest oczywiście także bijekcją. Tak przynajmniej wygląda to z teoretycznego punktu widzenia. W praktyce bowiem odwrócić można także wiele funkcji „nieodwracalnych”, czy to poprzez ograniczenie ich dziedziny, czy też poprzez użycie funkcji uwikłanej.

Dalsze problemy z teoriomnogościową definicją funkcji

Modna ostatnio definicja funkcji, kultywowana przez wyznawców teorii mnogości, jest nie tylko niepragmatyczna i „nieelegancka” (jak pokazano wyżej), ale do tego obarczona dyskwalifikującym błędem logicznym: jest to mianowicie definicja zbyt wąska, nieobejmująca wszystkich bytów, które określa się jako funkcje. Jest doprawdy rzeczą zadziwiającą, jak wielu współczesnych matematyków udaje, że nie widzi tego problemu, a mimo to chełpią się, że dziedzina wiedzy, którą się zajmują, ma status królowej nauk. Nie wiadomo, co jest przyczyną tego stanu rzeczy. Może zakłamanie, hipokryzja, a może snobizm, uleganie modzie, może wreszcie feudalne stosunki panujące w nauce, w których światła jednostka nie może wytknąć nawet oczywistego błędu swojemu mentorowi, bo kosztować ją to będzie złamanie kariery. Po prostu, jeśli ktoś chce istnieć w matematycznym światku, musi schować głowę w piasek i powtarzać nonsensy głoszone przez tzw. autorytety.

Po tej gorzkiej refleksji przejdźmy jednak do meritum. Otóż definicja teoriomnogościowa ma już problem z funkcjami wielu zmiennych niezależnych. Jak bowiem jej zwolennicy mają dopasować do wyznawanej przez siebie definicji na przykład funkcję `z = x/y`? Przecież funkcja ta ewidentnie czerpie argumenty z dwóch dziedzin, w dodatku różnych, bo `X = RR`, za to `Y = RR setminus {0}`. Aby na siłę dopasować tę funkcję do definicji, dokonuje się z pozoru sprytnego obejścia problemu, tworząc najpierw iloczyn kartezjański `X xx Y`, i ten właśnie iloczyn uważając za dziedzinę. Często nawet zmienia się przy tym oznaczenia zmiennych: zamiast `x` pisze się `x_1`, zamiast `y` pisze się `x_2`, wreszcie zamiast `z` pisze się `y`. Wówczas dziedzina `X = X_1 xx X_2`, a przeciwdziedziną jest `Y`.

Wszystko jest piękne do momentu, gdy zadamy pytanie, dlaczego z funkcji `z = x/y` mamy zrobić akurat `y = x_1/x_2`, a nie na `y = x_2/x_1`. Krótko mówiąc, dlaczego zmienne zależne mają tworzyć pary uporządkowane, których pierwszym członem ma być zmienna, którą pierwotnie oznaczyliśmy jako `x`, a nie zmienna, pierwotnie oznaczona jako `y`. Przy zapisie pierwotnym `z = x/y` obie zmienne niezależne są względem siebie równoważne, i żadna z nich nie jest „pierwsza” cokolwiek miałoby to oznaczać. Tymczasem zapis `y = x_1/x_2` nadaje zmiennym niezależnym kolejność, hierarchię, która oryginalnie nie była w ogóle zamierzona, i która tak naprawdę nie jest do niczego potrzebna.

Zupełnie już karkołomne jest usiłowanie zmieszczenia funkcji uwikłanej w teoriomnogościowej definicji. Najczęściej istnienia takich funkcji się po prostu nie zauważa, tymczasem występują one naprawdę w rzeczywistości, tj. w otaczającym nas świecie fizycznym. Ciekawy przykład podaje Wikipedia. Otóż przy połączeniu opornika i diody związek między napięciem `U` a natężeniem prądu `I` jest następujący: `U = I * R + c * ln(I/I_S + 1)`, gdzie `R` oznacza opór, a `c` oraz `I_S` to pewne stałe. Kłopot polega jednak na tym, że to natężenie zależy od napięcia, a nie odwrotnie. Tymczasem wzoru nie da się zapisać w postaci `I = f(U)`, to znaczy niewątpliwej funkcji (każdej dozwolonej wartości napięcia odpowiada zawsze tylko jedna, ściśle określona wartość natężenia) nie da się rozwikłać.

W wypadkach takich jak powyżej można jeszcze utrzymywać, że przecież nie musi koniecznie istnieć wzór `y = f(x)`, skoro wyrażenie `x = g(y)` jest z jakichś powodów nieodwracalne. Gorzej jednak, gdy jednemu argumentowi `x` może odpowiadać więcej niż jedna wartość `y`. W opinii wielu niedouczonych i nieoczytanych matematyków (w tym pracowników wyższych uczelni!) tego typu wypadki nie są funkcjami (a studenta, który się z nimi nie zgadza, obdarowują oceną niedostateczną), tymczasem wiele podręczników wymienia jako jeden z rodzajów funkcje wielowartościowe, określane też jako wieloznaczne (zob. np. Krysicki W., Włodarski L., Analiza matematyczna w zadaniach, t. 2, str. 59). Są to funkcje, w których każdej wartości argumentu przyporządkowany został jednoznacznie pewien podzbiór przeciwdziedziny, a nie pojedynczy jej element. Moc takich podzbiorów nie musi być taka sama dla różnych wartości argumentu. Przykładem niech będzie funkcja `Q(n)`, która każdej liczbie naturalnej dodatniej przyporządkowuje zbiór jej naturalnych dzielników. Dla `n = 1` wartością tej funkcji jest `Q(1) = {1}`, dla `n = 2` mamy `Q(2) = {1, 2}`, a dla `n = 8` mamy `Q(8) = {1, 2, 4, 8}`.

Dzięki funkcjom wieloznacznym możliwe jest odwracanie funkcji, które nie są wzajemnie jednoznaczne. Mało to, możemy wówczas otrzymać funkcje nieskończenie wielowartościowe. Utwórzmy na przykład funkcję Arcsin `x`, której wartością będzie zbiór wszystkich liczb `y` takich, że `sin y = x`. Wprowadzenie zbiorów jako wartości funkcji jest jednak tylko technicznym wybiegiem, który ma za zadanie dopasować pojęcie funkcji wieloznacznej do teoriomnogościowego określenia funkcji. Niestety, zabieg ten jest również sztuczny i nie zawsze możliwy. Zauważmy tylko, że przedstawiona definicja sugeruje, że każdemu argumentowi przyporządkowana jest jedna wartość funkcji, będąca określonym zbiorem. Tymczasem już nawet nazwa „funkcja wielowartościowa” sugeruje całkiem co innego.

Czy zatem funkcja wieloznaczna jest synonimem dowolnego typu relacji między dwiema zmiennymi? Niekoniecznie. Po pierwsze, `x` jest wciąż zmienną niezależną, a `y` zależną. Po drugie, choć jednej wartości `x` możemy przyporządkować wiele wartości `y` (o czym mówi nazwa „funkcja wielowartościowa”), to jednak nie są to dowolne wartości. Muszą one bowiem spełniać pewną relację wobec `x`, wyrażaną często w postaci funkcji uwikłanej.

Funkcja uwikłana zmiennej `x` może być zdefiniowana jako przyporządkowanie, które każdej wartości `x` należącej do dziedziny przyporządkowuje wszystkie wartości `y`, dla których prawdziwa jest relacja `F(x,y) = 0` (zob. wyżej wymieniony podręcznik Krysickiego i Włodarskiego, strona następna). W szczególnych wypadkach funkcja uwikłana może być jednoznaczna (nawet, jeśli nie udaje się jej rozwikłać), ale w ogólności może być wieloznaczna, tj. jednej wartości `x` może być przyporządkowanych wiele (a nawet nieskończenie wiele) wartości `y`. Zwróćmy uwagę, że w definicji tej nie ma już mowy o podzbiorach, ale o wartościach. I rzeczywiście, oczekujemy przecież, że wartość funkcji będzie liczbą, a nie zbiorem liczb! W żaden sposób nie można jej więc dopasować do teorii mnogości.

Istnieje jeszcze jeden, również sztuczny sposób obejścia problemów z funkcją uwikłaną, pozwalający (w niezgrabny sposób) dopasować to pojęcie do teoriomnogościowej definicji funkcji. Można bowiem założyć, że funkcja uwikłana jest tak naprawdę rozwiązaniem układu dwóch funkcji:

`{(z = f(x, y)), (z = 0):}`

Nie sposób nie zauważyć, jak bardzo sztuczny jest to zabieg. Po pierwsze, wprowadza się tu trzecią zmienną, która tak naprawdę nie jest do niczego potrzebna. Po drugie, zmienna zależna `y` staje się zmienną niezależną. Po trzecie, występuje problem z niepotrzebną hierarchizacją zmiennych (w tym ujęciu) niezależnych `x` oraz `y`, o którym wspomniano wyżej.

Analogiczne problemy sprawiają funkcje przedstawione w postaci parametrycznej, czyli takiej, gdy jednej zmiennej niezależnej (lub kilku takim zmiennym) odpowiadają co najmniej dwie zmienne zależne. Zwolennicy wszechwładzy teorii mnogości najchętniej nie widzieliby w nich w ogóle funkcji, ale równania parametryczne. Dowodzi to ponownie niepraktyczności teoriomnogościowej definicji funkcji.

Funkcja a relacja i działanie

Funkcji nie można utożsamiać z relacją, bowiem relacja łączy zmienne niezależne, natomiast w wypadku funkcji mamy do czynienia przynajmniej z jedną zmienną zależną. Ignorują to często zwolennicy teorii mnogości, traktując funkcję jako rodzaj relacji.

O wiele trudniej jest wyznawcom kultu teorii mnogości odróżnić funkcje od działań. Tymczasem sprawa jest dość prosta. Działanie jest aktem jednorazowym, polegającym na takim przekształceniu argumentów, aby otrzymać wynik. Nawet jeśli zapiszemy je w postaci algebraicznej, tworzymy jedynie wzór działania, i nie traktujemy go całościowo. Funkcję natomiast tworzą wszystkie możliwe argumenty i wartości, jest to więc niejako suma (mnogościowa) wszystkich działań możliwych do przeprowadzenia na danym zbiorze liczb według uprzednio danego wzoru. Działaniem jest zatem obliczenie wartości funkcji odpowiadającej konkretnemu argumentowi (czy zestawieniu argumentów). Funkcja jako całość jest jednak efektem wykonania wszystkich możliwych działań na argumentach.

Najłatwiej różnicę dostrzec z użyciem geometrii. Wynik działania można przedstawić jako punkt o określonych współrzędnych w przestrzeni o właściwej ilości wymiarów. Natomiast funkcję można zobrazować jako strukturę geometryczną, np. linię czy powierzchnię, utworzoną ze wszystkich punktów, których współrzędne odpowiadają wartościom wszystkich zmiennych.

Ciąg jako funkcja

W większości współczesnych podręczników matematyki ciąg definiowany jest zupełnie inaczej niż to podano wyżej, a mianowicie (mówiąc nieściśle) jako funkcja o argumentach, które są liczbami naturalnymi (dodatnimi). Takie określenie ciągu bywa jednak użyteczne tylko w niektórych wypadkach, a do tego stwarza wiele problemów już od samego początku.

Przede wszystkim, rozumiejąc ciąg jako funkcję, wygodnie jest wyróżnić dwa przypadki, o których jak dotąd nie było w ogóle potrzeby wspominać. Bywają mianowicie ciągi nieskończone, tj. zawierające nieskończoną liczbę wyrazów – takie ciągi można istotnie rozumieć jako funkcje określone na zbiorze liczb naturalnych dodatnich. Jednak osobnej definicji wymagają ciągi skończone z `n` elementów – należy je w takim przypadku rozumieć jako funkcje określone na zbiorze `{1, 2, 3, … n}`, a więc na podzbiorze zbioru `NN^+`, który zawiera kolejne liczby naturalne od 1 aż do `n`. Nie można więc twierdzić, że ciąg to funkcja, której dziedziną jest zbiór liczb naturalnych dodatnich.

Po raz kolejny widać tu niefrasobliwość matematyków, który nie umieją dostrzec różnicy między obiektem a jego przedstawieniem. Ciąg jest bowiem obiektem podobnym do zbioru, a nie funkcją (widać to wyraźnie w kombinatoryce); funkcja może być co najwyżej reprezentacją ciągu. Analogicznie powiemy, że wykres nie jest funkcją, lecz jej przedstawieniem (reprezentacją).

Część poprzednia Spis treści Część następna