Kahden joukon $X$ ja $Y$ karteesinen tulo
$X\times Y$ on
joukko, johon kuuluvat kaikki järjestetyt parit $[a,b]$
(tai $(a,b)$) missä $a\in X$ ja $b\in Y$, eli
\begin{equation*}
X\times Y=\set{[a,b] \mid a\in X, \, b\in Y}.
\end{equation*}
Järjestyn pari $[a,b]$ määritelmäksi voidaan ottaa joukko
$\{\{a\},\{a,b\}\}$. (Muitakin mahdollisuuksia on olemassa ja
harvoin
tätä määritelmää todella joudutaan käyttämään.)
Esimerkkejä [+]
$\R\times \R= \R^2$ on taso ja
joukon $\R^2$ alkiot eli tason pisteet
kirjoitetaan tavallisesti muodossa $(x,y)$.
Relaatio [-]
Relaatio on jonkinlainen suhde kahden asian välillä mutta
seuraava joukko-opillinen
määritelmä on täsmällisempi:
Relaatio joukosta $X$ joukkoon $Y$ (tai relaatio joukossa $X$
jos $Y=X$) on karteesisen tulon $X\times Y$ osajoukko.
Relaatio suunnattuna verkkona [+]
Jos joukossa $X$ on äärellisen monta alkiota niin voimme
esittää relaation $W\subseteq X\times X$ verkkona, jossa $X$:n
alkiot ovat verkon solmut ja solmusta $x$ solmuun $y$ on kaari jos
ja vain jos $[x,y]\in W$.
Esimerkiksi näin:
Relaatio on
Voit lisätä tai poistaa kaareja (eli elementtejä
relaatiossa) klikkaamalla ensin kyseisen kaaren lähtösomua ja
sitten kohdesolmua.
Suuntaamattomassa verkossa ei tehdä eroa kaaren lähtö- ja
kohdesolmun välillä.
Esimerkki: Relaatio $<$ [+]
Relaatio joukossa, jossa on äärellisen monta alkiota voidaan esittää
suunnattuna verkkona mutta jos joukossa on äärettömän monta alkiota,
tämä ei yleensä ole toimiva vaihtoehto.
Esimerkiksi $W=\{ [x,y] \,:\, x,\, y \in \R,\,\, x < y\}$
on relaatio joukossa $\R$ ja siten, kuten kaikki relaatiot
joukossa $\R$, tason $\R^2$ osajoukko. Mutta kun puhutaan tästä
relaatiosta "pienempi kuin" niin tarkoitetaan useimmiten
(kuten monessa muussakin tapauksessa)
predikaattia $P(x,y)$, joka on tosi kun $[x,y]\in W$ eli kun
$x< y$ (jolloin merkintä $P(x,y)$:n sijasta tietenkin
kannattaa kirjoittaa $x< y$).
Erilaisia relaatioita joukossa $X$ [-]
Relaatio $W$ joukossa $X$ on
refleksiivinen
jos $[x,x]\in W$ kaikilla $x\in X$.
symmetrinen jos
$[x,y]\in W \to [y,x]\in W$ kaikilla $x$ ja $y\in
X$.
transitiivinen jos
$[x,y]\in W \And [y,z]\in W \to [x,z]\in W$
kaikilla $x$, $y$ ja $z\in X$.
antisymmetrinen jos $[x,y]\in W
\And x\neq y \to [y,x]\notin W$ (eli $[x,y]\in W\And [y,x]\in
W\to x=y$) kaikilla $x$ ja $y\in X$.
asymmetrinen jos
$[x,y]\in W \to [y,x]\notin W$ kaikilla $x$ ja $y\in X$.
totaalinen jos $[x,y]\in W \Or [y,x]\in W$
kaikilla $x$ ja $y\in X$.
Lisäksi sanotaan, että $W$ on
ekvivalenssirelaatio jos $W$ on
refleksiivinen, symmetrinen
ja transitiivinen,
osittaisjäjestys jos $W$ refleksiivinen,
antisymmetrinen ja transitiivinen,
täydellinen järjestys jos $W$ on
osittaisjärjestys ja täydellinen,
hyvinjärjestys jos $W$ on täydellinen
järjestys ja jokaisessa $X$:n ei-tyhjässä osa-joukossa on
pienin alkio.
Usein kirjoitetaan $[x,y]\in W$:n sijasta $xWy$, esimerkiksi
$x\prec y$ eikä $[x,y]\in \prec$.
Esimerkki: Osittaisjärjestys[+]
Olkoon $X$ jokin (ei-tyhjä) joukko ja $\mathcal P(X)$ sen kaikkien
osajoukkojen muodostama joukko (eli ns. potenssijoukko). Joukossa
$\mathcal P(X)$ meillä on relaatio $\subseteq$: $A\subseteq B$ jos
ja vain jos $A$ on $B$:n osajoukko. Tämä relaatio on
osittaisjärjestys koska se on
refleksiivinen: $A\subseteq A$,
antisymmetrinen: Jos $A\subseteq B$ ja $A\neq B$ niin on olemassa
$x\in B$ siten että $x\notin A$ jolloin $B\not\subseteq A$,
transitiivinen: Jos $A\subseteq B$ ja $B\subseteq C$ niin
jokainen $A$:n alkio on $B$:n alkio ja koska jokainen $B$:n alkio
on $C$:n alkio niin jokainen $A$:n alkio on $C$:n alkio, eli
$A\subseteq C$.
Lisäksi tällä relaatiolla on muitakin ominaisuuksia kuten, että
jos $A$, $B\in \mathcal P(X)$ niin joukoille $A$ ja $B$ löytyy
pienin yläraja, eli joukko $C$ siten, että $A\subseteq C$,
$B\subseteq C$ (eli $C$ on yläraja) ja jos $A\subseteq D$ ja
$B\subseteq D$ niin $C\subseteq D$ (eli $C$ on pienin
yläraja). Selvästikin $C=A\cup B$. Vastaavasti löytyy myös suurin
ala-raja, joka (tietenkin?) on $A\cap B$.
Ekvivalenssiluokat [+]
Jos $X$ on ei-tyhjä joukko ja $\sim$ on
ekvivalenssirelaatio
joukossa $X$, niin se jakaa joukon $X$ osajoukkoihin $Y_j\neq
\emptyset$, $j\in J$ joita kutsutaan ekvivalenssiluokiksi
siten, että
$\cup_{j\in J} Y_j=X$,
$Y_j\cap Y_k=\emptyset$ jos $j\neq k$,
$a\sim b \leftrightarrow$ $a$ ja $b$ kuuluvat samaan
joukkoon $Y_j$.
Usein ajatellaan, että kaksi alkiota jotka ovat ekvivalenttia,
eli niiden muodostama pari kuuluu relaatioon $\sim$, ovatkin
''samat'' jolloin joukon $X$ sijasta tarkastellaan joukkoa
$\set{Y_j\mid j\in J}$, jonka alkiot ovat ekvivalenssiluokat.
Esimerkki: Kokonaisluvut
ekvivalenssiluokkina [+]
Joukossa $X=\set{[m,n]\mid m,n\in \N}$ voidaan (kunhan
ensin on määritelty luonnollisten lukujen yhteenlasku) määritellä
ekvivalenssirelaation $\sim$ siten, että $[m_1,n_1]\sim [m_2,n_2]$ jos
ja vain jos $m_1+ n_2= m_2+ n_1$.
Tarkistamme, että kyseessä todella on ekvivalenssiluokka:
Refleksiivisyys: $[m,n]\sim [m,n]$ koska $m+n=m+n$
(relaatio $=$ on refleksiivinen).
Symmetrisyys: Jos $[m_1,n_1]\sim [m_2,n_2]$ niin
$m_1+ n_2= m_2+ n_1$ ja silloin pätee myös (koska $=$ on
symmetrinen) $m_2+ n_1= m_1+ n_2$ joten $[m_2,n_2]\sim
[m_1,n_1]$.
Transitiivisyys: Jos $[m_1,n_1]\sim [m_2,n_2]$ ja
$[m_2,n_2]\sim [m_3,n_3]$ niin $m_1+ n_2= m_2+ n_1$ ja
$m_2+ n_3= m_3+ n_2$. Laskemalla molemmat puolet yhteen saamme
\[
m_1+n_2+m_2+n_3= m_2+n_1+m_3+n_2,
\]
eli
\[
m_1+n_3+(n_2+m_2)=m_3+n_1+(n_2+m_2),
\]
josta seuraa, että
\[
m_1+n_3=m_3+n_1,
\]
eli $[m_1,n_1]\sim [m_3,n_3]$. (Tässä käytimme
luonnollisten lukujen laskusääntöjä $(a+b)+c=a+(b+c)$,
$a+b=b+a$ ja sääntöä $a+c=b+c\to a=b$ ja ainoa
huomioitava asia on, että näitä sääntöjä voi perustella
käyttämättä negatiivisia lukuja.)
Nämä ekvivalenssiluokat ''ovat'' kokonaisluvut koska $m_1-n_1=
m_2-n_2$ täsmälleen silloin kun $m_1+n_2=m_2+n_1$ ja jokainen
kokonaisluku voidaan (monella tavalla) esittää muodossa $m-n$
missä $m$ ja $n$ ovat luonnollisia lukuja.
Funktio [-]
Funktio joukosta $X$ joukkoon $Y$ on sääntö, joka liittää
jokaiseen joukon $X$ alkioon täsmälleen yhden joukon $Y$ alkion.
Relaatio-käsitteen avulla tämä voidaan esittää
seuraavalla tavalla:
$f$ on funktio joukosta $X$ joukkoon $Y$, eli
$f:X\to Y$ jos $f$ on relaatio
joukosta $X$ joukkoon $Y$ (eli karteesisen tulon $X\times Y$:n
osajoukko) siten, että
jokaisella $x\in X$ on olemassa $y\in Y$ siten, että
$[x,y]\in f$.
jos $[x,y_1]\in f$ ja $[x,y_2]\in f$ niin $y_1=y_2$.
Tavallisesti funktio esitetään siten, että $[x,y]\in f$ jos ja vain
jos $y=f(x)$ (vaikka $xf$ tms. voisi olla parempi
merkintätapa jos
luetaan vasemmalta oikealle).
Jos $f:X\to Y$ on funktio niin $X$ on sen määrittely- eli
lähtöjoukko ja $Y$ on sen maalijoukko.
Jos $f:X\to Y$ on funktio ja $A\subset X$ niin $f_{|A}:A \to
Y$ on funktio $f$ rajoitettuna joukkoon $A$ eli relaationa
$f_{|A}=\set{[x,y]\mid [x,y]\in f,\, x\in A}$.
$Y^X=\set{f \mid f:X\to Y}$ eli joukko, johon kuuluvat
kaikki funktiot joiden määrittelyjoukko on $X$ ja
maalijoukko $Y$.
Anonyymit funktiot [+]
Voidaan puhua esim. luvusta $2$ ilman sekaantumisen vaaraa, mutta
jos puhutaan lausekkeesta $x+3$ ei ole välttämättä selvää
tarkoitetaanko funktiota, joka antaa
tulokseksi argumenttinsa johon on lisätty $3$ vai tämän funktion arvo
kun argumentti on $x$. Jos tarkoitetaan funktiota eikä sen arvoa niin
voidaan kirjoittaa
$x\mapsto x+3$
@(x)x+2
function(x){return x+3;}
lambda([x],x+3);
tai jotain muuta vastaavaa.
Injektio, surjektio ja bijektio [-]
Funktio $f:X\to Y$ on
injektio jos $f(x_1)=f(x_2) \to x_1=x_2$ kaikilla $x_1,\,
x_2\in X$,
surjektio jos kaikilla $y\in Y$ on olemassa $x\in X$ siten,
että $f(x)=y$,
bijektio jos se on sekä injektio että surjektio.
Ekvivalentti määritelmä on, että $f:X\to Y$ on injektio jos
$x_1\neq x_2\to f(x_1)\neq f(x_2)$ kaikilla $x_1$, $x_2\in X$ ja
$f$ on surjektio jos arvojoukko $f(X)=\set{f(x)\mid x\in X}$ on
sama kuin maalijoukko $Y$ eli $f(X)=Y$.
Esimerkki: Injektio ja/tai surjektio [+]
Valitse esimerkki:
Listat, lukujonot ja
karteesiset tulot funktioina [+]
Lista $[a,b,c,d]$ on funktio $f$,
jonka määrittelyjoukko on $\{1,2,3,4\}$ (tai $\{0,1,2,3\}$)
siten, että $f(1)=a$,
$f(2)=b$, $f(3)=c$ ja $f(4)=d$.
Lukujono $(a_n)_{n=0}^\infty=(a_0,a_1,a_2,\ldots )$
on funktio $a$, jonka määrittelyjoukko on $\N_0$ siten, että
$a(n)=a_n$ kaikilla $n\in \N_0$.
Jos $X_j$ on joukko jokaisella $j\in J$ missä $J$
on (toinen) joukko niin karteesinen tulo
$\prod_{j\in J} X_j$ on joukko, johon kuuluvat täsmälleen kaikki
funktiot $f:J\to \bigcup_{j\in J} X_j$
siten, että $f(j)\in X_j$ kaikilla $j\in J$.
Yhdistetyt funktiot ja käänteisfunktiot [-]
Jos $f:X\to Y$ ja $g:Y\to Z$ ovat kaksi funktiota
niin $h=g\circ f:X\to
Z$ on funktio $h(x)=g(f(x))$.
Jos $f:X\to Y$, $g:Y\to Z$ ja $h:Z\to W$ ovat funktioita niin
$(h\circ g)\circ f= h\circ (g\circ f)$ joten tämä funktio voidaan myös
kirjoittaa muodossa
$h\circ g\circ f$.
Jos $f:X\to Y$ sellainen funktio, että on olemassa funktio
$g:Y\to X$ siten että $(g\circ f)(x)=x$ ja $(f\circ g)(y)=y$
kaikilla
$x\in X$ ja $y\in Y$ niin $f$ on kääntyvä, $g$ on $f$:n
käänteisfunktio ja tavallisesti kirjoitetaan $g=f^{-1}$.
Funktio $f:X\to Y$ on kääntyvä jos ja vain jos se on bijektio.
Jos $f:X\to Y$ on kääntyvä niin $(f^{-1})^{-1}=f$ eli
käänteisfunktio on myös kääntyvä ja sen käänteisfunktio on $f$.
Huomaa, ettei $f^{-1}$ ole sama funktio kuin $h(x)=
f(x)^{-1}$, joka edyllyttää että $Y$:n (tai ainakin arvojoukon)
elementeillä on käänteisalkioita mikä on esim. tilanne joukossa
$\R\setminus \{0\}$ mutta ei joukossa $\Z$.
Alkukuva ym. [+]
Olkoon $f$ funktio: $X\to Y$ (missä $X$ ja $Y$ ovat ei-tyhjiä
joukkoja). Joukon $B\subseteq Y$ alkukuva
kuvauksessa $f$ on silloin
\[
f^\leftarrow(B)= \set{x\in X\mid f(x)\in B}.
\]
Usein käytetty merkintä alkukuvalle on $f^{-1}(B)$
mutta $f^{-1}$
tarkoittaa myös käänteiskuvausta.
$f^\leftarrow$ on siis funktio: $\mathcal P(Y)\to \mathcal P(X)$.
Jos esimerkiksi [+]
$X=Y=\R$ ja $f(x)= \sqrt{\abs{x}}$ niin
$f^{\leftarrow}(\{2\})=\{-4,4\}$, $f^\leftarrow({-1})=
\emptyset$ ja $f^\leftarrow([3,\infty[)=]-\infty,-9]\cup
[9,\infty[$.
Jos $A\subseteq X$ niin $f(A)$ tarkoittaa tavallisesti joukkoa
$\set{y\in Y\mid \exists x\in A\,(f(x)=y)}= \set{f(x)\mid x\in
A}$. Mutta jos esimerkiksi $X=\{a,\{a\}\}$, $Y=\{b,c\}$,
$f(a)= b$ ja $f(\{a\})=c$ niin tällä
määritelmällä ei ole selvää onko $f(\{a\})= c$ vai $\{b\}$. Tästä
syystä olisi järkevää määritellä funktiota $f^\to:\mathcal
P(X)\to \mathcal P(Y)$ siten, että
\[
f^\to(A)=\set{f(x)\mid x\in A}, \quad A\subseteq X.
\]
Nyt pätee esimerkiksi, että $f^\to$ on surjektio jos
$f^\leftarrow$ on injektio.
Miksi?
[+]
Osoitamme ensin, että jos $f^\leftarrow$ on injekio niin $f$
on surjektio ja teemme vastaoletuksen, että $f$ ei ole surjektio eli
on olemassa alkio $y_1\in Y$ siten, ettei ole olemassa $x\in X$
siten, että $f(x)=y_1$, eli $y_1\notin f^\to(X)$. Joukossa $Y$ on
olemassa alkio $y_2\neq y_1$ koska $X\neq \emptyset$. Mutta
silloin $f^\leftarrow(\{y_1,y_2\})=f^\leftarrow(\{y_2\})$ ja
koska $\{y_1,y_2\}\neq \{y_2\}$ niin $f^\leftarrow$ ei ole
injektio.
Seuraavaksi meidän pitää osoittaa, että jos $f$ on
surjektio niin myös
$f^\to$ on surjektio. Olkoon siis $B\in \mathcal P(Y)$ eli
$B\subseteq Y$ mielivaltainen joukko. Jos nyt $A=f^\leftarrow(B)$
niin $f^\to(A)=B$ koska funktion $f^\leftarrow$
määritelmästä seuraa, että $f^\to(A)\subseteq B$ ja koska
oletamme, että $f$ on surjektio niin jokaiselle $y\in B$
löytyy $x\in
X$ siten, että $f(x)=y$ joten $x\in A=f^\leftarrow(B)$
jolloin $y\in
f^\to(A)$.
Nyt siis tiedämme että implikaatiot ''$f^\leftarrow$ on
injektio'' $\to$ ''$f$ on surjektio'' ja ''$f$ on
surjektio'' $\to$ ''$f^\to$ on surjektio'' ovat tosia jolloin
myös implikaatio ''$f^\leftarrow$ on
injektio'' $\to$ ''$f^\to$ on surjektio'' on tosi.
Määrittelemme funktion $F$ seuraavasti:
\begin{equation*}
F(n)= \begin{cases} 1,& \text{$n=1$ tai $n=2$},\\
F(n-1)+F(n-2), &\text{$n>2$}.
\end{cases}
\end{equation*}
Voidaan osoittaa, että
\begin{equation*}
F(n)= \frac 1{\sqrt 5}\left (\left (\frac {1+\sqrt
5}2\right)^n-\left (\frac {1-\sqrt 5}2\right)^n\right ),
\end{equation*}
eli
F=@(n)(((1+sqrt(5))/2)^n-((1-sqrt(5))/2)^n)/sqrt(5)
Toinen
vaihtoehto on laskea funktion arvot suoraan määritelmästä
esim. seuraavalla rekursiivisella funktiolla
function f=F(n)
if n==1 || n==2, f=1;
else f=F(n-1)+F(n-2); end
return, endfunction
Jos haluamme laskea esim luvut $F(1), F(2),F(3),\ldots, F(15)$ voimme
ensin määritellä F=[1,1];
ja sitten laskea
for j=3:15, F(j)= F(j-1)+F(j-2); end
Mutta silloin esimerkiksi F(20)
ei ole lainkaan määritelty.
Usean muuttujan funktiot? [+]
Edellä on käsitelty ainoastaan yhden muuttujan funktioita. Samalla
tavalla voidaan määritellä usean muuttujan funktioita, (laajentamalla ensin relaation käsitettä binäärisestä tapauksesta) mutta tämä ei ole
aivan välttämätöntä koska näiden funktioiden kohdalla on olemassa erilaisia lähestymistapoja ja
seuraavassa esitetään miten tietty kahden muttujan funktio voidaan
määritellä ja sen arvoja laskea eri tavoilla:
Kahden muuttujan funktiona: $f(x,y)=\sin(x+3\cdot y)$ ja
Matlab/Octavessa esim.
f=@(x,y)sin(x+3*y)
jolloin funktion arvo pisteessä $(1,2)$ on
f(1,2).
Yhden vektorimuuttujan funktiona:
$ f([x,y])= \sin(x+3\cdot y)$ tai esim.
f=@(X)sin(X(1)+3*X(2))
jolloin funktion arvo pisteessä $(1,2)$ on
f([1,2]).
Yhden (eli esim. ensimmäisen)
muuttujan funktioarvoisena
funktiona: $x\mapsto (y\mapsto \sin(x+3\cdot y))$ tai
esim.
f=@(x)@(y)sin(x+3*y)
jolloin funktion arvo pisteessä $(1,2)$ on
f(1)(2)
(Ei toimi Matlabissa!).
Ordo eli Iso-O: $f\in O(g)$ [-]
Jos $h$ on funktio, joka on määritelty kaikilla "riittävän
isoilla" kokonaisluvuilla niin $f\in O(h)$ kertoo, että myös $f$ on
määritelty kaikilla "riittävän isoilla" kokonaisluvuilla ja on
olemassa lukuja $C_f$ ja $N_f$ siten, että
\begin{equation*}
\abs{f(n)}\leq C_f\abs{h(n)},\quad n\geq N_f.
\end{equation*}
Tämän merkinnän käyttö tarkoittaa myös sitä, ettei ole
erityisen oleellista
mitä luvut $C_f$ ja $N_f$ oikeasti ovat tai miten
pieniksi niitä voi valita.
Usein kirjoitetaan $f\in O(h)$:n sijasta $f(n)= O(h(n))$ ja
silloin merkinnällä $O(h)$ tarkoitetaan jokin funktio $f$, jolla on se
ominaisuus, että $\abs{f(n)}\leq C\abs{h(n)}$ kun $n\geq N$.
Jos kirjoitetaan $O(n)+O(n^2)=
O(n^2)$ eikä
$O(n)+O(n^2)\subseteq O(n^2)$ niin pitää muistaa, ettei
tästä seuraa $O(n)=0$!
Tässä käsitellään yksinkertaisuuden vuoksi vain
(tietyillä)
kokonaisluvuilla märiteltyjä funktioita ja
ainoastaan mitä tapahtuu kun $n \to
\infty$ mutta se ei ole mitenkään oleellista.
Esimerkiksi pätee myös $\frac{x^4-x^3}{x^3+x^2}\in O(x)$ kun
$x\to 0$.
Esimerkkejä [+]
Jos $f\in O(n^2)$ ja $g\in O(n^3)$ niin
$f\cdot g\in O(n^5)$ koska
$\abs{f(n)}\leq C_f n^2$ kun $n\geq N_f$ ja $\abs{g(n)}\leq C_g
n^3$ kun $n\geq N_g$ joten
$\abs{f(n)\cdot g(n)} \leq C_f\cdot C_g\cdot n^{2+3}$ kun
$n\geq \max(N_f,N_g)$. Vastaava tulos ei päde jakolaskun $f/g$
kohdalla koska $O(g)$ antaa vain ylärajan, ei alarajaa.
Jos $f(n)= n^2$ ja $g(n)= n^3$ niin $f\in O(n^2)$,
$g\in O(n^3)$ ja $5$ on
(tietenkin?) pienin luku $p$ siten, että $f\cdot g \in O(n^p)$.
Mutta jos $2$ on pienin luku $p_f$ siten, että $f\in
O(n^{p_f})$ ja $3$ on pienin luku $p_g$ siten, että $g\in
O(n^{p_g})$ niin siitä ei välttämättä seuraa, että $5$ olisi pienin
luku $p$ siten, että $f\cdot g \in O(n^p)$ koska voimme esimerkiksi
valita
\begin{align*}
f(n)= \begin{cases} n^2,& \text{$n$ on pariton,}\\ 0,& \text{$n$ on
parillinen,}\end{cases}\\
g(n)= \begin{cases} 0,& \text{$n$ on pariton,}\\ n^3,& \text{$n$ on
parillinen,}\end{cases}
\end{align*}
jolloin $f(n)g(n)=0$ kaikilla $n$ ja $f\cdot g\in O(n^p)$ kaikilla
$p\in \Z$.
Esimerkki: Montako laskutoimitusta tarvitaan
kun lasketaan polynomin arvo? [+]
Jos meidän pitää laskea polynomin $p(x)=a_n\cdot x^n+ a_{n-1}\cdot
x^{n-1}+\ldots + a_1\cdot x+ a_0$ arvo pisteessä $x=x_*$ niin voimme
menetellä esimerkiksi seuraavalla tavalla:
Laskemme luvut $b_j$, $j=n,n-1,\ldots,0$ siten, että
$b_n=a_n$
$b_{n-1}= a_{n-1}+b_n\cdot x_*$
$b_{n-2}= a_{n-2}+b_{n-1}\cdot x_*$
$\quad \vdots $
$b_0 = a_0+ b_1\cdot x_*$
jolloin $p(x_*)=b_0$.
Tässä joudumme siis tekemään korkeintaan $n$ yhteenlaskua ja $n$
kertolaskua eli yhteensä $2\cdot n$ laskutoimitusta joten
näiden
lukumäärä kuuluu joukkoon $O(n)$ jos polynomin aste on
korkeintaan $n$.
Montako vertailua tarvitaan, jotta
löytäisimme luvun, jonka
suuruusjärjestysnumero on $p$ jos joukossa on $n$ lukua? [+]
Jos $p=1$ (pienin luku) tai $p=n$ (suurin luku) niin
$n-1$ vertailua riittää mutta mikä on tilanne yleisessä
tapauksessa?
Seuraavaksi osoitamme, että jos $1\leq p \leq n$ niin tarvittavien
vertailujen lukumäärä kuuluu joukkoon $O(n)$, eli on olemassa vakio
$C$ siten, että vertailujen lukumäärä on korkeintaan $Cn$ emmekä
välitä kovinkaan paljon siitä mikä tämä vakio on:
Oletamme että tarvitaan korkeintaan $Ck$ vertailua kun joukossa
on $k< n$ lukua.
Jaamme luvut osajoukkoihin joissa on $5$ lukua: Ei vertailuja.
Määritämme näiden osajoukkojen mediaanit: $O(n)$
vertailua.
Jaamme luvut kahteen joukkoon, riippuen siitä ovatko
ne suurempia tai pienempiä kuin mediaanien mediaani: $O(n)$
vertailua.
Kumpikin näistä joukoista sisältää korkeintaan $(1-\frac 15\cdot \frac 12\cdot 3)n+O(1)= \frac 7{10}n+ O(1)$
lukua!
Joukkojen alkioiden lukumäärien perusteella tiedämme
missä osajoukossa hakemamme luku on
ellei se ole mediaanien mediaani ja mikä sen järjestysnumero siinä
on joten haemme sen kyseisestä osajoukosta: $C\frac 7{10}n
+ CO(1)$ vertailua.
Olemme käyttäneet
vertailua missä $c_0$ on vakio.
Jos $n\leq 20 c_0$ voimme järjestää luvut käyttäen
$n^2\leq (20 c_0) n$ vertailua (tosiasiassa $n\log_2(n)$ vertailua riittää) ja siten löytää hakemamme luku joten
jos valitsemme $C\geq 20c_0$ niin tarvitsemme korkeintaan $Cn$
vertailua kun $n\leq 20c_0$ ja kun $n>20 c_0$
eli $c_0<\frac 1{20}n$ toteamme, koska $C$:n valinnan
seurauksena $ c_0\leq\frac 1{20}C$, että tarvitsemme
vertailua ja induktiopäättely toimii.