Documente Academic
Documente Profesional
Documente Cultură
FUNDAMENTAREA MATEMATICA
Motivarea alegerii teoriei categriilor
Teoria categoriilor este o ramura tanara a matematicii
care se ocupa cu descrierea diferitelor concepte structurale din
diverse domenii ale matematicii intr-un mod uniform. Teoria
categoriilor studiaza esenta anumitor concepte, concentrandu-se
pe proprietatile structurilor matematice in loc de reprezentarea
lor. Aceasta teorie aplica principiile conceptualizarii formalizarilor
matematice.
Notiunile categoriale necesare
Definitie. Un multigraf orientat G consta dintr-o
multime de noduri G0 si o multime de muchii G1. Sursa si
destinatia unei muchii pot fi gasite aplicand functiile source si
target, respectiv. Notatia f : A B ne arata ca f este o muchie cu
source(f) = A si target(f) = B.
Definitie. O categorie C este un multigraf orientat a
carui noduri sunt numite obiecte si a carui muchii sunt numite
sageti (arce). Pentru fiecare pereche de sageti f : A B si g : B
C exista o sageata asociata gf : A C, numita compunerea lui f
cu g. Mai mult, (hg)f = h(gf), daca ambele parti sunt definite.
Pentru fiecare obiect A exista o sageata Id A : A A, numita
sageata identica. Daca f : A B, atunci f IdA = IdBf = f.
Definitie. O sageata f : A B este un monomorfism
daca pentru orice obiect X al categoriei si orice sageti x,y : X A,
din relatia fx = fy rezulta x = y.
Definitie. O sageata f : B A este un epimorfism daca
pentru orice obiect X al categoriei si orice sageti x,y : A X, din
relatia xf = yf rezulta x = y.
1
C
f
A
f,g
IA
A+B
IB
IA
A+B
IB
f+g
A
I A
A+B
g
IB
IB
0
Daca aceasta diagrama este un con comutativ universal si
injectiile canonice IA si IB sunt monomorfisme, atunci coprodusul
A+B este un coprodus disjunct.
Definitie. O sageata f : A B este complementabila
daca si numai daca exista o sageata g : C B, asa incat B este
izomorf cu A+C, avand pe f si g ca sageti injectii ale sumei. In
AxB
B
f
f,g
C
Definitie. Un produs a doua sageti f : A A si g : B
B este o sageata fxg : AxB AxB care face comutativa
diagrama :
A
AxB
fxg
A
AxB
g
B
LIMITE SI COLIMITE
O limita este o versiune categoriala a conceptului de
submultime,definita ecuational, a unui produs. O colimita este
versiunea categoriala a catului unei sume printr-o relatie de
echivalenta.
Definitie. Fie G un graf si C o categorie. Fie D : G C o
diagrama in C cu modelul G. Un cocon cu baza D este un obiect
4
n
D (apex) impreuna cu o familie { D } de sageti ale lui C,
n
indexata dupa nodurile lui G, asa incat D : n D, pentru
n
Coconul se noteaza { D } : D D, sau simplu D : D D.
n2
n1
n2
' nD
nD
n
Definitie. Un cocon comutativ cu baza D se numeste
universal daca el are o unica sageata catre fiecare alt cocon
comutativ cu aceeasi baza. Un cocon universal, daca exista , se
numeste o colimita a diagramei D.
Grafuri de tip
5
Modelele de tip
Semantica unui model de date este multimea tuturor
instantierilor posibile, cunoscute si sub numele de populatii. In
actuala abordare, o populatie este definita ca un model de la
graful de tip la o categorie. Un model este un morfism de grafuri
de la graf la o categorie( interpretata ca un graf ).
Definitie Fie F o categorie. Un model de tip Pop pentru un
graf de tip dat G in F este un morfism de grafuri Pop : G F, iar F
se numeste categoria instantierilor a modelului considerat.
Un model de tip aplica tipurile de obiecte din graful de tipuri
in obiecte din categoria instantierilor si muchiile grafului in sageti
ale categoriei.
Definitia anterioara ne arata ca semantica unui model de
date depinde de categoria instantierilor aleasa. Nu toate
categoriile furnizeaza semantici compatibile pentru modelele de
date. Categoriile instantierilor trebuie sa apartina clasei de
categorii Fund.Categoriile acestei clase trebuie sa indeplineasca
anumite cerinte: in primul rand sa permita anumite constructii
categoriale, in al doilea rand trebuie sa aiba anumite proprietati
categoriale speciale ( coprodusul sa fie disjunct ), iar in al treilea
rand , categoria FinSet alcatuita din multimile finite si functiile
totale, poate actiona ca un element de varf al clasei Fund ( un
membru al Fund poate reprezenta fiecare populatie
reprezentabila in FinSet ).
Dam cateva exemple de categorii din clasa Fund:
1. Categoria instantierilor TotRel , in care obiectele sunt
multimile si sagetile sunt relatiile totale. Aceasta categorie
este utila in cazul atributelor multivaluate.
2. Categoria instantierilor Bag in care obiectele sunt
multimultimile (bags), iar sagetile sunt functiile totale,
astfel incat frecventa domeniului nu depaseste niciodata
7
Poset
FuzzySet
partialitate
PartSet
TotRel
Bag
ordine
multiple
Tipurile de relatii
Relatii de subtipizare
Relatiile de subtipizare sunt folosite pentru a captura
proprietatile de mostenire. Consideram doua tipuri de relatii de
mostenire : specializarea si generalizarea.
Specializarea este utilizata atunci cand trebuiesc inregistrate
fapte specifice pentru instantieri specifice numai pentru un tip de
obiect. Un tip de obiect specializat mosteneste proprietatile
supertipului sau, dar poate sa aiba si proprietati suplimentare.
O forma speciala de mostenire este mostenirea identica.
Exista doua abordari: in prima, obiectele pot fi instantieri ale mai
multor tipuri de obiect, in a doua obiectele pot sa apara numai
intr-un singur tip de obiect. Obiectele corespunzatoare sunt
prezentate prin functii injective. Aceasta abordare are avantajul
principal ca se pot separa efectiv structura si reprezentarile. In
consecinta, o relatie de subtipizare trebuie sa fie aplicata pe un
monomorfism ( in categoria Set un monomorfism coincide cu o
functie injectiva ).
Pot sa apara probleme in mostenirea multipla : un obiect
trebuie sa corespunda unui singur obiect in fiecare supertip.
D1
D2
11
notat cu
U Pop
de subtipuri dominata de V.
In modelul de tip Pop, fiecare obiect generalizat G cu tipurile
V
specificate V este aplicat in universul instantierilor U Pop si
Tipurile de colectie
Un tip de colectie este un tip de obiect a caror instantieri
corespund multimilor unui alt tip de obiect, numit tip element.
Instantierile unui tip de colectie, ca multimi sunt identice daca si
numai daca ele contin aceleasi elemente. Ele sunt identificate
prin elementele lor si nu necesita o identificare externa.
Tipurile de colectie devin superflue daca introducem un nou
tip de constringere : constrangerea unicitatii extinderii.
Formalizarea categoriala a constrangerii unicitatii extensionale
rezulta din observatia ca o astfel de constrangere este incalcata
daca si numai daca exista o permutare netriviala a multimii
instantierilor asa incat aplicatia de la populatie la tipul de relatie
implicat, duce la aceeasi populatie. Altfel spus , daca schimbam
membrii a doua multimi ( care au primit propria lor identitate ) nu
se pierde informatie,atunci aceste doua multimi trebuie sa aiba
reprezentari identice.
12
Interpretari semantice
Categoriile de instante valide
Fiecare membru al clasei Fund are propriettile :
exista toate produsele si coprodusele finite
coprodusele sunt disjuncte
Desi exista multe categorii ale instantierilor, care satisfac
cele doua cerinte, alegem categoria FinSet , deoarece fiecare
model in aceasta categorie poate avea un duplicat in alte
categorii ale instantierilor.
Definitie O categorie C este o categorie a instantierilor
valida daca si numai daca exista toate produsele si coprodusele
finite, coprodusele sunt disjuncte, si exista un functor ( un
morfism de grafuri care pastreaza identitatile si compunerea ) F :
FinSet C, asa incat pentru toate M1 , M2 : G FinSet are loc
conditia M1 = M2 FM1 = FM2 .
Categorii valide sunt : FinSet , Set , PartSet , Rel ,
FuzzySet.
Orientarea obiectului
Modelele de date OO permit descrierea valorilor
complexe. Valorile complexe pot fi privite ca arbori finiti a caror
noduri interne indica utilizarea tuplelor si multimea
constructorilor. Tipurile in modelele de date OO pot fi definite prin
utilizarea acestor constructori.
Modelele de date conceptuale OO pot prezenta valorile
complexe fara sa utilizeze reprezentarile particulare. In modelele
de date conceptuale OO toate obiectele au propria lor identitate,
independent de compozitia lor structurala. Aceasta se poate face
daca ne concentram pe proprietatile valorilor complexe. In plus
aceste proprietati depend de tipul valorii complexe. De exemplu,
13
rs
(v )
v V
Timp
In bazele de date temporale sau cu istorii este pastrata
istoria crearii si stergerii instantelor obiectelor. Bazele de date cu
istorii nu pierd informatii si ne furnizeaza starile anterioare ale
bazei de date pentru a fi restructurate. Exista tehnici de modelare
a datelor conceptuale, care suporta notiunea explicita de timp si
in consecinta faciliteaza implementarea unei aplicatii in termini ai
sistemului de management a bazelor de date cu istorii.
Cadrul de munca poate furniza semanticile natural pentru
aceste tehnici, prin alegerea unei categorii a instantierilor
adecvata. O astfel de categorie a instantierilor ar putea fi
15
v
A
s
g
g
If
Ig
p;q
A
r;s
f+g
19
r;s
f+g
1+1
Gruparea degruparea
In tehnicile de modelare a datelor in care tipuri de relatii
pot juca un rol in alte tipuri de relatii, gruparea si degruparea sunt
notiuni comune. Degruparea este o relatie g printr-un rol r , care
este jucat de un alt tip de relatie f corespunzatoare inlocuirii
acestui rol cu rolul lui f direct. Deci, obiectele compuse care joaca
rolul r sunt descompuse in trei parti : in exemplul din figura
urmatoare, tipul de relatie negrupata h are ca participant directi
tipurile de obiect A si B, in locul participantilor indirecti prin tipul
de relatie f. Daca fiecare instantiere a tipului de relatie f are de
jucat un rol in tipul de relatie g ( aceasta este capturata de
constrangerea de cardinalitate 1 : in rolul s in schema din stanga
a figurii urmatoare ),tipul de relatie f devine superfluu dupa ce g
20
degrupare
h
A
u
B
r
grupare
g
C
s 1:
C
q
A
B
pr
qr
21
s
s
C
qr
B
s
C
care poate fi privita ca o diagrama din schema din dreapta a
figurii.
Reunuine scindare
In anumite cazuri, tipurile de relatii cu trei sau mai multe
roluri pot fi scindate fara pierdere de informatii. Aceasta este
adevarata in cazul in care exista o cheie pe n doua roluri, unde
n este numarul total de roluri ale tipului de relatie.
f
h
p
reuniune
22
B
A
v
r
scindare
C
C
In schema din dreapta a figurii, exista o cheie pe rolul t a
tipului de relatie ternara . Deci,h poate fi sindat in doua tipuri de
relatie binara, una intre tipurile de obiect A si B, iar cealalta intre
tipurile de obiect A si C. In mod natural, exista chei pe rolurile
jucate de tipul de obiect A. Trsansformarea inversa se numeste
reuniune. Pentru echivalenta, este necesar ca daca o instantiere a
lui A este asociata cu o instantiere a lui B, este de asemenea
asociata cu o instantiere a lui C si viceversa. Acesta este un
rezultat al faptului ca transformarea reuniune este bazata pe
reuniunea interioara( permite valorile nule in instantierile
relationale). Aceasta cerinta este capturata de constrangerea de
egalitate pe rolurile p si r In schema din stanga a figurii
anterioare.
f
q
B
p
A
r
r
g
ep
23
er
g
B
ep
pf
qpf
A
fg
fg
24
mn
er
pg
spg
25