• Nie Znaleziono Wyników

Petr Hliněný, FI MU Brno, / 18 FI: IB000: Skládání a Funkce

N/A
N/A
Protected

Academic year: 2022

Share "Petr Hliněný, FI MU Brno, / 18 FI: IB000: Skládání a Funkce"

Copied!
18
0
0

Pełen tekst

(1)

Petr Hlinˇen´y, FI MU Brno, 2017 1 / 18 FI: IB000: Skl´ad´an´ı a Funkce

7 Skl´ ad´ an´ı relac´ı a funkc´ı 7 Skl´ ad´ an´ı relac´ı a funkc´ı

L´atku o relac´ıch zakonˇc´ıme poznatky o obracen´ı a skl´ad´an´ı relac´ı mezi sebou.

Kde jste se jiˇz intuitivnˇe setkali se skl´ad´an´ım funkc´ı – jak napˇr´ıklad spoˇc´ıt´ate na kalkulaˇcce v´ysledek sloˇzitˇejˇs´ıho vzorce? A jinde?Co tˇreba relaˇcn´ı datab´aze?

Struˇcn´y pˇrehled lekce Struˇcn´y pˇrehled lekce

* Inverze a skl´ad´an´ı relac´ı v obecn´em pojet´ı. Praktick´e pouˇzit´ı.

* Pˇrehled z´akladn´ıch vlastnost´ı funkc´ı.

* Skl´ad´an´ı funkc´ı (coby relac´ı), speci´alnˇe aplikov´ano na permutace.

(2)

Relace a funkce, zopakov´an´ı

Relace mezi mnoˇzinami A1,· · · , Ak, pro k∈ N, je libovoln´a podmnoˇzina kart´ezsk´eho souˇcinu

R ⊆ A1× A2× · · · × Ak.

Pokud A1 = A2 = · · · = Ak = A, hovoˇr´ıme ok-´arn´ı relaciR na A.

(Tot´aln´ı) funkcez mnoˇzinyAdo mnoˇzinyB je relacef meziAaB takov´a, ˇze pro kaˇzd´ex∈ Aexistuje pr´avˇe jednoy ∈ B takov´e, ˇze(x, y) ∈ f.

∗ MnoˇzinaAse naz´yv´adefiniˇcn´ı obora mnoˇzinaBobor hodnotfunkcef. Funkc´ım se tak´e ˇr´ık´azobrazen´ı.

∗ M´ısto(x, y) ∈ f p´ıˇseme obvykle f(x) = y. Z´apisf : A → B ˇr´ık´a, ˇzef je funkce s definiˇcn´ım oborem Aa oborem hodnotB.

(3)

Petr Hlinˇen´y, FI MU Brno, 2017 3 / 18 FI: IB000: Skl´ad´an´ı a Funkce

• Pokud naˇs´ı definici funkce uprav´ıme tak, ˇze poˇzadujeme pro kaˇzd´e x ∈ A nejv´yˇse jedno y ∈ B takov´e, ˇze (x, y) ∈ f, obdrˇz´ıme definici parci´aln´ı funkce zA doB.

(4)

7.1 Inverze a skl´ad´an´ı relac´ı 7.1 Inverze a skl´ad´an´ı relac´ı

Ve v´ykladu se nyn´ı vr´at´ıme k obecn´emu pojet´ı relac´ı mezi dvˇema mnoˇzinami.

Definice: Necht’ R ⊆ A × B je bin´arn´ırelace mezi A a B. Inverzn´ı relace k relaci R se znaˇc´ıR−1 a je definov´ana takto:

R−1 = {(b, a) | (a, b) ∈ R}

R: s

s s

s s

A B

R−1: s s s

s s

A B

R−1 je tedy relacemezi B a A.

(5)

Petr Hlinˇen´y, FI MU Brno, 2017 5 / 18 FI: IB000: Skl´ad´an´ı a Funkce

Definice skl´ad´an´ı

Definice 7.1. Sloˇzen´ı (kompozice) relac´ıR aS.

Necht’ R ⊆ A × B a S ⊆ B × C jsou bin´arn´ı relace. Sloˇzen´ı relac´ıR a S (v tomto poˇrad´ı!) je relace S◦ R ⊆ A × C definovan´a takto:

