Istnieje wiele sposobów definiowania funkcji. Czy ktoś może wymyślić co najmniej sześć sposobów, aby to zrobić?

Istnieje wiele sposobów definiowania funkcji. Czy ktoś może wymyślić co najmniej sześć sposobów, aby to zrobić?
Anonim

Odpowiedź:

Oto kilka z głowy …

Wyjaśnienie:

1 - jako zestaw par

Funkcja z zestawu #ZA# do zestawu #B# jest podzbiorem #FA# z #A xx B # tak, że dla każdego elementu #a w A # jest najwyżej jedna para # (a, b) w F # dla jakiegoś elementu #b w B #.

Na przykład:

#{ { 1, 2 }, {2, 4}, {4, 8} }#

definiuje funkcję z #{1, 2, 4}# do #{2, 4, 8}#

3 - Jako sekwencja operacji arytmetycznych

Kolejność kroków:

  • Pomnożyć przez #2#

  • Dodaj #1#

definiuje funkcję z # ZZ # do # ZZ # (lub # RR # do # RR #) które mapy # x # do # 2x + 1 #.

5 - Rekurencyjnie

Na przykład:

# {(F (0) = 0), (F (1) = 1), (F (n + 2) = F (n + 1) + F (n) ”dla„ n> = 0 ”):} #

definiuje funkcję z # NN # do # NN #.

7 - Funkcja zajętego bobra

Mając wystarczająco ekspresyjny abstrakcyjny język programowania ze skończoną liczbą symboli, zdefiniuj #f (n) # jako największą możliwą wartość wydrukowaną przez program końcowy długości # n #.

Taka funkcja jest dobrze udowodniona, ale nie można jej obliczyć.

9 - Jako suma nieskończonej sekwencji funkcji

Na przykład funkcja Weierstrassa, która jest wszędzie ciągła, ale nigdzie różniczkowalna, nie może być zdefiniowana jako:

#sum_ (n = 0) ^ oo a ^ n cos (b ^ npix) #

gdzie # 0 <a <1 #, #b# jest nieparzystą dodatnią liczbą całkowitą i:

#ab> 1 + 3 / 2pi #

10 - Jako szereg mocy z rekurencyjnie zdefiniowanymi współczynnikami

#f (x) = sum_ (n = 0) ^ oo a_n x ^ n #

gdzie współczynniki #na# są zdefiniowane rekurencyjnie.