H12 - Wiki Matfyz

Transkript

H12 - Wiki Matfyz
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
Reálné přı́klady na historie H1 – H12
Opakovánı́
Rozvrhy
Transakce
Závěr
Marek Mikeš
23. dubna, 2012
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
1/ 19
(Uspořádatelnost)
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
Rozvrh je uspořádatelný (či serializovatelný), pokud jeho
vykonánı́ vede ke konzistentnı́mu stavu databáze.
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
2/ 19
Pohledová uspořádatelnost
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
Opakovánı́
Rozvrhy
Rozvrh je pohledově uspořádatelný, pokud je pohledově
ekvivalentnı́ se sériovým rozvrhem na stejných transakcı́ch.
Dva rozvrhy S1 , S2 jsou pohledově ekvivalentnı́, pokud
splňujı́ následujı́cı́:
Závěr
1
Pokud transakce Ti čte počátečnı́ hodnotu v S1 , čte ji i v
S2
2
Pokud transakce Ti čte hodnotu zapsanou Tj v S1 , čte ji i
v S2
3
Pokud transakce Ti provede poslednı́ zápis hodnoty v S1 ,
provede jej i v S2
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
3/ 19
Konfliktová uspořádatelnost
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
Rozvrh je konfliktově uspořádatelný právě tehdy, když
precedenčnı́ graf neobsahuje cykly.
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
4/ 19
Zotavitelnost
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
Rozvrh je zotavitelný právě tehdy, když kdykoliv čte Ti
hodnoty z Tj (i 6= j) a ci ∈ H, pak cj < ci .
Př.: H = w1 [x] r2 [x] w2 [y] c1 c2
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
5/ 19
Kaskádový abort
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
Rozvrh předcházı́ kaskádovému abortu právě tehdy, když
kdykoliv čte Ti hodnotu x z Tj (i 6= j) v H, pak cj < ri [x].
Př.: H = w1 [x] c1 r2 [x] w2 [y] c2 r3 [y] w3 [z] c3
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
6/ 19
Striktnost
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
Rozvrh je striktnı́ právě tehdy, když kdykoliv wj [x] < oi [x]
(i 6= j), bud’ aj < oi [x] nebo cj < oi [x], kde oi [x] ∈ {ri [x], wi [x]}.
Př.: H = w1 [x] c1 w2 [x] c2
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
7/ 19
Vztahy mezi rozvrhy
Reálné
přı́klady na
historie H1 –
H12
Na dalšı́ch slidech budou ukázány chybějı́cı́ historie:
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
8/ 19
Typy rozvrhů
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
R1 = T1 i T2 dělajı́ totéž (odečtou 100 z účtu x a přičtou
100 účtu y). Na začátku je 1000 na účtech x i y.
Opakovánı́
Rozvrhy
H1 , H4 , H7 a H10
Závěr
R2 = T1 odečte 100 z účtu x za vedenı́ účtu, T2 vytvořı́
účet x s nulovým zůstatkem a T3 přičte 200 na účet x za
ISICa. Na začátku je 1000 na účtu x.
H2 , H6 , H8 a H11
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
9/ 19
H1 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
nenı́ zotavitelný
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
W[x]
T2
načtenı́ 1000
zápis 900
R[x] načtenı́ 900
W[x] zápis 800
R[y] načtenı́ 1000
R[y]
načtenı́ 1000
W[y] zápis 1100
C commit T2
W[y]
C
Marek Mikeš
zápis 1100
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 800, y = 1100
commit T1
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
10/ 19
H1 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
nenı́ zotavitelný
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
W[x]
T2
načtenı́ 1000
zápis 900
R[x] načtenı́ 900
W[x] zápis 800
R[y] načtenı́ 1000
R[y]
načtenı́ 1000
W[y] zápis 1100
C commit T2
W[y]
C
Marek Mikeš
zápis 1100
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 800, y = 1100
commit T1
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
10/ 19
H1 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
nenı́ zotavitelný
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
W[x]
T2
načtenı́ 1000
zápis 900
R[x] načtenı́ 900
W[x] zápis 800
R[y] načtenı́ 1000
R[y]
načtenı́ 1000
W[y] zápis 1100
C commit T2
W[y]
C
Marek Mikeš
zápis 1100
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 800, y = 1100
commit T1
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
10/ 19
H2 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
nenı́ zotavitelný
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
Předpoklad → x = 1000
T3
načtenı́ 1000
W[x]
zápis 0
R[x]
W[x]
C
načtenı́ 0
zápis 900
commit T1
W[x] zápis 200
commit T3
C
C
Marek Mikeš
commit T2
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
11/ 19
H2 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
nenı́ zotavitelný
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
Předpoklad → x = 1000
T3
načtenı́ 1000
W[x]
zápis 0
R[x]
W[x]
C
načtenı́ 0
zápis 900
commit T1
W[x] zápis 200
commit T3
C
C
Marek Mikeš
commit T2
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
11/ 19
H2 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
nenı́ zotavitelný
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
Předpoklad → x = 1000
T3
načtenı́ 1000
W[x]
zápis 0
R[x]
W[x]
C
načtenı́ 0
zápis 900
commit T1
W[x] zápis 200
commit T3
C
C
Marek Mikeš
commit T2
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
11/ 19
H4 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
je zotavitelný, nepředcházı́ kaskádovým abortům
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
W[x]
T2
načtenı́ 1000
zápis 900
R[x] načtenı́ 900
W[x] zápis 800
R[y] načtenı́ 1000
R[y]
načtenı́ 1000
W[y] zápis 1100
W[y]
C
zápis 1100
commit T1
C
Marek Mikeš
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 800, y = 1100
commit T2
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
12/ 19
H4 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
je zotavitelný, nepředcházı́ kaskádovým abortům
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
W[x]
T2
načtenı́ 1000
zápis 900
R[x] načtenı́ 900
W[x] zápis 800
R[y] načtenı́ 1000
R[y]
načtenı́ 1000
W[y] zápis 1100
W[y]
C
zápis 1100
commit T1
C
Marek Mikeš
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 800, y = 1100
commit T2
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
12/ 19
H4 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
je zotavitelný, nepředcházı́ kaskádovým abortům
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
W[x]
T2
načtenı́ 1000
zápis 900
R[x] načtenı́ 900
W[x] zápis 800
R[y] načtenı́ 1000
R[y]
načtenı́ 1000
W[y] zápis 1100
W[y]
C
zápis 1100
commit T1
C
Marek Mikeš
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 800, y = 1100
commit T2
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
12/ 19
H5 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
je zotavitelný, nepředcházı́ kaskádovým abortům
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
Předpoklad → x = 1000
T3
načtenı́ 1000
W[x]
zápis 0
R[x]
W[x]
C
načtenı́ 0
zápis 900
commit T1
W[x] zápis 200
C
commit T2
C
Marek Mikeš
commit T3
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
13/ 19
H5 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
je zotavitelný, nepředcházı́ kaskádovým abortům
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
Předpoklad → x = 1000
T3
načtenı́ 1000
W[x]
zápis 0
R[x]
W[x]
C
načtenı́ 0
zápis 900
commit T1
W[x] zápis 200
C
commit T2
C
Marek Mikeš
commit T3
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
13/ 19
H5 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
je zotavitelný, nepředcházı́ kaskádovým abortům
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
Předpoklad → x = 1000
T3
načtenı́ 1000
W[x]
zápis 0
R[x]
W[x]
C
načtenı́ 0
zápis 900
commit T1
W[x] zápis 200
C
commit T2
C
Marek Mikeš
commit T3
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
13/ 19
H7 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
předcházı́ kaskádovým abortům, nenı́ striktnı́
Marek Mikeš
Opakovánı́
Rozvrhy
T1
R[x]
Závěr
T2
načtenı́ 1000
R[x] načtenı́ 1000
W[x]
zápis 900
W[x]
R[y]
W[y]
C
R[y]
W[y]
C
Marek Mikeš
zápis 900
načtenı́ 1000
zápis 1100
commit T2
načtenı́ 1100
zápis 1200
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 900, y = 1200
commit T1
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
14/ 19
H7 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
předcházı́ kaskádovým abortům, nenı́ striktnı́
Marek Mikeš
Opakovánı́
Rozvrhy
T1
R[x]
Závěr
T2
načtenı́ 1000
R[x] načtenı́ 1000
W[x]
zápis 900
W[x]
R[y]
W[y]
C
R[y]
W[y]
C
Marek Mikeš
zápis 900
načtenı́ 1000
zápis 1100
commit T2
načtenı́ 1100
zápis 1200
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 900, y = 1200
commit T1
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
14/ 19
H7 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
předcházı́ kaskádovým abortům, nenı́ striktnı́
Marek Mikeš
Opakovánı́
Rozvrhy
T1
R[x]
Závěr
T2
načtenı́ 1000
R[x] načtenı́ 1000
W[x]
zápis 900
W[x]
R[y]
W[y]
C
R[y]
W[y]
C
Marek Mikeš
zápis 900
načtenı́ 1000
zápis 1100
commit T2
načtenı́ 1100
zápis 1200
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 900, y = 1200
commit T1
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
14/ 19
H8 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
předcházı́ kaskádovým abortům, nenı́ striktnı́
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
načtenı́ 1000
W[x]
C
zápis 0
commit T2
R[x]
W[x]
Předpoklad → x = 1000
T3
načtenı́ 0
zápis 900
W[x] zápis 200
commit T3
C
C
Marek Mikeš
commit T1
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
15/ 19
H8 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
předcházı́ kaskádovým abortům, nenı́ striktnı́
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
načtenı́ 1000
W[x]
C
zápis 0
commit T2
R[x]
W[x]
Předpoklad → x = 1000
T3
načtenı́ 0
zápis 900
W[x] zápis 200
commit T3
C
C
Marek Mikeš
commit T1
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
15/ 19
H8 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
předcházı́ kaskádovým abortům, nenı́ striktnı́
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
načtenı́ 1000
W[x]
C
zápis 0
commit T2
R[x]
W[x]
Předpoklad → x = 1000
T3
načtenı́ 0
zápis 900
W[x] zápis 200
commit T3
C
C
Marek Mikeš
commit T1
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
15/ 19
H10 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
je striktnı́
Marek Mikeš
Opakovánı́
Rozvrhy
T1
R[x]
Závěr
T2
načtenı́ 1000
R[x] načtenı́ 1000
W[x]
R[y]
W[y]
C
zápis 900
načtenı́ 1000
zápis 1100
commit T1
W[x]
R[y]
W[y]
C
Marek Mikeš
zápis 900
načtenı́ 1100
zápis 1200
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 900, y = 1200
commit T2
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
16/ 19
H10 (R1 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
nenı́ pohledově upořádatelný
je striktnı́
Marek Mikeš
Opakovánı́
Rozvrhy
T1
R[x]
Závěr
T2
načtenı́ 1000
R[x] načtenı́ 1000
W[x]
R[y]
W[y]
C
zápis 900
načtenı́ 1000
zápis 1100
commit T1
W[x]
R[y]
W[y]
C
Marek Mikeš
zápis 900
načtenı́ 1100
zápis 1200
Předpoklad → x = y = 1000
Sériové vykonánı́
S(T1 ,T2 ) = S(T2 ,T1 ) →
x = 800, y = 1200
Paralelnı́ vykonánı́
P → x = 900, y = 1200
commit T2
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
16/ 19
H11 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
je striktnı́
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
načtenı́ 1000
W[x]
C
zápis 0
commit T2
R[x]
W[x]
C
Předpoklad → x = 1000
T3
načtenı́ 0
zápis 900
commit T1
W[x] zápis 200
commit T3
C
Marek Mikeš
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
17/ 19
H11 (R2 )
Reálné
přı́klady na
historie H1 –
H12
vlastnosti:
je pohledově upořádatelný, nenı́ konfliktově uspořádatelný
je striktnı́
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
T1
R[x]
T2
načtenı́ 1000
W[x]
C
zápis 0
commit T2
R[x]
W[x]
C
Předpoklad → x = 1000
T3
načtenı́ 0
zápis 900
commit T1
W[x] zápis 200
commit T3
C
Marek Mikeš
Reálné přı́klady na historie H1 – H12
Sériové vykonánı́
S(T1 ,T2 ,T3 ) → x = 200
S(T3 ,T2 ,T1 ) → x = -100
S(T2 ,*,*) → x = 100
S(*,*,T2 ) → x = 0
Paralelnı́ vykonánı́
P → x = 200
23. dubna, 2012
17/ 19
Kvı́z
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
Je pravda, že pohledově uspořádatelný rozvrh musı́ vyjı́t jako
některý sériovy rozvrh?
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
18/ 19
Kvı́z
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
Opakovánı́
Rozvrhy
Závěr
Je pravda, že pohledově uspořádatelný rozvrh musı́ vyjı́t jako
některý sériovy rozvrh?
ANO, plyne z definice (čtou se stejná data a poslednı́ zápisy
jsou také stejné jako v některém sériovém rozvrhu).
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
18/ 19
Literatura
Reálné
přı́klady na
historie H1 –
H12
Marek Mikeš
Opakovánı́
RNDr. Jakub Lokoč, Ph.D.
Přednáška Transakce na MFF UK.
www
Rozvrhy
Závěr
Amber M. Smith.
Beamer Presentation, September 4, 2007.
www
Marek Mikeš
Reálné přı́klady na historie H1 – H12
23. dubna, 2012
19/ 19

Podobné dokumenty

Klikněte pro zobrazení, nebo stažení ve formátu PDF

Klikněte pro zobrazení, nebo stažení ve formátu PDF Jindy mi bylo nadhozeno že v USA bylo otroctví. (Jako kdyby u nás nikdy neexistovalo nevolnictví). Samozřejmě, bez toho, že by dotyčný měl skutečnou znalost dějin. USA když vznikla, tak otroctví zd...

Více

ke stažení

ke stažení Uvedene ceny jsou nejlevnejsi dostupne v supermarketech (Coles, Woolworths, Franklins, Aldi atd) Ceny v malych potravinovych obchodech (tzv 'convenience stores) jsou nejmene o 30% drazsi Australsky...

Více

Algoritmy pro zobrazov´anı stın˚u ve sc´enˇe

Algoritmy pro zobrazov´anı stın˚u ve sc´enˇe vytvářejı́ tzv. stı́nová tělesa (stı́nový objem, shadow volume), viz [3]. Tato metoda, dı́ky své robustnosti a hardwarové podpoře v grafických kartách, patřı́ společně s metodou stı́no...

Více

seznam skladeb - Hudební skupina Kontakt

seznam skladeb - Hudební skupina Kontakt Lady carneval Leave me alone (I´m lonely) Lekná Let me entertain you Man I feel like a woman Mašinka Mercy Modrá (Je dobrá) Money, money, money Morituri te salutant My immortal Na kolena Narcotic N...

Více

úloha 6.11

úloha 6.11 4. Vypočı́tejte indukčnost LL cı́vky L a jejı́ vnitřnı́ sériový odpor RL , je-li kapacita kondenzátoru C    nF. 5. Vypočı́tejte velikost odporu, který je potřeba připojit do série s ...

Více

Accompanying documentation

Accompanying documentation informace o ’Verzi fw.’, ’Verzi hw.’ a ’Typu přı́stroje’. Druhou možnostı́ je použitı́ softwaru ENVIS.Daq a v něm vyčı́st údaje z identifikačnı́ho panelu přı́stroje. Přı́slušný obraz fir...

Více

úloha 6.9

úloha 6.9 1. V rámci domácı́ přı́pravy stanovte časový průběh napětı́ us t  po rozepnutı́ spı́nače v obvodu podle obr. 6.9.2 [1]. 2. Připojte měřicı́ přı́pravek pomocı́ svorek K3 a K4 ke zdroji...

Více