S◦ R = {(a, c) |existuje b∈ B takov´e, ˇze (a, b) ∈ R, (b, c) ∈ S}

R:

s s s

s s

s s s

s

A B C

:S S◦ R:

s s s

s s s

A C

Sloˇzen´ı relac´ı ˇcteme

”R sloˇzeno s S“ nebo (pozor na poˇrad´ı!)

”S poR“.

(6)

Nˇekolik matematick´ych pˇr´ıklad˚u skl´ad´an´ı relac´ı n´asleduje zde.

• Je-li ∗ A= {a, b}, B = {1, 2}, C = {X, Y },

∗ R= {(a, 1), (b, 1), (b, 2)}, S= {(1, X)}, pak sloˇzen´ım vznikne relace

∗ S◦ R = {(a, X), (b, X)}.

• Sloˇzen´ım funkc´ıh(x) = x2 af(x) = x + 1 na Rvznikne funkce (f ◦ h) (x) = f (h(x)) = x2+ 1.

• Sloˇzen´ım tˇechˇze funkc´ı

”naopak“ ale vznikne funkce (h ◦ f ) (x) = h(f (x)) = (x + 1)2.

Pozn´amka: Nepˇr´ıjemn´e je, ˇze v nˇekter´ych oblastech matematiky (napˇr´ıklad v algebˇre pˇri skl´ad´an´ı zobrazen´ı) se setk´ame s pr´avˇe opaˇcn´ym z´apisem skl´ad´an´ı, kdy se m´ısto S◦ Rp´ıˇseR· S nebo jenRS.

(7)

Petr Hlinˇen´y, FI MU Brno, 2017 7 / 18 FI: IB000: Skl´ad´an´ı a Funkce

Tvrzen´ı 7.2. Necht’R⊆ A × B aS ⊆ B × C jsou bin´arn´ı relace. Pak inverz´ı sloˇzen´e relace S◦ R je relace

R:

s s s

s s

s s s

s

A B C

:S

(S ◦ R)−1 =R−1◦ S−1.

(8)

7.2 Praktick´e pouˇzit´ı skl´ad´an´ı 7.2 Praktick´e pouˇzit´ı skl´ad´an´ı

Pˇr´ıklad 7.3. Skl´ad´an´ı v relaˇcn´ı datab´azi student˚u, jejich pˇredmˇet˚u a fakult.

Mˇejme dvˇe bin´arn´ı relace – jednuRpˇriˇr. student˚um MU k´ody jejich zapsan´ych pˇredmˇet˚u, druhou S pˇriˇr. k´ody pˇredmˇet˚u jejich mateˇrsk´ym fakult´am.

R:

student (uˇco) pˇredmˇet (k´od)

121334 MA010

133935 M4135

133935 IA102

155878 M1050

155878 IB000

S:

pˇredmˇet (k´od) fakulta MU

MA010 FI

IB000 FI

IA102 FI

M1050 PˇrF

M4135 PˇrF

Jak z tˇechto

”tabulkov´ych“ relac´ı zjist´ıme, kteˇr´ı studenti maj´ızapsan´e pˇredmˇety na kter´ych fakult´ach(tˇreba na FI)?

Jedn´a se jednoduˇse osloˇzen´ı relac´ıS◦ R. V naˇsem pˇr´ıkladˇe tˇreba:

S◦ R :

student (uˇco) fakulta MU

121334 FI

133935 FI

133935 PˇrF

155878 FI

155878 PˇrF

(9)

Petr Hlinˇen´y, FI MU Brno, 2017 9 / 18 FI: IB000: Skl´ad´an´ı a Funkce

Zobecnˇen´e skl´ad´an´ı relac´ı

Definice: (skl´ad´an´ı relac´ı vyˇsˇs´ı arity): Mˇejme relaceT ⊆ K1× K2× · · · × Kk

a U ⊆ L1 × L2 × · · · × L, pˇriˇcemˇz pro nˇejak´e m <min(k, ℓ) plat´ı L1 = Kk−m+1, L2 = Kk−m+2, . . . , Lm = Kk. Pak relaciT lze sloˇzit s relac´ıU na zvolen´ych m sloˇzk´achL1, . . . , Lm (

”pˇrekryt´ı“) spouˇzit´ım Definice 7.1takto:

