Update
This commit is contained in:
parent
2993dadb56
commit
ff1da66b9c
16 changed files with 117 additions and 11 deletions
19
function.md
19
function.md
|
@ -58,6 +58,25 @@ In context of functions we may encounter the term [composition](composition.md)
|
|||
|
||||
[Calculus](calculus.md) is an important mathematical field that studies changes of continuous functions. It can tell us how quickly functions grow, where they have maximum and minimum values, what's the area under the line in their plot and many other things.
|
||||
|
||||
### Notable Mathematical Functions
|
||||
|
||||
Functions commonly used in mathematics range from the trivial ones (such as the constant functions, *f(x) = constant*) to things like trigonometric functions ([sine](sin.md), [cosine](cos.md), [tangent](tan.md), ...), [factorial](factorial.md), [logarithm](log.md), [logistic](logistic_function.md) sigmoid function, [Gaussian function](gaussian_function.md) etc. Furthermore some more complex and/or interesting functions are (the term function may be applied liberally here):
|
||||
|
||||
- **[Ackermann function](ackermann_function.md)**: Extremely fast growing function with some weird properties.
|
||||
- **[busy beaver function](busy_beaver.md)**: One of [noncomputable](computability.md) functions.
|
||||
- **Minkowski's [questionmark function](questionmark_function.md)**: Weird function with [fractal](fractal.md) properties.
|
||||
- **sin(1/x)**: Simple function that gets [chaotic](chaos.md) close to zero.
|
||||
- **[Dirichlet function](dirichlet_function.md)**: Function that can't really be plotted properly.
|
||||
- **[Weierstrass function](weierstrass_function.md)**: Continuous everywhere, [differentiable](derivative.md) nowhere.
|
||||
- **Drawing with function plots**: there are many formulas whose plots create pictures, for example the **[Tupper's formula](tuppers_formula.md)** is a self-referential formula that can be seen as a function which when plotted draws the text of the formula itself. There are also equations such as the [Batman equation](batman_equation.md) or an equation that draws the symbol of a heart, which can be seen as functions too.
|
||||
- **[Thomae's function](thomaes_function.md)**: Function with a nice [fractal](fractal.md) plot.
|
||||
- **[Cantor function](cantor_function.md)**
|
||||
- **[Riemann zeta function](riemann_zeta_function.md)**: Function that's subject to [Riemann hypothesis](riemann_hypothesis.md), one of the most important unsolved problems in mathematics.
|
||||
- **[Blancmange curve](blancmange.md)**
|
||||
- **[space filling curves](space_filling_curve.md)**
|
||||
- **[Dirac delta function](unit_impulse.md)**: Function representing infinitely short impulse with unit energy.
|
||||
- TODO
|
||||
|
||||
## Programming Functions
|
||||
|
||||
In programming the definition of a function is less strict, even though some languages, namely [functional](functional.md) ones, are built around purely mathematical functions -- for distinction we call these strictly mathematical functions **pure**. In traditional languages functions may or may not be pure, a function here normally means a **subprogram** which can take parameters and return a value, just as a mathematical function, but it can further break some of the rules of mathematical functions -- for example it may have so called **[side effects](side_effect.md)**, i.e. performing additional actions besides just returning a number (such as modifying data in memory, printing something to the screen etc.), or use randomness and internal states, i.e. potentially returning different numbers when invoked (called) multiple times with exactly the same parameters. These functions are called **impure**; in programming a *function* without an adjective is implicitly expected to be impure. Thanks to allowing side effects these functions don't have to actually return any value, their purpose may be to just invoke some behavior such as writing something to the screen, initializing some hardware etc. The following piece of code demonstrates this in [C](c.md):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue