plug_name -> man_name, plug_conditions, plug_type
packname, scene_id -> amount, archiver_type
author_id -> author_email
author_email -> author_www
author_www -> author_id
author_www -> author_name
scene_id, anim_id, plug_name, type -> name_anifile, size_kb_ani
scene_id -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, comments, objects, lights, cameras
scene_id, anim_id -> sound, frames, raskadrovka
Левая редукция или перенос в правую часть
1. Проверка CF-зависимости:
( man_name; man_email; man_www; ) -> man_country
1.1. Сформированная CF-зависимость:
( man_email; man_www; ) -> man_country, man_name
Характеристические множества не эквивалентны
1.2. Сформированная CF-зависимость:
( man_name; man_www; ) -> man_country, man_email
Характеристические множества не эквивалентны
1.3. Сформированная CF-зависимость:
( man_name; man_email; ) -> man_country, man_www
Характеристические множества не эквивалентны
2. Проверка CF-зависимости:
( edit_name; ) -> supp_formats, man_name, edit_conditions
2.1. Сформированная CF-зависимость:
( ) -> supp_formats, man_name, edit_conditions, edit_name
Характеристические множества не эквивалентны
3. Проверка CF-зависимости:
( render_name; ) -> man_name, ren_conditions, materials
3.1. Сформированная CF-зависимость:
( ) -> man_name, ren_conditions, materials, render_name
Характеристические множества не эквивалентны
4. Проверка CF-зависимости:
( plug_name; ) -> man_name, plug_conditions, plug_type
4.1. Сформированная CF-зависимость:
( ) -> man_name, plug_conditions, plug_type, plug_name
Характеристические множества не эквивалентны
5. Проверка CF-зависимости:
( packname, scene_id; ) -> amount, archiver_type
5.1. Сформированная CF-зависимость:
( scene_id; ) -> amount, archiver_type, packname
Характеристические множества не эквивалентны
5.2. Сформированная CF-зависимость:
( packname; ) -> amount, archiver_type, scene_id
Характеристические множества не эквивалентны
6. Проверка CF-зависимости:
( author_id; author_email; author_www; ) -> author_name
6.1. Сформированная CF-зависимость:
( author_email; author_www; ) -> author_name, author_id
Характеристические множества не эквивалентны
6.2. Сформированная CF-зависимость:
( author_id; author_www; ) -> author_name, author_email
Характеристические множества не эквивалентны
6.3. Сформированная CF-зависимость:
( author_id; author_email; ) -> author_name, author_www
Характеристические множества не эквивалентны
7. Проверка CF-зависимости:
( scene_id, anim_id, plug_name, type; ) -> name_anifile, size_kb_ani
7.1. Сформированная CF-зависимость:
( anim_id, plug_name, type; ) -> name_anifile, size_kb_ani, scene_id
Характеристические множества не эквивалентны
7.2. Сформированная CF-зависимость:
( scene_id, plug_name, type; ) -> name_anifile, size_kb_ani, anim_id
Характеристические множества не эквивалентны
7.3. Сформированная CF-зависимость:
( scene_id, anim_id, type; ) -> name_anifile, size_kb_ani, plug_name
Характеристические множества не эквивалентны
7.4. Сформированная CF-зависимость:
( scene_id, anim_id, plug_name; ) -> name_anifile, size_kb_ani, type
Характеристические множества не эквивалентны
8. Проверка CF-зависимости:
( scene_id; ) -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, comments, objects, lights, cameras
8.1. Сформированная CF-зависимость:
( ) -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, comments, objects, lights, cameras, scene_id
Характеристические множества не эквивалентны
9. Проверка CF-зависимости:
( scene_id, anim_id; ) -> sound, frames, raskadrovka
9.1. Сформированная CF-зависимость:
( anim_id; ) -> sound, frames, raskadrovka, scene_id
Характеристические множества не эквивалентны
9.2. Сформированная CF-зависимость:
( scene_id; ) -> sound, frames, raskadrovka, anim_id
Характеристические множества не эквивалентны
Проверка покрытия на праворедуцированность
1. Проверка CF-зависимости:
( man_name; man_email; man_www; ) -> man_country
2.1. Сформированная CF-зависимость:
( man_name; man_email; man_www; )
Характеристические множества не эквивалентны
2. Проверка CF-зависимости:
( edit_name; ) -> supp_formats, man_name, edit_conditions
3.1. Сформированная CF-зависимость:
( edit_name; ) -> man_name, edit_conditions
Характеристические множества не эквивалентны
3.2. Сформированная CF-зависимость:
( edit_name; ) -> supp_formats, edit_conditions
Характеристические множества не эквивалентны
3.3. Сформированная CF-зависимость:
( edit_name; ) -> supp_formats, man_name
Характеристические множества не эквивалентны
3. Проверка CF-зависимости:
( render_name; ) -> man_name, ren_conditions, materials
4.1. Сформированная CF-зависимость:
( render_name; ) -> ren_conditions, materials
Характеристические множества не эквивалентны
4.2. Сформированная CF-зависимость:
( render_name; ) -> man_name, materials
Характеристические множества не эквивалентны
4.3. Сформированная CF-зависимость:
( render_name; ) -> man_name, ren_conditions
Характеристические множества не эквивалентны
4. Проверка CF-зависимости:
( plug_name; ) -> man_name, plug_conditions, plug_type
5.1. Сформированная CF-зависимость:
( plug_name; ) -> plug_conditions, plug_type
Характеристические множества не эквивалентны
5.2. Сформированная CF-зависимость:
( plug_name; ) -> man_name, plug_type
Характеристические множества не эквивалентны
5.3. Сформированная CF-зависимость:
( plug_name; ) -> man_name, plug_conditions
Характеристические множества не эквивалентны
5. Проверка CF-зависимости:
( packname, scene_id; ) -> amount, archiver_type
6.1. Сформированная CF-зависимость:
( packname, scene_id; ) -> archiver_type
Характеристические множества не эквивалентны
6.2. Сформированная CF-зависимость:
( packname, scene_id; ) -> amount
Характеристические множества не эквивалентны
6. ПроверкаCF-зависимости:
( author_id; author_email; author_www; ) -> author_name
7.1. Сформированная CF-зависимость:
( author_id; author_email; author_www; )
Характеристические множества не эквивалентны
7. Проверка CF-зависимости:
( scene_id, anim_id, plug_name, type; ) -> name_anifile, size_kb_ani
8.1. Сформированная CF-зависимость:
( scene_id, anim_id, plug_name, type; ) -> size_kb_ani
Характеристические множества не эквивалентны
8.2. Сформированная CF-зависимость:
( scene_id, anim_id, plug_name, type; ) -> name_anifile
Характеристические множества не эквивалентны
8. Проверка CF-зависимости:
( scene_id; ) -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, comments, objects, lights, cameras
9.1. Сформированная CF-зависимость:
( scene_id; ) -> size_polys, edit_name, author_id, render_name, size_kb, created, comments, objects, lights, cameras
Характеристические множества не эквивалентны
9.2. Сформированная CF-зависимость:
( scene_id; ) -> scene_name, edit_name, author_id, render_name, size_kb, created, comments, objects, lights, cameras
Характеристические множества не эквивалентны
9.3. Сформированная CF-зависимость:
( scene_id; ) -> scene_name, size_polys, author_id, render_name, size_kb, created, comments, objects, lights, cameras
Характеристические множества не эквивалентны
9.4. Сформированная CF-зависимость:
( scene_id; ) -> scene_name, size_polys, edit_name, render_name, size_kb, created, comments, objects, lights, cameras
Характеристические множества не эквивалентны
9.5. Сформированная CF-зависимость:
( scene_id; ) -> scene_name, size_polys, edit_name, author_id, size_kb, created, comments, objects, lights, cameras
Характеристические множества не эквивалентны
9.6. Сформированная CF-зависимость:
( scene_id; ) -> scene_name, size_polys, edit_name, author_id, render_name, created, comments, objects, lights, cameras
Характеристические множества не эквивалентны
9.7. Сформированная CF-зависимость:
( scene_id; ) -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, comments, objects, lights, cameras
Характеристические множества не эквивалентны
9.8. Сформированная CF-зависимость:
( scene_id; ) -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, objects, lights, cameras
Характеристические множества не эквивалентны
9.9. Сформированная CF-зависимость:
( scene_id; ) -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, comments, lights, cameras
Характеристические множества не эквивалентны
9.10. Сформированная CF-зависимость:
( scene_id; ) -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, comments, objects, cameras
Характеристические множества не эквивалентны
9.11. Сформированная CF-зависимость:
( scene_id; ) -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, comments, objects, lights
Характеристические множества не эквивалентны
9. Проверка CF-зависимости:
( scene_id, anim_id; ) -> sound, frames, raskadrovka
10.1. Сформированная CF-зависимость:
( scene_id, anim_id; ) -> frames, raskadrovka
Характеристические множества не эквивалентны
10.2. Сформированная CF-зависимость:
( scene_id, anim_id; ) -> sound, raskadrovka
Характеристические множества не эквивалентны
10.3. Сформированная CF-зависимость:
( scene_id, anim_id; ) -> sound, frames
Характеристические множества не эквивалентны
Минимальное редуцированное кольцевое покрытие
C
( man_name; man_email; man_www; ) -> man_country
( edit_name; ) -> supp_formats, man_name, edit_conditions
( render_name; ) -> man_name, ren_conditions, materials
( plug_name; ) -> man_name, plug_conditions, plug_type
( packname, scene_id; ) -> amount, archiver_type
( author_id; author_email; author_www; ) -> author_name
( scene_id, anim_id, plug_name, type; ) -> name_anifile, size_kb_ani
( scene_id; ) -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, comments, objects, lights, cameras
( scene_id, anim_id; ) -> sound, frames, raskadrovka
Естественное характеристическое множество
f(C):
man_name -> man_email
man_email -> man_www
man_www -> man_name
man_www -> man_country
edit_name -> supp_formats, man_name, edit_conditions
render_name -> man_name, ren_conditions, materials
plug_name -> man_name, plug_conditions, plug_type
packname, scene_id -> amount, archiver_type
author_id -> author_email
author_email -> author_www
author_www -> author_id
author_www -> author_name
scene_id, anim_id, plug_name, type -> name_anifile, size_kb_ani
scene_id -> scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, comments, objects, lights, cameras
scene_id, anim_id -> sound, frames, raskadrovka
R0 = ( man_name, man_email, man_www, man_country ) K0 = { man_name, man_email, man_www }
R1 = ( edit_name, supp_formats, man_name, edit_conditions ) K1 = { edit_name }
R2 = ( render_name, man_name, ren_conditions, materials ) K2 = { render_name }
R3 = ( plug_name, man_name, plug_conditions, plug_type ) K3 = { plug_name }
R4 = ( packname, scene_id, amount, archiver_type ) K4 = { packname, scene_id }
R5 = ( author_id, author_email, author_www, author_name ) K5 = { author_id, author_email, author_www }
R6 = ( scene_id, anim_id, plug_name, type, name_anifile, size_kb_ani ) K6 = { scene_id, anim_id, plug_name, type }
R7 = ( scene_id, scene_name, size_polys, edit_name, author_id, render_name, size_kb, created, comments, objects, lights, cameras ) K7 = { scene_id }
R8 = ( scene_id, anim_id, sound, frames, raskadrovka ) K8 = { scene_id, anim_id }
3 ПОСТРОЕНИЕ ЗАПРОСОВ
1. Выбрать все сцены, созданные 20.03.05
SELECT scene_id FROM 3dscene WHERE(created=”20.03.05’)