• PoloˇzmeA= K1×· · ·×Kk−m, B = L1×· · ·×LmaC= Lm+1×· · ·×L.

• Pˇr´ısluˇsn´e relace pak jsou

∗ R= {(~a,~b) ∈ A × B | (a1, . . . ak−m, b1, . . . bm) ∈ T } a

∗ S = {(~b, ~c) ∈ B × C | (b1, . . . bm, cm+1, . . . c) ∈ U }.

• Nakonec pˇrirozenˇe poloˇzmeU ◦mT ≃ S ◦ R, takˇze vyjde U◦mT =

(~a, ~c) | ex. ~b ∈ B, ˇze (a1, . . . ak−m, b1, . . . bm) ∈ T a (b1, . . . bm, cm+1, . . . c) ∈ U .

Schematicky pro snadnˇejˇs´ı orientaci:

T ⊆ K1× · · · × Kk−m× Kk−m+1× · · · × Kk

U ⊆ L1 × · · · × Lm ×Lm+1× · · · × L

U◦mT ⊆ K1× · · · × Kk−m

| {z }

A

× | {z }

B

× Lm+1× · · · × L

| {z }

C

(10)

Pˇr´ıklad 7.4. Skl´ad´an´ı v relaˇcn´ı datab´azi pasaˇz´er˚u a let˚u u let. spoleˇcnost´ı.

Pod´ıvejme se na pˇr´ıklad hypotetick´e rezervace let˚u pro cestuj´ıc´ı, relace T. Jak zn´amo (tzv. codeshare), leteck´e spoleˇcnosti si mezi sebou

”dˇel´ı“ m´ısta v letadlech, takˇze r˚uzn´e lety (podle k´od˚u) jsou ve skuteˇcnosti realizov´any stejn´ym letadlem jedn´e ze spoleˇcnost´ı. To zase ukazuje relace U.

T:

pasaˇz´er datum let

Petr 5.11. OK535

Pavel 6.11. OK535

Jan 5.11. AF2378

Josef 5.11. DL5457 Alena 6.11. AF2378

U :

datum let letadlo

5.11. OK535 CSAˇ

5.11. AF2378 CSAˇ

5.11. DL5457 CSAˇ

6.11. OK535 AirFrance 6.11. AF2378 AirFrance

Pt´ame-li se nyn´ı, setkaj´ı se Petr a Josef na palubˇe stejn´eho letadla? Pˇr´ıpadnˇe, ˇc´ı letadlo to bude? Odpovˇedi n´am d´a sloˇzen´ı relac´ıU◦2T, jak je pops´ano v´yˇse.

U2T :

pasaˇz´er letadlo

Petr CSAˇ

Josef CSAˇ

Pavel AirFrance

. . . . . .

(11)

Petr Hlinˇen´y, FI MU Brno, 2017 11 / 18 FI: IB000: Skl´ad´an´ı a Funkce

7.3 Vlastnosti funkc´ı 7.3 Vlastnosti funkc´ı

Definice 7.5. Funkce (pˇr´ıpadnˇe parci´aln´ı funkce)f : A → B je

injektivn´ı(nebo tak´eprost´a) pr´avˇe kdyˇz pro kaˇzd´ex, y ∈ A, x 6= y plat´ı f(x) 6= f (y);

s s

s s

X

surjektivn´ı(nebo tak´e

”na“) pr´avˇe kdyˇz pro kaˇzd´e y∈ B existujex ∈ A takov´e, ˇzef(x) = y;

s s

s s

X

bijektivn´ı(vz´aj.jednoznaˇcn´a) pr´avˇe kdyˇz je injektivn´ı asouˇc. surjektivn´ı.

s s

s s

s s

(12)

N´asleduj´ı jednoduch´e uk´azky vlastnost´ı funkc´ı.

• Funkce plus:N×NNje surjektivn´ı, ale nen´ı prost´a.

• Funkce g:ZNdan´a pˇredpisem

g(x) = −2x − 1 jestliˇze x < 0,

2x jinak

je bijektivn´ı.

