Decomposição sem perda de informação
Projeção de dependências, BCNF, junção sem perda, chase e síntese em 3FN.
Sem perda: o teste
Decompor reparte atributos em esquemas cuja união cobre o original; cada instância nova é uma projeção. A decomposição é sem perda se a junção natural recuperar exatamente os tuplos originais em toda instância válida sob as DFs.
- Duas relações: sem perda se e só se ou , com DFs avaliadas no fecho das originais. Em , tem de determinar ou .
- Sem a condição, e com geram também e : perde-se a correspondência entre e .
- Uma coluna comum permite juntar; só a DF justifica reconstruir sem espúrios.
Preservar: o outro teste
Usa na relação resultante todas as DFs implicadas internas ao seu esquema: de e , a projeção em inclui .
Há preservação se a união das DFs projetadas implicar as originais; permite validar cada tabela isoladamente. Forma normal, ausência de perda e preservação são três propriedades independentes.
Com e , decompor em dá BCNF e junção sem perda ( determina ), mas perde : sob as DFs locais, .
Procedimentos
Até BCNF:
- Escolhe DF não trivial com não superchave.
- Separa e ; o passo é sem perda porque o comum contém .
- Projeta as DFs e repete; confere a preservação à parte.
Com , , : separa de e de ; resultado , aqui também com preservação.
Síntese em 3FN (sem perda e com preservação garantidas):
- Cobertura mínima com direitas unitárias.
- Uma relação por , reunindo direitas do mesmo determinante.
- Retira esquemas contidos noutros.
- Se nenhum esquema contiver uma candidata original, acrescenta-a.
Com só e em , não chegam: acrescenta a candidata . Em com , , , as candidatas são ABE e ACE; acrescentar só AE cobre mas não contém candidata nem garante junção sem perda.
Chase (três ou mais relações): uma coluna por atributo e uma linha por relação, com onde o esquema contém e símbolos próprios distintos nas ausências. Aplica cada DF às linhas que concordam na esquerda, unificando a direita em todas as ocorrências e conservando distinguidos. Uma linha prova ausência de perda; estabilizar sem nenhuma prova perda para alguma instância válida.