# Pog6
Dzień dobry, witam was w mojej kuchni.
## Zadanie 1




Uznaje ze nadklucz to zbiór atrybutów relacji który jest kluczem lub zawiera klucz (z [wikipedii](https://pl.wikipedia.org/wiki/Posta%C4%87_normalna_(bazy_danych)#Posta%C4%87_normalna_Boyce%E2%80%99a-Codda_(BCNF_lub_3.5NF)) )
$$F = \{gang \rightarrow szef, szef \rightarrow dochód, proceder \rightarrow roi\}$$
Mamy zal. funkcyjną Gang -> Dochód z przechodniości, sama kolumna Gang nie jest ani kluczem ani nie zawiera klucza, więc nie jest nadkluczem, co daje nam że relacja nie jest w BCNF.
Mafia(City, Gang, Criminal Activity)
Bossix(Gang, Boss)
Incomix(Boss, Income)
ROIx(Criminal Activity, ROI)
Jak skleimy do kupy natural joinem to dostaniemy poprzedni stan przed normalizacja czyli jest odwracalna. I łatwo tez widać ze suma zbiorów tych zaleznosci funkcyjnych tez bedzie taka sama wiec fajrancik.
$$ Mafia \bowtie Bossix \bowtie Incomix \bowtie ROIx $$
## Zadanie 2


Redundancja jest oczywista bo ten sam gang w tym samym mieście może jednoczeście handlować narkotykami i dziennikarzami i wyciętymi nerkami, więc w każdej krotce będzie się powtarzało nazwa miasta i gang.
## Zadanie 3

Możemy rozbić dalej relacje Mafia(City,Gang,Crim_actv) na
Mafia(City,Gang)
Criminal_ac(Gang,Crim_actv)
## Zadanie 4

$$ \pi_{proc, roi} (\sigma_{proc = proc1 \land roi \neq roi1}(Mafia \times \rho_{proc\rightarrow proc1, roi\rightarrow roi1}(Mafia))) $$
## Zadanie 5

tweet(tw_id, p_id, created_at, text, retweeted_tw_id, in_reply_to_tw_id)
person(p_id, p_name, p_desc, loc_name)
hashtags(h_id, tw_id, h_name)
mentions(m_id, tw_id, men_p_id)
*MAYBE OPT*
person(p_id, p_name, p_desc, loc_id)
loc(loc_id, loc_name)
opłacalne gdy inty > stringi
1. Od autora_id zależy jego imię i opis, oraz lokacja zamieszkania $$ a\_id \rightarrow a\_name, a\_desc, a\_loc $$
2. złożone typy are chujowe, so we are wypierdalamy je i zastępujemy tabelami hashtags i mentions
3. tweet $\bowtie$ author $\bowtie$ hashtags $\bowtie$ mentions $\rightarrow$ to jest to samo tylko z rozgrupowanymi hastagami i mentionsami