• Funkce ∅ : ∅ → ∅je bijektivn´ı.

• Funkce ∅ : ∅ → {a, b}je injektivn´ı, ale nen´ı surjektivn´ı.

Pˇr´ıklad 7.6. Dok´azali byste nal´ezt jednoduˇse (tj.

”hezky“) vypoˇcitatelnou bi- jektivn´ı funkci NN×N?

Pˇr´ıklad 7.7.Pro jak´e hodnoty parametr˚ua, bje funkcef(x) = ax3+3x2+bx+1 z RdoRinjektivn´ı ˇci surjektivn´ı?

(13)

Petr Hlinˇen´y, FI MU Brno, 2017 13 / 18 FI: IB000: Skl´ad´an´ı a Funkce

Inverze funkce

Inverze funkce je d´ana definic´ı inverze relace z Odd´ılu 7.1.

Pˇr´ıklady inverz´ı pro bˇeˇzn´e funkce:

• Inverz´ıbijektivn´ıfunkce f(x) = x + 1na Zje funkce f−1(x) = x − 1.

• Inverz´ıprost´e funkcef(x) = ex na Rjeparci´aln´ıfunkce f−1(x) = ln x.

• Funkceg(x) = x mod 3nen´ı prost´anaN, a proto jej´ı inverz´ı je

”jen“relace g−1= {(a, b) | a = b mod 3}.

Konkr´etnˇe g−1={(0,0),(0,3),(0,6), . . . ,(1,1),(1,4), . . . ,(2,2),(2,5), . . .}.

Tvrzen´ı 7.8. Mˇejme funkcif : A → B. Pak jej´ı inverzn´ı relacef−1 je a) parci´aln´ı funkcepr´avˇe kdyˇzf je prost´a,

b) funkce pr´avˇe kdyˇzf je bijektivn´ı.

Tvrzen´ı 7.9. Je-li inverzn´ı relacef−1funkcef takt´eˇz parci´aln´ı funkc´ı, tak plat´ı f−1(f (x)) = xpro vˇsechna x z definiˇcn´ıho oboru.

(14)

7.4 Skl´ad´an´ı funkc´ı, permutace 7.4 Skl´ad´an´ı funkc´ı, permutace

Fakt: Mˇejme funkce (zobrazen´ı) f : A → B ag : B → C. Pak jejichsloˇzen´ım coby relac´ı v tomto poˇrad´ı vznikne zobrazen´ı(g ◦ f ) : A → C definovan´e

(g ◦ f )(x) := g(f (x)) .

Jak napˇr´ıklad na bˇeˇzn´e kalkulaˇcce vypoˇcteme hodnotu funkcesin2x?

Sloˇz´ıme (v tomto poˇrad´ı)

element´arn´ı“ funkcef(x) = sin xag(x) = x2.

Jak bychom na

element´arn´ı“ funkce rozloˇzili aritmetick´y v´yraz 2 log(x2+ 1)?

Ve spr´avn´em poˇrad´ı sloˇz´ıme funkce f1(x) = x2, f2(x) = x + 1, f3(x) = log xa f4(x) = 2x.

A jak bychom obdobnˇe vyj´adˇrili sloˇzen´ım funkc´ı aritmetick´y v´yraz sin x + cos x? Opˇet je odpovˇed’ pˇr´ımoˇcar´a, vezmeme

element´arn´ı“ funkce g1(x) = sin x a g2(x) = cos x, a pak je

sloˇz´ıme“ dalˇs´ı funkc´ıh(x, y) = x + y.

Vid´ıme vˇsak, ˇze takto pojat´e

skl´ad´an´ı“ uˇz nezapad´a hladce do naˇseho zjednoduˇsen´eho formalismu skl´ad´an´ı relac´ı.

(15)

Petr Hlinˇen´y, FI MU Brno, 2017 15 / 18 FI: IB000: Skl´ad´an´ı a Funkce

Skl´ad´an´ı permutac´ı

Definice: Necht’ permutace π mnoˇziny {1, 2, . . . , n} je urˇcena seˇrazen´ım jej´ıch prvk˚u jako (p1, p2, . . . , pn). Pak π je z´aroveˇn bijektivn´ım zobrazen´ım {1, . . . , n} → {1, . . . , n} definovan´ym pˇredpisemπ(i) = pi.

