دسته بندی | ریاضی |
فرمت فایل | doc |
حجم فایل | 40 کیلو بایت |
تعداد صفحات فایل | 35 |
1-2) EZW
الگوریتم EZW در سال 1993 توسط shapiro ابداع شد نام کامل این واژه [1] به معنای کدینگ تدریجی با استفاده از درخت ضرایب ویولت است. این الگوریتم ضرایب ویولت را به عنوان مجموعه ای از درختهای جهت یابی مکانی در نظر می گیرد هر درخت شامل ضرایبی از تمام زیرباندهای فرکانسی و مکانی است که به یک ناحیه مشخص از تصویر اختصاص دارند. الگوریتم ابتدا ضرایب ویولت با دامنه بزرگتر را کددهی می کند در صورتیکه دامنه یک ضریب بزرگتر یا مساوی آستانه مشخص باشد ضریب به عنوان ضریب معنی دار [2] در نظر گرفته می شود و در غیر اینصورت بی معنی[3] می باشد یک درخت نیز در صورتی معنی دار است که بزرگترین ضریب آن از نظر دامنه بزرگتر یا مساوی با آستانه مورد نظر باشد و در غیراینصورت درخت بی معنی است.
مقدار آستانه در هر مرحله از الگوریتم نصف می شود و بدین ترتیب ضرایب بزرگتر زودتر فرستاده می شوند در هر مرحله، ابتدا معنی دار بودن ضرایب مربوط به زیر باند فرکانسی پایین تر ارزیابی می شود اگر مجموعه بی معنی باشد یک علامت درخت صفر استفاده می شود تا نشان دهد که تمامی ضرایب مجموعه صفر می باشند در غیراینصورت مجموعه به چهارزیرمجموعه برای ارزیابی بیشتر شکسته می شود و پس از اینکه تمامی مجموعه ها و ضرایب مورد ارزیابی قرار گرفته اند این مرحله به پایان می رسد کدینگ EZW براساس این فرضیه استوار است که چگالی طیف توان در اکثر تصاویر طبیعی به سرعت کاهش می یابد بدین معنی که اگر یک ضریب در زیر باند فرکانسی پایین تر کوچک باشد به احتمال زیاد ضرایب مربوط به فرزندان آن در زیر باندهای بالاتر نیز کوچک هستند به بیان دیگر اگر یک ضریب والد بی معنی باشد به احتمال زیاد فرزندان آن نیز بی معنی هستند اگر آستانه ها توانهایی از دو باشند میتوان کدینگ EZW را به عنوان یک کدینگ bit-plane در نظر گرفت در این روش در یک زمان، یک رشته بیت که از MSB شروع می شود کددهی می شود با کدینگ تدریجی رشته بیت ها و ارزیابی درختها از زیرباندهای فرکانسی کمتر به زیرباندهای فرکانسی بیشتر در هر رشته بیت میتوان به کدینگ جاسازی [4] دست یافت.
الگوریتم EZW بر پایه 4 اصل استوار است [3]
1- جدا کردن سلسله مراتبی زیرباندها با استفاده از تبدیل ویولت گسسته
1-1-2) تبدیل ویولت گسسته
تبدیل ویولت سلسله مراتبی که در EZW و SPIHT مورد استفاده قرار می گیرد نظیر یک سیستم تجزیه زیرباند سلسله مراتبی است که در آن فاصله زیرباندها در مبنای فرکانس بصورت لگاریتمی است.
در شکل 2-2 یک مثال از تجزیه دو سطحی ویولت روی یک تصویر دو بعدی نشان داده شده است. تصویر ابتدا با بکارگیری فیلترهای افقی و عمودی به چهار زیرباند تجزیه میشود. در تصویر (c ) 2-2 هر ضریب مربوط به ناحیه تقریبی 2×2 پیکسل در تصویر ورودی است. پس از اولین مرحله تجزیه سه زیر باند LH1 , HL1 و HH1 بعنوان زیرباندهای فرکانس بالایی در نظر گرفته می شوند که به ترتیب دارای سه موقعیت عمودی، افقی و قطری می باشند اگر Wv , Wh به ترتیب فرکانسهای افقی و عمودی باشند، پهنای باند فرکانسی برای هر زیر باند در اولین سطح تجزیه ویولت در جدول
1-2 آمده است[4]
جدول 2-1 ) پهنای باند فرکانسی مربوط به هر زیر باند پس از اولین مرحله تجزیه ویولت با استفاده از فیلترهای مشابه (پایین گذر و بالاگذر) زیر باند LL1 پس از اولین مرحله تجزیه ویولت، مجدداً تجزیه شده و ضرایب ویولت جدیدی به دست می آید جدول 2-2) پهنای باند مربوط به این ضرایب را نشان می دهد.
2-1-2) تبدیل ویولت بعنوان یک تبدیل خطی
میتوان تبدیل بالا را یک تبدیل خطی در نظر گرفت [5]. P یک بردار ستونی که درایه هایش نشان دهنده یک اسکن از پیکسلهای تصویر هستند. C یک بردار ستونی شامل ضرایب ویولت به دست آمده است از بکارگیری تبدیل ویولت گسسته روی بردار p است. اگر تبدیل ویولت بعنوان ماتریس W در نظر گرفته شوند که سطرهایش توابع پایه تبدیل هستند میتوان تبدیل خطی زیر را در نظر گرفت.
فرمول
بردار p را میتوان با تبدیل ویولت معکوس به دست آورد.
فرمول
اگر تبدیل W متعامد [5] باشد. است و بنابراین
فرمول
در واقع تبدیل ویولت W نه تنها متعامد بلکه دو متعامدی [6] می باشد.
3-1-2) یک مثال از تبدیل ویولت سلسله مراتبی
یک مثال از تبدیل ویولت سلسله مراتبی در این بخش شرح داده شده است. تصویر اولیه 16*16 و مقادیر پیکسلهای مربوط به آن به ترتیب در شکل 3-2 و جدول 3-2 آمده است.
یک ویولت چهارلایه روی تصویر اولیه اعمال شده است. فیتلر مورد استفاده فیلتر دو متعامدی Daubechies 9/7 است [6]. جدول 4-2 ضرایب تبدیل گرد شده به اعداد صحیح را نشان می دهد. قابل توجه است که ضرایب با دامنه بیشتر در زیرباندهای با فرکانس کمتر قرار گرفته اند و بسیاری از ضرایب دامنه های کوچکی دارند ویژگی فشرده سازی انرژی در تبدیل ویولت در این مثال به خوبی دیده می شود جدول 5-2 تصویر تبدیل یافته و کمی شده را نشان می دهد چنانکه کمی سازی تنها برای اولین سطح ویولت انجام گرفته است یک ضریب مقیاس 25/0 در هر ضریب فیلتر ویولت ضرب شده و سپس مجموعه فیلتر پاین گذر و بالاگذر روی تصویر اولیه بکار گرفته می شود اندازه گام کمی سازی مربوطه در این حالت 16 است.
پس از کمی سازی بیشتر ضرایب در بالاترین زیر باند فرکانسی صفر می شوند تصویربازسازی شده و تبدیل ویولت معکوس در شکل (b) 7-2 و جدول 6-2 آمده است. به علت کمی سازی بازسازی با اتلاف است.
4-1-2) انتقال تدریجی تصویر [1]
اگر یک تبدیل متعامد و سلسله مراتبی زیر باند، p یک ماتریس از اسکن پیکسلهای pi,j که (i, j) مختصات پیسک است و c ماتریس مربوط به ضرایب تبدیل یافته باشد، آنگاه:
فرمول
c ماتریسی است که باید کد شود.
در یک کدینگ کامل EZW ، ؟؟ ماتریس بازسازی C اولیه را برابر صفر قرار می دهد و با دریافت هر بیت آنرا تغییر می دهد.
فرمول
هدف اصلی در انتقال تدریجی این است که ابتدا، اطلاعات مهمتر تصویر فرستاده شود. ارسال درست این اطلاعات خطا را تا میزان زیادی کاهش می دهد. بنابراین نکته مهم، انتخاب اطلاعات مهمتر در C است. معیار متوسط مربعات خطا بعنوان یک معیار سنجش خطا مورد استفاده قرار می گیرد.
فرمول
که N تعداد پیکسلهای تصویر اولیه است. با توجه به اینکه Euclidean norm در تبدیل متعامد حفظ می شود میتوان گفت
فرمول
معادله نشان می دهد که با دریافت ضریب انتقال Ci,j در دیکدر ، DMSE به اندازه
فرمول
کاهش می یابد. واضح است با ارسال ضرایب بزرگتر در ابتدا، خطای تصویربازسازی شود. کاهش بیشتر خواهد داشت.
علاوه بر آن اگر Ci,j بصورت باینری باشد اطلاعات را میتوان بصورت تدریجی ارسال نمود. به بیان دیگر MSB که مهمترین بیت است در ابتدا و LSB که کم اهمیت ترین بیت است در آخر فرستاده می شود.
5-1-2) درخت جهت یابی مکانی
ایجاد و تقسیم بندی مجموعه ها با استفاده از ساختار ویژه ای به نام درخت جهت یابی مکانی انجام می شود این ساختار بگونه ای است که از ارتباط مکانی میان ضرایب ویولت در سطوح مختلف هرم زیرباندها [7] استفاده می کند.
درختهای جهت یابی مکانی در شکل 59-5 برای یک تصویر 16*16 نشان داده شده است. زیرباند LL2 مجدداً به چهار گروه که هر یک شامل 2×2 ضریب است تقسیم می شود در هر گروه هر یک از چهار ضریب (شکل دو سطح پایین گذر و بالاگذر دارد و هر سطح به چهار زیر باند تقسیم می شود).
به غیر از ضریبی که در سمت چپ و بالا قرار گرفته و با رنگ خاکستری مشخص شده است ریشة یک درخت جهت یابی مکانی است پیکانها نشان می دهند که چگونه سطوح مختلف این درختها به هم مربوطند به طور کلی یک ضریب در موقعیت (i,j) در تصویر والد چهار ضریب در موقعیتهای (2i,2y) ، (2i+1,2y) ، (2i,2y+1) و (2i+1 , 2y+1) است ریشه های درختهای جهت یابی مکانی مربوط به این مثال در زیر باند LL2 قرار گرفته اند هر ضریب ویولت به غیر از آنهایی که با رنگ خاکستری مشخص شده اند و برگها میتواند ریشه برخی زیر درختهای جهت یابی مکانی باشند.
در این مثال اندازه زیر باند LL2 برابر 4×4 است و بنابراین به چهار گروه 2×2 تقسیم شده است. تعداد درختها در این مثال 12 تا است که برابر 4 /3 اندازه بالاترین زیر باند LL است.
هر کدام از 12 ریشه در زیر باند LL2 والد چهار فرزند استا که در سطح مشابهی قرار گرفته اند. فرزندان این فرزندان در سطح یک قرار می گیرند. عموماً ریشه های درختها در بالاترین سطوح، فرزندان آنها در سطحی مشابه از آن پس فرزندان ضرایبی که در سطح k قرار دارند در سطح k-1 قرار می گیرند.
بطور کلی میتوان گفت پس از تبدیل ویولت یک تصویر را میتوان با ساختار درختی آن نشان داد که در آن یک ضریب در زیر باند پایین میتواند چهار فرزند در زیر باند بالاتر داشته باشد و هر یک از این چهار فرزند میتوانند چهار فرزند دیگر در زیرباندهای بالاتر داشته باشند. به ساختاری که در این حالت پدید می آید.
درخت چهارتایی[8] گفته می شود که هر ریشه [9] چهارگره[10] دارد. نکته بسیار مهم نوع شماره گذاری موقعیت مکانی خانه ها (ضرایب) است. ضریبی که در پایین ترین سطح و در گوشه بالا در سمت چپ قرار داد دارای موقعیت مکانی (0 و 0 ) خواهد بود و به همین ترتیب ضرایب بعدی اضافه می شوند. اگر این موقعیت گذاری رعایت نشود جواب درستی به دست نمی آید [7].
6-1-2) درخت صفر
همانگونه که قبلاًاشاره شد میان زیرباندهای مجاوری که در موقعیت مکانی مشابه قرار گرفتهاند نوعی وابستگی داخلی وجود دارد این بدان معناست که اگر ضریب مربوط به یک والد در تک آستانه مشخص بی معنی باشد به احتمال زیاد ضرایب مربوط به فرزندان نیز در مقایسه با استانه جاری بی معنی خواهد بود و این امر تأیید کننده نزولی بودن چگالی طیف توان در تصاویر طبیعی می باشد در الگوریتم EZW و الگوریتمهای مشابه این رابطه والد و فرزندی برای bitplane مربوط به باارزشترین بیت bit plante (MSB) مربوط به کم ارزشترین بیت (LSB) بکار برده می شود.
معنی دار بودن ضرایب با توجه به آستانه داده شده تعیین می گردد و آستانه در هر مرحله نصف می شود. ضرایب در هر مرحله با آستانه مقایسه می شود و با توجه به این مقایسه در bitplane مربوطه مقدار o یا 1 به آنها اختصاص داده می شود.
یک درخت صفر درختی است متشکل از ضرایبی که همگی در مقایسه با آستانه جاری بی معنی هستند در اکثر موارد درختهای صفر زیادی در یک bit plane وجود دارد. استفاده از نمایش درخت صفر برای یک ریشه به معنای بی معنی بودن تمام فرزندان آن در مقایسه با آستانه فعلی می باشد و این امر به فشرده سازی کمک شایانی می کند.
7-1-2) کدگذاری در الگوریتم EZW
در این الگوریتم دو لیست با نامهای DL [11] و SL مورد استفاده قرار می گیرند. لیست DL شامل مختصات ضرایبی است که معنی دار نیستند. لیست SL شامل بزرگی (نه مختصات) ضرایبی است که معنی دار می باشند هر دوره انجام الگوریتم شامل یک گذار اصلی[12] می باشد که در ادامه آن یک گذار فرعی [13] می آید. گامهای اصلی الگوریتم به ترتیب زیر است:
1- مقداردهی اولیه
الف) مختصات تمامی ضرایب ویولت در لیست DL قرار می گیرد.
ب ) تنظیم آستانه اولیه :
فرمول
که Ci,y ضریب ویولت می باشند.
2- گذار اصلی
تمامی ضرایب در یک مسیر از پیش تعیین شده اسکن می شوند این مسیر طبق چند الگو تعریف می شود. انتخاب مناسب هر یک از این الگوها می تواند نقش مهمی در افزایش کارایی الگوریتم داشته باشد. شکل با مقایسه هر یک از ضرایب لیست DL با آستانه جاری T یکی از چهار علامت زیر بعنوان علامت مشخصه ضریب در نظر گرفته می شود.
الف) در صورتیکه ضریب در مقایسه با آستانه جاری T معنی دار مثبت باشد علامت PS [14] بعنوان خروجی در نظر گرفته می شود. هنگامیکه این علامت ورودی دیکدر قرار گیرد ضریب را برابر T5/1 قرار می دهد.
ب) در صورتیکه ضریب در مقایسه با آستانه جاری T معنی دار و منفی باشد علامت NS [15] بعنوان خروجی در نظر گرفته می شود. هنگامیکه این علامت ورودی دیکدر قرار گیرد ضریب را برابر T5/1- قرار می دهد.
ج) در صورتیکه یک ضریب در مقایسه با آستانه جاری معنی دار نباشد ولی بعضی از فرزندان آن معنی دار باشند علامت IZ [16] (صفر منفرد) بعنوان خروجی در نظر گرفته می شود.
د) در صورتیکه یک ضریب و تمام فرزندان آن در مقایسه با آستانه جاری بی معنی باشند علامت ZTR [17] (درخت صفر) بعنوان خروجی در نظر گرفته می شود. نکته مهم این است که لازم نیست نسلهای این درخت صفر در تکرار جاری کدگذاری شوند. هنگامیکه این علامت ورودی دیکدر قرار می گیرد، به ضریب و تمامی ضرایب مربوطه به نسلهای آن مقدار صرف نسبت می دهد. مقدار این ضرایب در تکرارهای متوالی اصلاح میشود.
ضرایبی که با علامت PS و NS مشخص شده اند در لیست SL قرار گرفته و مقادیر آنها bitplane مربوطه صفر می شود فلوچارت مربوطه به دسته بندی
دسته بندی | ریاضی |
فرمت فایل | doc |
حجم فایل | 1210 کیلو بایت |
تعداد صفحات فایل | 283 |
فهرست مطالب
عنوان صفحه
فصل پنجم - دیگر زبانهای رابطه ای ............................................................................................................................... 1
5-1- حساب رابطه ای چند تایی ......................................................................................................................................... 3
5-1-1- طرح مثال ............................................................................................................................................................. 4
5-1-2- تعاریف رسمی ....................................................................................................................................................... 9
5-1-3- اطمینان در بیان ...................................................................................................................................................... 11
5-1-4- زبان های توانای پر معنی ....................................................................................................................................... 12
5-2- قلمرو حساب رابطه ای ............................................................................................................................................. 13
5-2-1- تعریف رسمی ..................................................................................................................................................... 13
5-2-2- پرس وجوهای نمونه ............................................................................................................................................. 14
5-2-3- ایمنی عبارات ....................................................................................................................................................... 16
5-2-4- قدرت بیانی زبان .................................................................................................................................................. 18
5-3- پرس وجو از طریق مثال ............................................................................................................................................ 19
5-3-1-جدول های ساختمان ............................................................................................................................................. 20
5-3-2- پرس وجو هایی روی یک رابطه ........................................................................................................................... 20
5-3-3- پرس وجو روی رابطه های جداگانه ..................................................................................................................... 25
5-3-4- جعبه وضعیت ...................................................................................................................................................... 27
5-3-5- رابطه نتیجه .......................................................................................................................................................... 30
5-3-6- QBEدر مایکروسافت اکسس ............................................................................................................................. 32
5-4- دیتالوگ ................................................................................................................................................................. 35
5-4-1- ساختار اساسی ..................................................................................................................................................... 35
5-4-2- ترکیب دستورات دیتالوگ .................................................................................................................................. 38
5-4-3- ترکیب های معنایی دیتالوگ غیر بازگشتی .......................................................................................................... 42
5-4-3-1- ترکیب های معنایی یک دستور ........................................................................................................................ 42
5-4-3-2- ترکیب معنایی برنامه ........................................................................................................................................ 44
5-4-4- ایمنی .................................................................................................................................................................. 47
5-4-5- عملیاتهای رابطه ای در دیتالوگ .......................................................................................................................... 49
5-4-6- بازگشتی در دیتالوگ .......................................................................................................................................... 51
5-4-7- قدرت بازگشتی .................................................................................................................................................. 56
5-5- خلاصه ................................................................................................................................................................... 59
مرور اصطلاحات ............................................................................................................................................................ 60
تمرین مهارت .................................................................................................................................................................. 61
تمرین ها ......................................................................................................................................................................... 63
نکاتی مربوط به فهرست کتاب .......................................................................................................................................... 66
ابزارها ............................................................................................................................................................................. 67
بخش دوم :طراحی پایگاه داده ....................................................................................................................................... 68
فصل ششم: طراحی پایگاه داده مدل E-R .................................................................................................................. 70
6-1- مفهوم کلی فرایند طراحی ....................................................................................................................................... 71
6-1-1- مراحل طراحی ................................................................................................................................................. 72
6-1-2- طراحی جایگزین ها .......................................................................................................................................... 74
6-2- مدل موجودیت رابطه ........................................................................................................................................... 75
6-2-1- گروه موجودیت ............................................................................................................................................. 76
6-2-2- گروه رابطه ها .................................................................................................................................................. 78
6-2-3- صفات ............................................................................................................................................................. 83
6-3- محدودیت ها ........................................................................................................................................................ 87
6-3-1- ترسیم کاردینالیتی ............................................................................................................................................ 87
6-3-2- کلیدها ............................................................................................................................................................. 89
6-3-2-1- گروه موجودیت ها ...................................................................................................................................... 90
6-3-2-2- گروه رابطه ها .............................................................................................................................................. 91
6-3-3- مشارکت محدودیت ها .................................................................................................................................. 93
6-4- نمودارهای موجودیت – رابطه ............................................................................................................................ 93
6-5- نتایج طراحی موجودیت – رابطه ......................................................................................................................... 102
6-5-1- استفاده از گروه موجودیت ها در مقابل صفات ............................................................................................... 102
6-5-2- استفاده از گروه موجودیت ها به جای گروه رابطه ها ...................................................................................... 105
6-5-3- گروه رابطه های n-ary در مقایل دوگانه ...................................................................................................... 106
6-5-4- جایگاه صفات رابطه ..................................................................................................................................... 109
6-6- گروه موجودیت ضعیف .................................................................................................................................... 111
6-7- ویژگیهای E-R گسترده .................................................................................................................................. 114
6-7-1- ویژه کاری .................................................................................................................................................... 115
6-7-2 – عمومی سازی .............................................................................................................................................. 118
6-7-3- صفات وراثتی ............................................................................................................................................... 120
6-7-4- محدودیت ها در عمومی سازی ..................................................................................................................... 121
6-7-5- ترکیب ......................................................................................................................................................... 125
6-7-6- نمادهای E-R جایگزین ............................................................................................................................... 128
6-8- طراحی پایگاه داده برای پروژه بانکداری ........................................................................................................... 130
6-8-1- جایگزین های طرح E-R .............................................................................................................................. 131
6-8-2- الزامات داده برای پایگاه داده بانک ................................................................................................................ 132
6-8-3- گروه های موجودیت برای پایگاه داده بانک ................................................................................................. 134
6-8-4- گروه های رابطه برای پایگاه داده بانک .......................................................................................................... 135
6-8-5- نمودار E-R برای پایگاه داده بانک .............................................................................................................. 136
6-9- تبدیل شدن به الگوی رابطه ای .......................................................................................................................... 136
6-9-1- ارائه گروه های موجودیت قوی ..................................................................................................................... 138
6-9-2- ارائه گروه های موجودیت ضعیف ................................................................................................................ 139
6-9-3 – ارائه گروه های رابطه .................................................................................................................................. 140
6-9-3-1- الگوهای زائد ............................................................................................................................................ 142
6-9-3-2- ترکیب الگوها ........................................................................................................................................... 142
6-9-4- صفات ترکیبی و چند مقداری ....................................................................................................................... 144
6-9-5- ارائه روش عمومی سازی ............................................................................................................................. 145
6-9-6- ارائه دادن ترکیب ......................................................................................................................................... 147
6-9-7- الگوی رابطه برای پروژه بانکداری ................................................................................................................ 148
6-10- جنبه های دیگر طراحی پایگاه داده ................................................................................................................. 149
6-10-1- محدودیت داده ها وطراحی پایگاه داده رابطه ای ........................................................................................ 150
6-10-2- الزامات کاربردی : پرس وجوها ، کارایی .................................................................................................... 151
6-10-3- الزامات کنترل ........................................................................................................................................... 153
6-10-4- جریان داده ها ............................................................................................................................................ 153
6-10-5- موضوعات دیگر در طراحی پایگاه داده ..................................................................................................... 154
6-11- زبان مدل سازی یکپارچه UML .................................................................................................................. 156
6-12- خلاصه ........................................................................................................................................................... 160
مروری بر اصطلاحات ................................................................................................................................................. 163
تمرین مهارت ............................................................................................................................................................. 165
تمرینات ...................................................................................................................................................................... 170
منابع ........................................................................................................................................................................... 173
ابزارها ......................................................................................................................................................................... 173
فصل هفتم: طراحی پایگاه داده رابطه ای .......................................................................................... 175
7-1- ویژگی های طراحی های رابطه ای خوب ......................................................................................................... 176
7-1-1- طراحی جایگزین : الگوهای بزرگتر .............................................................................................................. 177
7-1-2- طراحی جایگزین : الگوهای کوچکتر ........................................................................................................... 181
7-2- محدوده های غیر قابل تجزیه واولین شکل نرمال ............................................................................................... 185
7-3- تجزیه با استفاده از وابستگی های عملیاتی ....................................................................................................... 188
7-3-1- کلیدها و وابستگی های عملیاتی ................................................................................................................... 188
7-3-2- شکل نرمال Boyce-codd ...................................................................................................................... 192
7-3-3- BCNF و حفاظت وابستگی ..................................................................................................................... 193
7-3-4- سومین شکل نرمال .................................................................................................................................... 197
7-3-5- شکل های نرمال بیشتر ................................................................................................................................. 200
7-4- تئوری وابستگی عملیاتی .................................................................................................................................. 201
7-4-1- بستار مجموعه وابستگی های عملیاتی .......................................................................................................... 201
7-4-2- بستار گروه های صفات ............................................................................................................................. 205
7-4-3- پوشش استاندارد ....................................................................................................................................... 208
7-4-4- تجزیه بی نقص .......................................................................................................................................... 213
7-4-5- حفاظت وابستگی ........................................................................................................................................ 214
7-5- تجزیه با استفاده از وابستگی های عملیاتی ........................................................................................................ 217
7-5-1- تجزیه BCNF .......................................................................................................................................... 217
7-5-1-1- آزمون BCNF .................................................................................................................................... 218
......................................................................................................................... 220
7-5-2- تجزیه 3NF .............................................................................................................................................. 222
7-5-3- مقایسه BCNF و 3NF ............................................................................................................................. 225
7-6- تجزیه با استفاده از وابستگی های چند مقداری ................................................................................................. 226
7-6-1- وابستگی های چند مقداری ......................................................................................................................... 227
7-6-2- شکل نرمال چهارم ..................................................................................................................................... 230
7-6-3- تجزیه 4NF ............................................................................................................................................... 232
7-7- دیگر شکل های نرمال ..................................................................................................................................... 234
7-8- فرایند طراحی پایگاه داده ............................................................................................................................... 234
7-8-1- مدل E-R و نرمال سازی ............................................................................................................................ 235
7-8-2- نام گذاری صفات و رابطه ها ........................................................................................................................ 237
7-8-3- از نرمال درآوردن برای کارایی ................................................................................................................... 239
7-8-4- دیگر مباحث طراحی ................................................................................................................................... 240
7-9- مدل سازی داده های موقتی ............................................................................................................................. 241
7-10- خلاصه .......................................................................................................................................................... 245
مرور اصطلاحات ........................................................................................................................................................ 246
تمرین مهارت ............................................................................................................................................................ 248
تمرین ...................................................................................................................................................................... 250
واژه نامه ..................................................................................................................................................................... 254
فهرست شکل ها
عنوان صفحه
شکل 5-1- اسامی همه مشتریانی که یک وام در شاخه perryridge دارند ................................................................... 5
شکل 5-2- جدول های ساختمان برای مثال بانک ........................................................................................................ 22
شکل 5-3- نمونه پرس و جو در Microsoft access QBE .................................................................................... 32
شکل 5-4- یک پرس و جو تراکمی در Microsoft access QBE ....................................................................... 34
شکل 5-5- نمونه حساب رابطه ای .............................................................................................................................. 37
شکل 5-6- رابطه V1 .................................................................................................................................................. 37
شکل 5-7- برنامه دیتالوگ سود حساب های perryridge ......................................................................................... 41
شکل 5-8- برنامه دیتالوگ بازگشتی .......................................................................................................................... 42
شکل 5-9- نتیجه Infer(R,I) .................................................................................................................................... 44
شکل 5-10- لایه بندی رابطه ها .................................................................................................................................. 46
شکل 5-11- رویه datalog-fixpoint ..................................................................................................................... 52
شکل 5- 12- رابطه manager ................................................................................................................................. 53
شکل 5-13- کارکنان جونز در تکرار رویه datalog- fixpoint ............................................................................... 54
شکل 5-14- پایگاه داده کارکنان .............................................................................................................................. 62
شکل 5-15- پایگاه داده بیمه ..................................................................................................................................... 65
شکل 6-1- گروه موجودیت loan,customer ....................................................................................................... 78
شکل 6-2- گروه رابطه borrower ........................................................................................................................... 79
شکل 6-3- Accwss-date به عنوان صفتی برای گروه رابطه depositor .............................................................. 81
شکل 6-4- صفات مرکب نام مشتری وآدرس مشتری ................................................................................................. 83
شکل 6-5- نقشه کاردینالیتی ها a,b ............................................................................................................................ 87
شکل 6-6- نقشه کاردینالیتی ها a,b ............................................................................................................................ 89
شکل 6-7- نمودار E-R مربوط به loans,customers ........................................................................................... 94
شکل 6-8- روابط c,b,a ........................................................................................................................................... 96
شکل 6-9- نمودار E-R با یک صفت که به یک رابطه اضافه شده است ..................................................................... 96
شکل 6-10- نمودار E-R با صفات مرکب ، چند مقداری و مشتق شده .................................................................... 97
شکل 6-11- نمودار E-R با نمایشگر نقش .......................................................................................................... 99
شکل 6-12- نمودار E-R با یک رابطه سه گانه ........................................................................................................ 99
شکل 6-13- مشارکت کلی یک گروه موجودیت در یک گروه رابطه ...................................................................... 100
شکل 6-14- محدودیت های کاردینالیتی روی گروه رابطه ....................................................................................... 101
شکل 6-15- جانشین هائی برای telephone,employee ..................................................................................... 103
شکل 6-16- loan به عنوان یک گروه رابطه .................................................................................................... 105
شکل 6-17- رابطه سه گانه در مقابل سه رابطه دوگانه .............................................................................................. 108
شکل 6-18- access-date به عنوان صفتی برای گروه موجودیت account ...................................................... 110
شکل 6-19- نمودار E-R برای یک گروه موجودیت ضعیف ............................................................................... 114
شکل 6-20- عمومی سازی و ویژه کاری ............................................................................................................... 117
شکل 6-21- نمودار E-R با رابطه های زائد ......................................................................................................... 126
شکل 6-22- نمودار E-R ترکیب ....................................................................................................................... 127
شکل 6-23- نمادهای مورد استفاده در E-R ......................................................................................................... 129
شکل 6-24- نمادهای جایگزین در E-R ........................................................................................................ 130
شکل 6-25- نمودار E-R برای پروژه بانکداری .................................................................................................. 137
شکل 6-26- چند گانه loan ................................................................................................................................. 138
شکل 6-27- نمودار E-R ...................................................................................................................................... 143
شکل 6-28- نمادهای مورد استفاده در طراحی نمودار کلاس UML .................................................................... 159
شکل 6-29- نمودار E-R برای تمرین مهارت 6-9و6-22 .................................................................................. 168
شکل 6-30- نمودار E-R برای تمرین 6-11 ................................................................................................... 169
شکل 6-31- نمودار E-R برای تمرین 6-21 ................................................................................................... 171
شکل 7-1- الگوهای بانکداری برای بخش 6-9-7 ........................................................................................... 177
شکل 7-2- بخشی از چند گانه ها در رابطه های bor- loan,borrower,loan ............................................. 179
شکل 7-3- چندگانه ها در رابطه های loan-amt-br,loan-branch,loan .................................................. 181
شکل 7-4- از بین رفتن اطلاعات در یک تجزیه نامناسب ................................................................................. 185
شکل 7-5- رابطه نمونه r ................................................................................................................................. 191
شکل 7-6- گروه های رابطه Works-in,cust-banker ................................................................................ 195
شکل 7-7- گروه رابطه cust-banker-branch ........................................................................................... 196
شکل 7-8- یک روال برای محاسبه F+ .......................................................................................................... 205
شکل 7-9- یک الگوریتم برای محاسبه X+ ، بستار X تحت F ........................................................................... 207
شکل 7-10- محاسبه پوشش استاندارد ............................................................................................................ 211
شکل 7-11- آزمون برای حفاظت وابستگی ................................................................................................... 215
شکل 7-12- الگوریتم تجزیه BCNF ............................................................................................................ 219
شکل 7-13- حفاظت وابستگی ، تجزیه بی نقص در 3NF ............................................................................ 222
شکل 7-14- نمایش جدولی از XàB ...................................................................................................... 228
شکل 7-15- یک مثال از افزونگی در رابطه روی الگوی BCNF .................................................................. 229
شکل 7-16- یک رابطه R2 غیر مجاز ............................................................................................................ 229
شکل 7-17- الگوریتم تجزیه 4NF .............................................................................................................. 231
شکل 7-18- رابطه تمرین 7-2 ................................................................................................................. 248
شکل 7-19- الگوریتمی برای محاسبه X+ ....................................................................................................... 252
7-5-1-2- الگوریتم تجزیه BCNF ...........................
ما در فصل2 جبر رابطه ای را ارائه کردیم که اشکال پایه ای در بسیاری از مواردی هستند که در زبان SQL Query استفاده می شوند . جزئیات بیشتر در فصل های 3 و 4 ارائه شد . در این فصل ابتدا دوزبانی را که بیشتر رسمیت دارند را مطالعه می کنیم یکی حساب رابطه ای چندتایی و یکی حساب رابطه ای حوزه . که این دو زبان رسمی زبان هایی هستند بر پایة پرس و جو[1] و مبتنی بر منطق ریاضی ، و این دو زبان رسمی شکل پایه ای برای دو یا بیشتر زبان های دوستانه هستند ، که بعداً در این فصل QBE[2] و Datalog را مطالعه می کنیم .
بر خلاف SQL و QBE یک زبان گرافیکی به گونه ای به شکل جداول می باشد .QBE و جایگزینش خیلی مورد استفاده قرار می گیرند در سیستمهای پایگاه داده در کامپیوترهای شخصی . Datalog یک نمونه ترکیبی بعد از زبان Prolog دارد . هر چند در حال حاضر به صورت تجاری از این دست آورد استفاده نمی شود . Datalog بیشتر در جستجوی سیستم های پایگاه داده ای مورد استفاده قرار می گیرد .
برای QBE و Datalog ، ما ساختارها و مفاهیم بنیادی را سریع تر از یک کتاب راهنمای جامع کاربران برای این زبان ها به دست می آوریم ، عقیده بر این است که شخص یکی از این زبان ها را انتخاب کند ، ممکن است در جزئیات متفاوت باشند یا ممکن است تنها یک زیر مجموعه از تمام زبان ها را تأیید کند .
وقتی که ما یک عبارت جبری رابطه ای را می نویسم . ما یک روالی را که جوابهایی برای پرس و جو به وجود می آورند را مهیا می کنیم . در مقام مقایسه حساب رابطه ای چندتایی یک زبان تحقیقی غیر رویه ای اطلاعات خوبی را بدون دادن یک روال ویژه برای به دست آوردن آن اطلاعات ارائه می دهد . یک پرس و جو در حساب رابطه ای چندتایی که مثل { t | p (t ) } بیان می شود منظور این است که آن یک مجموعه ای از همه متغییرهائی چون t می باشد به گونه ای که p ( t ) مبتنی بر آن درست باشد به ازاء همه t ها. در دنباله مطالبمان ، ما از t [A] برای مشخص کردن مقدار متغییر t بر روی صفت A استفاده می کنیم و ما از r t برای مشخص کردن یک متغییر t که در رابطه با r می باشد ، استفاده می نماییم.
قبل از این که ما یک تعریف رسمی از حساب رابطه ای چندتایی ارائه بدهیم ، ما به بعضی از پرس و جو ها که در جملات جبری رابطه ای در بخش 2-2 نوشته ایم برمی گردیم . به یاد آورید که پرس و جو ها از الگوی های زیر پیروی می کنند :
شاخه ( نام شاخه ـ شهر شاخه ـ موجودی ( دارائی ) )
خریدار ـ مشتری ( نام مشتری و جبر مشتری ، شهر مشتری )
وام ( شماره وام ـ نام شاخه ـ مقدار )
وام گیرنده ( نام مشتری ـ شماره وام )
حساب ( شماره حساب ـ نام شاخه ـ موجودی )
سپرده گذار ( نام مشتری ـ شماره حساب )
پیدا کردن نام شاخه ، شماره وام ، مبلغ وام برای وام های بیشتر از 1200 دلار :
{loam ^ t [ amount ]> 1200 t½ t }
فرض کنید که ما خواسته باشیم فقط صفت ( شماره وام ) ، بیشتر از همه صفات رابطه وام باشد . برای نوشتن این پرس و جو در حساب رابطه ای چندتایی ما به نوشتن یک توضیح نیاز داریم . برای یک رابطه در این طرح یا مدل ( شماره وام ) ما به چندتایی ها بر روی شماره وام نیاز داریم هم چنانکه یک چندتایی در وام به وسیله یک صفت, مقداری بزرگتر از 1200 وجود دارد . برای بیان این تقاضا ما به ساختار وجود داشتن از مطلق ریاضی نیاز داریم . نکته :
r ( Q (t) ) t
وجود یک متغییر t متعلق به r به گونه ای که Q (t) درست باشد . از این نکات استفاده می کنیم ، تا بتوانیم پرس و جو را بنویسیم همچون ، پیدا کردن شماره وام برای هر یک از وام ها به گونه ای که مبلغ بزرگ تر از 1200 دلار باشد . همچون :
loan ( t [ loan - number] = S [loan-number]^S [amount]>1200}S t½}
در انگلیسی ، ما می خوانیم جمله یا توضیحی قبلی به عنوان ” دسته ای از همه متغیرهایی همچون t که وجود دارد یک متغیر ( چندتایی) S متعلق به loan برای هر مقدار t و s متعلق به loan-number که مساوی هستند و مقدار S برای صفت amount بزرگ تر از 1200 دلار هستند .
متغیر چندتایی t تنها در نشانه های loan-number تعریف می شود از این که تنها صفتی از بودن یک حالت ویژه برای t وجود دارد . نتیجه این است که یک ارتباط روی loan – number وجود دارد .
نتیجه پرس و جو پیدا کردن اسامی همه مشتری ها که یک وام از شاخة Perryridge دارند . این پرس و جو اندکی پیچیده تر از تحقیقات قبلی است. بعد از درگیر کردن دو رابطه : قرض کننده و وام . ما باید همه درخواست ها را مشاهده کنیم . بنابراین ، ما دو شرط « وجود داشتن » در عبارت حساب رابطه ای چندتایی داریم که به وسیله ( ^ ) and متصل شده اند . ما پرس و جو را به شکل زیر می نویسیم:
{ t½ s borrower ( t [ customer-name] = S [Customer-name]^ u loan
( u [ loan – number] = S [ loan- number] ^ u [ branch –name ] = “ perryridge” )) }
customer – name |
Adams Hayes |
شکل 5-1 اسامی همه مشتری هایی که یک وام در شاخه Perryridge دارند .
در انگلیسی ، این مطلب به صورت همه متغیرهائی ( customer – name ) برای هر مشتری که یک وام از یک شاخه Perryridge دارد ، بیان می گردد . متغیرهای چندتایی u این اطمینان را می دهند که مشتری یک قرض کنند از شاخه Perryridge می باشد . متغیرهای چندتایی S در شماره وام یکسان مثل S محصور شده اند . شکل 1- 5 نتیجه این پرس و جو را نشان می دهد .
برای یافتن همه مشتری هایی که یک وام دارند و یک موجودی و یا هر دو را در بانک دارند ، ما عملوند مشترک در روابط جبری به کار می بریم . در جبر رابطه ای چندتایی ما به دو شرط « وجود داشتن » نیاز داریم که به وسیله ( v ) یا متصل می شوند :
{ t½ s borrower ( t [ customer-name] = S [Customer-name] ) v u depositor ( t [ customer – name] = u [ customer- name] ) }
این توضیح جمله همه اسامی مشتری های چندتایی را برای نگهداری آن به یکی از روشهای زیر را می دهد .
l نام مشتری در بعضی چندتایی ها از رابطه قرض کننده نوشته می شود همچون قرض کننده از بانک
l نام مشتری در بعضی چندتایی ها از رابطه امانت گذار نوشته می شود همچون امانت گذار در بانک .
اگر بعضی از مشتری ها هر دو ، یک وام و یک حساب در بانک را داشته باشند، مشتری فقط یکبار در نتیجه ظاهر می شود . چرا که در تعریف ریاضی در یک مجموعه اجازه داده نمی شود که از عناصر نسخه برداری شود .
نتیجه این تحقیق در شکل 11-2 نشان داده شده است.
اکنون اگر تنها آن مشتری هایی را که هر دو یک حساب و یک وام بانک دارند را خواسته باشیم، نیاز داریم به اینکه ( v ) or را به ( ^ ) and در جمله قبلی تغییر دهیم.
{ t½ S borrower ( t [ customer-name] = S [Customer-name] ) ^ u depositor ( t [ customer – name] = u [ customer- name] ) }
نتیجه این پرس و جو در شکل 19- 2 نشان داده شده ا ست .
حال پرس و جوی یافتن همه مشتری هایی که یک حساب بانکی دارند اما یک وام از بانک ندارند را ملاحظه کنید. بیان ریاضی رابطه ای برای این پرس و جو مانند بیان هایی که ما ارائه کردیم می باشد . بجز آنهایی که ما از علامت ~)) not استفاده کردیم .
{ t½ u depositor ( t [ customer-name] = u [Customer-name] ) ^ ~S borrower ( t [ customer – name] = S [ customer- name] ) }
این بیان ریاضی رابطه ای چندتایی از depositor ( ...)u استفاده می کند . با شرط آن که نیاز است به این که مشتری یک حساب در بانک داشته باشد و از
borrower ( ...) S ~ استفاده می شود با شرط این که آن مشتری ها که پیدا می شوند متعلق به بعضی از متغیر رابطه ای وام گیرنده ای که یک وام از بانک دارند ,نباشد .
نتایج این پرس و جو در شکل 12 – 2 نشان داده شده است .
در پرس و جو ما بایستی از جهت نشان دادن نتیجه و دلالت استفاده کنیم . شکلQ p به معنی p " آن گاه "Q است . که آن « اگر p درست باشد آن گاه Q باید درست باشد » می باشد . نکته این که Q P منطقاً مساوی است با ~ PVQ . استفاده از استدلال سریع تر از not و or اغلب به یک بیان بیشتر یک پرس و جو در انگلیسی اشاره می کند .
پرس و جویی را که ما در بخش 3-3-2 استفاده کرده ایم ملاحظه نمائید. برای توضیح بخش عمل : « یافتن همه مشتری هائی که یک حساب در همه شاخه های که معلوم شده در Brooklyn دارند . نوشتن این پرس و جو در حساب رابطه ای چندتایی ، « برای همه » ساختار مشخص شده ای را به وسیله ایجاد می کنیم .
توجه :
به معنی ” Q برای همه متغیرهای t در رابطه با r درست است “ و ما توضیحی برای پرس و جو خود به شکل زیر می نویسیم:
{ t½r customer ( r [ customer-name] = t [Customer-name] ) ^ ( branch ( u [branch – city ] = “ Brooklyn” DEPOSITOR ( t [ customer-name] = S [ customer – name ] ^ w account ( w [ account – number ] = S [ account – number ] ^ w [ branch –name ] = u [ branch – name] )))) }
در انگلیسی ، ما این جمله را این گونه بیان می کنیم « همه مشتری هایی که در آن
( customer- name ) متغیر t هست . برای همه متغیرهای u در رابطة branch و اگر مقدار u به عنوان یک صفت branch-city مساوی Brooklyn باشد آن گاه مشتری یک حساب در شاخه ای که نام آن ظاهر شده است در صفت name - branch متغیر u داشته باشد» .
نکته ظریفی در بالای این پرس و جو وجود دارد این است که : اگر هیچ شعبه ای درBrooklyn وجود نداشته باشد و نام همه مشتری هائی که در این شرط برقرارند وجود نداشته باشد .
خط اول توضیح پرس و جو در این حالت بحرانی است ـ بدون شرط
customer ( r [customer-name ] = t [ customer-name ] )
اگر هیچ شاخه ای در Brooklyn وجود نداشته باشد ، هیچ مقدار t ( به انضمام مقادیری که نام مشتری در رابطه customer نیستند . ) محدود شود .
5-1-2 تعاریف رسمی
حالا ما برای بیان تعاریف رسمی آماده هستیم. یک منطق رابطه ای چندتایی به شکل زیر بیان می شود:
{ t½ p ( t ) }
هرکجا که p به عنوان فرمول ظاهر شود ، ممکن است چندین متغیر چندتایی در یک فرمول ظاهر شود . یک متغیر چندتایی به یک متغیر آزاد که بیان می شود به وسیله یک یا گفته می شود . بنابراین ، در
{ t loan ^ customer ( t [ branch-name] = S [branch-name] )
t یک متغیر آزاد می باشد . متغیر چندتایی S گفته می شود که یک متغیر ناگزیر می باشد . یک شکل منطق رابطه ای چندتایی از عناصر خارجی ساخته می شود. یک عنصر به یکی از اشکال زیر می باشد :
l rS ، هنگامی که S یک متغیر چندتایی هست و r یک رابطه می باشد . ( ما از عمل به شکل استفاده نمی کنیم)
l s[n](-)u[y] و هنگامی که S و U متغیرهای چندتایی هستند و x یک صفت برای زمانی که S تعریف شده است می باشد و y یک صفت برای زمانی u تعریف شده است می باشد و (- ) یک عملگر مقایسه ای است . () ، نیازمند هستیم که متغیرهای x و y بتوانند عضو مجموعه ای باشند که بتوانند به وسیله عملگر (- ) مقایسه شوند .
l S [x](-)c ، هنگامی که S یک متغیر چندتایی هست ، x یک صفت که توسط s تعریف می شود ، است . (- ) یک عملگر مقایسه ای است و c یک مقدار ثابت در مکانی.
l ( حوزه ) از صفت x است . ما فرمولی از عناصری که از قوانین زیر پیروی می کنند
می سازیم :
l یک اتم ، یک فرمول است .
l اگر P1 یک فرمول باشد ، آنگاه ~P1 و ( P1 ) فرمول هستند .
l اگر P1 و P2 فرمول باشند ، آنگاه P1VP2 و P1^P2 و P2 P1 فرمول هستند.
l اگر P1 (S) یک فرمول باشد متشکل از یک متغیر چندتایی آزاد s و r یک رابطه هست ، آنگاه
r( P1 (S) ( P1 (S) ) and
نیز فرمول هستند .
همچنین ما می توانیم برای روابط جبری عبارت های معادلی را که در ظاهر هم مشکل نباشند را بنویسیم .
در جبر رابطه ای چندتایی ، این عبارت ها شامل 3 قانون زیر می باشند :
1. P1P2 is equivalent to ~ ( ~ ( P1 ) ~ ( P2 )) .
2. ( P1 (t)) is equivalent to ~ tr ( ~ P1 (t) )
3. P1P2 is equivalent to ~ ( P1 ) P2.
یک نتیجه پایانی برای آدرس داده وجود دارد . یک بیان جبر رابطه ای چندتایی ممکن یک رابط نامحدود عمومی می باشد . که ما این عبارت را این گونه می نویسیم :
loan ) } { t | ~ ( t
به طور نامحدود چندتایی های زیادی که در loan نیستند ، وجود دارد . بیشتر این چندتایی ها شامل مقادیری هستند که هرگز در پایگاه داده ظاهر نمی شوند .
بدون شک ما امید چندانی برای پذیرش این چنین عبارت هائی را نداریم . برای یاری ما محدودیت در جبر رابطه ای چندتایی را تعریف می کنند. ما حیطه یک فرمول رابطه ای چندتایی را معرفی می کنیم و p به طور حسی ، مکان p به شکل دامنه ( p ) مشخص می شود ، همه مقادیر ارجاع شده به وسیلة p در آن هست. آنها شامل مقادیر نام برده شده در خود p هستند به همان خوبی مقادیری که در یک رابطة چندتایی ذکر شده در p ظاهر می شوند . بدین ترتیب ، موقعیت p هست همه مقادیری که صریحاً در p ظاهر می شوند یا این که در یک یا بیشتر روابطی که اسامی آنها را به وجود می آورند در p ، پدیدار می شوند . برای مثال دامنه (t [ amount] > 1200 loan t ) مجموعه ای شامل 1200 مجموعه همه مقادیر ظاهر شده در loan است .
همچنین دامنه loan ) ) ( ~ ( t مجموعه از همه مقادیر پدید آمده در loan است زمانی که رابطه loan در عبارت نامبرده شده .
ما گفتیم که یک عبارت { t | p ( t ) } درست است اگر همه مقادیر که به وجود می آیند در مجموعه مقادیر از دامنه ( P ) عبارت loan ) } { t | ~ ( t مجموعه از همه مقادیری که در loan وجود دارند بنابراین ، این امکان وجود دارد که داشته باشد یک چندتایی t که در loan نیست و شامل مقادیری که وجود ندارد در loan . به طور مثال عبارت هایی از حساب رابطه ای چندتایی که ما در این قسمت می نویسیم درست هستند .
5-1-4 زبانهای توانای پرمعنی
حساب رابطه ای چندتایی محصور شده با عبارتهای درست که در روابط قوی جبری پایه برابر هستند با (عملگرهای p , u , - , x , اما بدون عملگرهای رابطه ای عمومی چون g و عملگرهای رابطه ای خارجی) بنابراین برای هر جمله جبری رابطه ای فقط عملگر پایه به کار می رود و یک جمله ( توضیح ) معادل در حساب رابطه ای چندتایی است و برای هر جمله رابطه ای چندتایی یک حساب رابطه ای چندتایی برابر آن وجود دارد .
ما اینجا این تحقیق را اثبات نخواهیم کرد ؛ نکات مربوط به فهرست کتب شامل مراجعه به دلایل می باشد . برخی قسمتهای این دلایل شامل تمرین ها است .
ما توجه خواهیم کرد به حساب رابطه ای چندتایی که هیچ معادلی برای عملگرهای به هم پیوسته ندارند و آن می تواند به پشتیانی تراکم بسط داده شود و ادامه دادن حساب رابطه ای چندتایی به طور دستی بیان علم حساب که درست می باشد.
5-2 قلمرو حساب رابطه ای
شکل دوم حساب رابطه ای، که قلمرو حساب رابطه ای نامیده می شود، از متغیرهای سد[3] استفاده می کند. این متغیرها به جای استفاده از مقادیر یا چندگانه کلی از متغیرهای برگرفته از مقادیری استفاده می کند که برخواسته از قلمرو خصوصیات اند. البته قلمرو حساب رابطه ای به طور دقیقی به حساب رابطه ای چندگانه مربوط می شود.
قلمرو حساب رابطه ای به عنوان تئوری بنیادین بسیاری از مفاهیم مورد استفاده زبان، بکار میرود. درست شبیه جبر رابطه ای که به عنوان پایه ای برای زبان SQL بکار میرود.
5-2-1 تعریف رسمی
یک عبارت در قلمرو حساب رابطه ای به صورت:
{ < x1 ,x2 ,….,xn > | P(x1 ,x2 ,….,xn) }
است بطوریکه x1 ,x2 ,….,xn متغیرهای قلمرو را بیان می کند. P بیانگر یک فرمول ترکیب اتم هاست، همانگونه که در حساب رابطه ای چند تایی بود. اتم در قلمرو حساب رابطه ای یکی از شکلهای زیر را داراست:
ما با استفاده از قواعد زیر یک فرمول از اتم ها ایجاد کرده ایم:
نیز یک فرمول است.
برای نمایش خلاصه تر می نویسیم:
5-2-2 پرس وجوهای نمونه
اکنون پرس وجوهایی از قلمرو چندگانه رابطه ای برای نمونه هایی که قبلاً توضیح دادیم ارائه می دهیم. به شباهت این عبارات و عبارات مشابه قلمرو چندگانه رابطه ای توجه نمایید.
{ < l , b , a > | < l , b , a > loan a > 1200 }
{ < l > | b , a ( < l , b , a > loan a > 1200 }
اگرچه پرس و جوی دوم مانند آن مورد که برای چندگانه حساب رابطه ای نوشتیم، به نظر میرسد، اما با هم یک تفاوت مهم دارند. درحساب چندگانه، وقتی می نوشتیم برای بعضی متغیر چندگانه s، بلافاصله آنرا با نوشتن یک به یک رابطه متصل می کردیم. اگر چه، وقتی در قلمرو حساب می نویسیم ، b به یک چندگانه اشاره نمی کند، اما بلکه به مقدار یک قلمرو اشاره دارد. بنابراین، دامنه متغیر b تا وقتی که زیر فرمول loan< l , b , a > متغیر b را به نامهای شعبه که در رابطه دیده می شوند محدود می کند، نا محدود است.
اکنون ما چندین مثال از پرس و جوها در قلمرو حساب رابطه ای بیان می کنیم.
{ < c,a > | l (
b( < l,b,a>loan b="Perryridge"))}
{ < c > | l ( < c,l > borrower b , a (
{ < c > | s,t ( < c,s,t > customer x,y,z (
در زبان انگلیسی این عبارت را اینگونه تفسیر می کنیم: "مجموعه همه متغییرهای c (نام مشتری) که در آن برای همه متغییرهای های x,y,z (نام شعبه، شهر شعبه، موجودی) اگر شهر شعبه بروکلین است، آنگاه این عبارات همواره درست است:
5-2-3 ایمنی عبارات
یادآور می شویم که در حساب چندگانه رابطه ای (بخش 5-1)، می توان عباراتی نوشت که بی نهایت رابطه تولید کند. این موضوع ما را به تعریف ایمنی برای عبارات حساب چندگانه رابطه ای سوق می دهد. برای قلمروی حساب رابطه ای نیز وضعیت مشابهی رخ می دهد. یک عبارت مانند
{ < l,b,a > | ⌐ ( < l,b,a > loan)}
نا ایمن است. زیرا مقادیری از نتیجه را که در قلمروی عبارت نیستند را پذیرش می کند.
در قلمروی حسابهای رابطه ای نیز باید نگران شکل فرمول در شرطهای "There exist" و "For all" باشیم. به عبارت
{ < x > |y (< x,y > r) z (⌐ ( < x,z > r ) P(x,z))}
وقتی p شامل بعضی فرمولهای شامل x یا z است توجه نمایید. می توانیم قسمت اول فرمول را r) y (< x,y > فقط با مقدار داخل r مورد ارزیابی قرار دهیم. اگرچه برای تست کردن قسمت دوم فرمول،
P(x,z)) r ) z(⌐ ( < x,z >
باید مقادیری برای z که در r ظاهر نشده اند را مورد توجه قرار دهیم. بنابراین در حالت کلی تست کردن قسمت دوم فرمول بدون ملاحظه کردن تعداد نامتناهی از مقادیر بالقوه برای z ، امکانپذیر نیست. در عوض برای ممنوع کردن عبارات مانند آنچه قبلاً ذکر شد، محدودیتهایی را اضافه کردیم.
در حساب چندگانه رابطه ای، هر متغیر وجودی تعیین شده را به یک دامنه مشخص رابطه محدود می کنیم. چون در قلمروی حساب اینکار را نمی کنیم، برای کار با موارد مشابه مثالمان، قواعدی را به تعریف ایمنی اضافه می کنیم. عبارت:
{ < x1 ,x2 ,….,xn > | P(x1 ,x2 ,….,xn) }
را ایمن گوییم هرگاه همه موارد زیر را داشته باشیم:
هدف از قواعد اضافی این است که مطمئن شویم که می توانیم "There exist" و "For all" را تست کنیم بدون آنکه مجبور باشیم بینهایت حالت ممکن را تست کنیم. به قاعده دوم در تعریف ایمنی توجه کنید. برای آنکه x (P1(x)) برقرار باشد، نیاز به این داریم که فقط یک x پیدا کنیم که P1(x) برقرار باشد. در حالت کلی، باید تعداد خیلی زیاد از مقادیر برای تست وجود داشته باشد. اگرچه اگر عبارت ایمن باشد، می توانیم توجه مان را به مقادیری از dam(P1) محدود کنیم. این محدودیت چندگانه هایی که باید مورد توجه قرار دهیم را به تعداد محدودی کاهش می دهد.
این وضعیت برای زیرفرمول به شکل (P1(x)) x ، به همین شکل است. برای اثبات درستی (P1(x)) x، بایدکلاٌ، همه مقادیر ممکن را تست کنیم، بنابراین باید بسیاری از مقادیر را تا بی نهایت آزمایش کنیم. همانند قبل اگر بدانیم که عبارت ایمن است همین برای ما کافیست که P1(x) را برای این مقادیر برگرفته از dam(P1) تست کنیم. تمام قلمرو عبارتهای حساب رابطه ای که ما در پرس و جو های مثال این بخش آورده ایم؛ ایمن هستند.
دسته بندی | علوم انسانی |
فرمت فایل | doc |
حجم فایل | 38 کیلو بایت |
تعداد صفحات فایل | 23 |
مقاله بررسی ماتریس الگوریتم در 23 صفحه ورد قابل ویرایش
-2) EZW
الگوریتم EZW در سال 1993 توسط shapiro ابداع شد نام کامل این واژه به معنای کدینگ تدریجی با استفاده از درخت ضرایب ویولت است. این الگوریتم ضرایب ویولت را به عنوان مجموعه ای از درختهای جهت یابی مکانی در نظر می گیرد هر درخت شامل ضرایبی از تمام زیرباندهای فرکانسی و مکانی است که به یک ناحیه مشخص از تصویر اختصاص دارند. الگوریتم ابتدا ضرایب ویولت با دامنه بزرگتر را کددهی می کند در صورتیکه دامنه یک ضریب بزرگتر یا مساوی آستانه مشخص باشد ضریب به عنوان ضریب معنی دار در نظر گرفته می شود و در غیر اینصورت بی معنی می باشد یک درخت نیز در صورتی معنی دار است که بزرگترین ضریب آن از نظر دامنه بزرگتر یا مساوی با آستانه مورد نظر باشد و در غیراینصورت درخت بی معنی است.
مقدار آستانه در هر مرحله از الگوریتم نصف می شود و بدین ترتیب ضرایب بزرگتر زودتر فرستاده می شوند در هر مرحله، ابتدا معنی دار بودن ضرایب مربوط به زیر باند فرکانسی پایین تر ارزیابی می شود اگر مجموعه بی معنی باشد یک علامت درخت صفر استفاده می شود تا نشان دهد که تمامی ضرایب مجموعه صفر می باشند در غیراینصورت مجموعه به چهارزیرمجموعه برای ارزیابی بیشتر شکسته می شود و پس از اینکه تمامی مجموعه ها و ضرایب مورد ارزیابی قرار گرفته اند این مرحله به پایان می رسد کدینگ EZW براساس این فرضیه استوار است که چگالی طیف توان در اکثر تصاویر طبیعی به سرعت کاهش می یابد بدین معنی که اگر یک ضریب در زیر باند فرکانسی پایین تر کوچک باشد به احتمال زیاد ضرایب مربوط به فرزندان آن در زیر باندهای بالاتر نیز کوچک هستند به بیان دیگر اگر یک ضریب والد بی معنی باشد به احتمال زیاد فرزندان آن نیز بی معنی هستند اگر آستانه ها توانهایی از دو باشند میتوان کدینگ EZW را به عنوان یک کدینگ bit-plane در نظر گرفت در این روش در یک زمان، یک رشته بیت که از MSB شروع می شود کددهی می شود با کدینگ تدریجی رشته بیت ها و ارزیابی درختها از زیرباندهای فرکانسی کمتر به زیرباندهای فرکانسی بیشتر در هر رشته بیت میتوان به کدینگ جاسازی دست یافت.
الگوریتم EZW بر پایه 4 اصل استوار است [3]
1- جدا کردن سلسله مراتبی زیرباندها با استفاده از تبدیل ویولت گسسته
1-1-2) تبدیل ویولت گسسته
تبدیل ویولت سلسله مراتبی که در EZW و SPIHT مورد استفاده قرار می گیرد نظیر یک سیستم تجزیه زیرباند سلسله مراتبی است که در آن فاصله زیرباندها در مبنای فرکانس بصورت لگاریتمی است.
در شکل 2-2 یک مثال از تجزیه دو سطحی ویولت روی یک تصویر دو بعدی نشان داده شده است. تصویر ابتدا با بکارگیری فیلترهای افقی و عمودی به چهار زیرباند تجزیه میشود. در تصویر (c ) 2-2 هر ضریب مربوط به ناحیه تقریبی 2×2 پیکسل در تصویر ورودی است. پس از اولین مرحله تجزیه سه زیر باند LH1 , HL1 و HH1 بعنوان زیرباندهای فرکانس بالایی در نظر گرفته می شوند که به ترتیب دارای سه موقعیت عمودی، افقی و قطری می باشند اگر Wv , Wh به ترتیب فرکانسهای افقی و عمودی باشند، پهنای باند فرکانسی برای هر زیر باند در اولین سطح تجزیه ویولت در جدول
1-2 آمده است[4]
جدول 2-1 ) پهنای باند فرکانسی مربوط به هر زیر باند پس از اولین مرحله تجزیه ویولت با استفاده از فیلترهای مشابه (پایین گذر و بالاگذر) زیر باند LL1 پس از اولین مرحله تجزیه ویولت، مجدداً تجزیه شده و ضرایب ویولت جدیدی به دست می آید جدول 2-2) پهنای باند مربوط به این ضرایب را نشان می دهد.
2-1-2) تبدیل ویولت بعنوان یک تبدیل خطی
میتوان تبدیل بالا را یک تبدیل خطی در نظر گرفت [5]. P یک بردار ستونی که درایه هایش نشان دهنده یک اسکن از پیکسلهای تصویر هستند. C یک بردار ستونی شامل ضرایب ویولت به دست آمده است از بکارگیری تبدیل ویولت گسسته روی بردار p است. اگر تبدیل ویولت بعنوان ماتریس W در نظر گرفته شوند که سطرهایش توابع پایه تبدیل هستند میتوان تبدیل خطی زیر را در نظر گرفت.
فرمول
بردار p را میتوان با تبدیل ویولت معکوس به دست آورد.
فرمول
اگر تبدیل W متعامد باشد. است و بنابراین
فرمول
در واقع تبدیل ویولت W نه تنها متعامد بلکه دو متعامدی می باشد.
3-1-2) یک مثال از تبدیل ویولت سلسله مراتبی
یک مثال از تبدیل ویولت سلسله مراتبی در این بخش شرح داده شده است. تصویر اولیه 16*16 و مقادیر پیکسلهای مربوط به آن به ترتیب در شکل 3-2 و جدول 3-2 آمده است.
یک ویولت چهارلایه روی تصویر اولیه اعمال شده است. فیتلر مورد استفاده فیلتر دو متعامدی Daubechies 9/7 است [6]. جدول 4-2 ضرایب تبدیل گرد شده به اعداد صحیح را نشان می دهد. قابل توجه است که ضرایب با دامنه بیشتر در زیرباندهای با فرکانس کمتر قرار گرفته اند و بسیاری از ضرایب دامنه های کوچکی دارند ویژگی فشرده سازی انرژی در تبدیل ویولت در این مثال به خوبی دیده می شود جدول 5-2 تصویر تبدیل یافته و کمی شده را نشان می دهد چنانکه کمی سازی تنها برای اولین سطح ویولت انجام گرفته است یک ضریب مقیاس 25/0 در هر ضریب فیلتر ویولت ضرب شده و سپس مجموعه فیلتر پاین گذر و بالاگذر روی تصویر اولیه بکار گرفته می شود اندازه گام کمی سازی مربوطه در این حالت 16 است.
پس از کمی سازی بیشتر ضرایب در بالاترین زیر باند فرکانسی صفر می شوند تصویربازسازی شده و تبدیل ویولت معکوس در شکل (b) 7-2 و جدول 6-2 آمده است. به علت کمی سازی بازسازی با اتلاف است.
1- ضرایب با دامنه بزرگتر زدوتر ارسال می شوند.
2- بیتهای پرارزش تر ضریب حاوی اطلاعات کمتری هستند و زودتر ارسال میشوند.
میتوان نشان داد که چگونه اینکدر SPIHT از این اصلها برای انتقال تدریجی ضرایب ویولت به دیکدر استفاده می کند فرض می شود تبدیل ویولت به تصویر اعمال شده و ضرایب Ci,j در حافظه ذخیره شده اند. این ضرایب بدون در نظر گرفتن علامتشان مرتب شده و اطلاعات مرتب شده در آرایه m قرار گرفته اند و عضو m(k) از این آرایه شامل مختصات (i,j) مربوط به آرایه Ci,j است و بنابراین برای همه مقادیر k داریم
فرمول
جدول 58-5 مقادیر فرضی 16 ضریب را نشان می دهد که هر کدام بعنوان یک عدد 16 بیتی نشان داده شده است. پرارزشترین بیت،بیت علامت است و 15 بیت باقیمانده مربوط به مقدار عدد هستند. اولین ضریب است که برابر با S1aci…r است. ضریب دوم نیز برابر با است و به همین ترتیب
اطلاعات مرتب شده ای که اینکدر باید بفرستد دنباله m(k) است که به ترتیب زیر است:
علاوه بر آن باید 16 علامت و 16 ضریب را به ترتیب ارزش بفرستد. یک انتقال مستقیم شامل ارسال 16 عدد است. این روش یک روش wastfull است. در الگوریتم SPIHT ، اینکدر وارد یک حلقه می شود که در هر تکرار حلقه دو گام انجام می شود: گام مرتب سازی و گام اصلاح.
در اولین تکرار اینکدر عدد 2= L یعنی تعدد ضرایبی را که در فاصله
فرمول
قرار دارند می فرستد در ادامه دو جفت مختصات ( 3و 2 ) و (4 و 3) و علامت دو ضریب اول فرستاده می شود. این عملیات در نخستین مرحله مرتب سازی انجام می شود. این اطلاعات دیکدر را قادر به تخمین زدن ضرایب به ترتیبی که در ادامه آمده است می کند:
ضرایب و بعنوان یک عدد 16 بیتی بصورت و 14 ضریب باقیمانده صفر بازسازی می شوند. این نشان می دهد که چگونه پرارزش ترین بیتهای مربوط به بزرگترین ضرایب ابتدا به دیکدر فرستاده می شوند. گام بعدی مرحله اصلاح می باشد که در تکرار اول انجام نمی شود.
در تکرار دوم (حلقه دوم) اینکدر هر دو گام را انجام می دهد. در مرحله مرتب سازی عدد 4= L بعنوان تعداد ضرایبی که در فاصله
فرمول
قرار دارند در ادامة آن چهار مختصات ( 2و 3) ، (4 و 4) ، (2 و 1) و (1 و3) و علامت چهار ضریب فرستاده می شود. در گام اصلاح دو بیت b , a بعنوان چهاردهمین بیت با ارزش ضرایب مربوطه به حلقه قبلی فرستاده می شود.
اطلاعات به دست آمده دیکدر را قادر به اصلاح ضرایب تقریبی که از مرحله قبل بدست آمده اند می کند و شش ضریب اول به شکل زیر در می آید:
فرمول
و ده ضریب باقیمانده تغییری نمی کند.
2-2-2) دسته بندی ضرایب در الگوریتم SPIHT
به منظور کاهش تعداد تصمیم گیری ها در مقایسه میان بیتها و نیز کاهش حجم داده های خروجی در الگوریتم SPIHT از ساختار سلسله مراتبی استفاده می شود. در اینجا هدف اصلی دسته بندی ضرایب در مجموعه ها به گونه ای است که تعداد عضوهای یک مجموعه بی معنی حداکثر باشد و هر مجموعه معنی دار تنها یک عضو را شامل شود.