Abychom postihli obˇe tyto podoby, budeme tak´e pouˇz´ıvat z´apis 1, 2, ..., n p1,p2...,pn

.

Fakt: Permutace lzeskl´adat jako relace (funkce) podle Definice 7.1.

Pozn´amka: Vˇsechny permutace mnoˇziny{1, 2, . . . , n} spolu s operac´ı skl´ad´an´ı tvoˇr´ı grupu, zvanou symetrick´a grupaSn.

Permutaˇcn´ı grupy (podgrupy symetrick´e grupy) jsou velice d˚uleˇzit´e v algebˇre, nebot’

kaˇzd´a koneˇcn´a grupa je vlastnˇe isomorfn´ı nˇekter´e permutaˇcn´ı grupˇe.

Pˇr´ıkladem permutace vyskytuj´ıc´ım se v program´atorsk´e praxi je tˇreba zobrazen´ı i7→ (i+1) mod n(“inkrement”).Casto se tˇreba lze setkat (aniˇz si to mnohdyˇ uvˇedomujeme) s permutacemi pˇri indexaci prvk˚u pol´ı.

Tvrzen´ı 7.10. Mˇejme permutace π a σ mnoˇziny {1, 2, . . . , n}. Pak jejich sloˇzen´ıσ◦ π je opˇet permutac´ı mnoˇziny{1, 2, . . . , n}.

(16)

Cykly permutac´ı

V kontextu pohledu na funkce a jejich skl´ad´an´ı coby relac´ı si zavedeme jin´y, n´azornˇejˇs´ı, zp˚usob z´apisu permutac´ı – pomoc´ı jejichcykl˚u.

s s

s

s s

s s

s

.

.

1 5

6

2 3

4 8

7

Definice: Necht’ π je permutace na mnoˇzinˇe A. Cyklem v π rozum´ıme posloupnost ha1, a2, . . . , aki r˚uzn´ych prvk˚u A takovou, ˇze π(ai) = ai+1 pro i= 1, 2, . . . , k − 1 aπ(ak) = a1.

• Jak n´azev napov´ıd´a, v z´apise cykluha1, a2, . . . , akinen´ı d˚uleˇzit´e, kter´ym prvkem zaˇcneme, ale jen dodrˇzen´ı cyklick´eho poˇrad´ı. Cyklus v permutaci m˚uˇze m´ıt i jen jeden prvek (zobrazen´y na sebe).

• Napˇr´ıklad permutace 1,2,3,4,5,6,7,8 5,3,4,8,6,1,7,2

je zakreslena sv´ymi cykly v´yˇse.

(17)

Petr Hlinˇen´y, FI MU Brno, 2017 17 / 18 FI: IB000: Skl´ad´an´ı a Funkce

Reprezentace permutac´ı jejich cykly

Vˇeta 7.11. Kaˇzdou permutaciπna koneˇcn´e mnoˇzinˇeAlze zapsat jako sloˇzen´ı cykl˚u na disjunktn´ıch podmnoˇzin´ach (rozkladu) A.

D˚ukaz: Vezmeme libovoln´y prvek a1 ∈ A a iterujeme zobrazen´ıa2 = π(a1), a3 = π(a2), atd., aˇz se dostaneme

”zpˇet“ k ak+1 = π(ak) = a1. Proˇc tento proces skonˇc´ı? Protoˇze A je koneˇcn´a a tud´ıˇz ke zopakov´an´ı nˇekter´eho prvku ak+1 mus´ı doj´ıt. Nadto je π prost´a, a proto nem˚uˇze nastat π(ak) = aj pro j >1. Takto z´ısk´ame prvn´ı cyklus ha1, . . . , aki.

Induktivnˇe pokraˇcujeme s hled´an´ım dalˇs´ıch cykl˚u ve zbyl´e mnoˇzinˇe A = A\{a1, . . . , ak}, dokud nez˚ustane pr´azdn´a. V tomto indukˇcn´ım kroku si mus´ıme uvˇedomit, ˇze π omezen´e na nosnou mnoˇzinu A je st´ale permutac´ı podle

definice.

Znaˇcen´ıpermutace jej´ımi cykly: Necht’ se permutaceπ podle Vˇety 7.11 skl´ad´a z cykl˚u ha1, . . . , aki,hb1, . . . , bli aˇz tˇreba hz1, . . . , zmi. Pak zap´ıˇseme

π = ha1, . . . , aki hb1, . . . , bli . . . hz1, . . . , zmi .

(18)

Pˇr´ıklad 7.12. Uk´azka skl´ad´an´ı permutac´ı dan´ych sv´ymi cykly.

Vezmˇeme 7-prvkovou permutaci π = (3, 4, 5, 6, 7, 1, 2), rozˇs´ıˇrenˇe zapsanou s pom˚uckou jako 1,2,3,4,5,6,7

3,4,5,6,7,1,2

. Ta se skl´ad´a z jedin´eho cykluh1, 3, 5, 7, 2, 4, 6i.

Jin´a permutace σ = (5, 3, 4, 2, 6, 1, 7), neboli 1,2,3,4,5,6,7 5,3,4,2,6,1,7

, se rozkl´ad´a na tˇri cykly h1, 5, 6i,h2, 3, 4i a h7i.

Nyn´ı urˇc´ıme sloˇzen´ı σ ◦ π tˇechto dvou permutac´ı (uˇz pˇr´ımo v z´apisu cykly):

h1, 5, 6ih2, 3, 4ih7i ◦ h1, 3, 5, 7, 2, 4, 6i = h1, 4ih2ih3, 6, 5, 7i

(Nezapom´ınejme, ˇze prvn´ı se ve sloˇzen´ı aplikuje prav´a permutace!)

Postup skl´ad´an´ı jsme pouˇzili n´asledovn´y:

∗ 1 se zobraz´ı v permutaci vpravo na 3a pak vlevo na 4.

∗ N´aslednˇe4se zobraz´ı na6a pak na1. T´ım

”uzavˇreme“ prvn´ı cyklush1, 4i.

∗ D´ale se 2zobraz´ı na4 a pak hned zpˇet na2, tj. m´a samostatn´y cyklus.

∗ Zbyl´y cyklus h3, 6, 5, 7iurˇc´ıme analogicky.

Cytaty

Powiązane dokumenty

subdialog – slouˇ z´ı k vyvol´ an´ı dialogu ˇreˇs´ıc´ıho d´ılˇ c´ı probl´ em, napˇr. zad´

uˇcen´ı je potˇrebn´e pro nezn´am´e prostˇred´ı (a l´ın´e analytiky ,) uˇc´ıc´ı se agent – v´ykonnostn´ı komponenta a komponenta uˇcen´ı metoda uˇcen´ı

pouˇ z´ıvaj´ı magnetick´ e pole, dr´ ahy iont˚ u jsou kruhov´ e, nebo cykloid´ aln´ı, mˇ eˇr´ı i mal´ e parci´ aln´ı tlaky.. Statick´ e hmotnostn´ı spektrometry

I Zaveden´ı n´ ahodn´ e veliˇ ciny slouˇ z´ı zejm´ ena ke zkr´ acen´ı a zpˇrehlednˇ en´ı z´ apisu pravdˇ epodobnost´ı... Tato funkce m´ a n´

V dalˇ s´ı ˇ c´ asti pr´ ace byly navrˇ zeny ´ upravy konstrukce kˇ r´ıdla pro zv´ yˇ sen´ e zat´ıˇ zen´ı a jin´ e uspo- ˇ r´ ad´ an´ı palivov´ ych n´ adrˇ

I pravdˇ epodobnost a statistika: princip maxim´ aln´ı vˇ erohodnosti, princip maxima entropie, regrese (modelov´ an´ı funkˇ cn´ı z´ avislosti n´ ahodn´ ych promˇ enn´

mezin´arodnˇe standardn´ı z´apis – jsou k dispozici tabulky a fonty Unicode – speci´aln´ı IPA znaky v rozsahu U+0250–02AD z´apis

CLP – Constraint Logic Programming Ovlivnˇ en´ı efektivity prohled´ av´ an´ı s navracen´ım. Ovlivnˇ en´ı efektivity prohled´ av´ an´ı