در این مقاله می خواهیم به دو مبحث بزرگ از ریاضیات گسسته با نامهای ترکیبات و نظریهی گراف بپردازیم که در این دوران شاهد پیشرفت چشمگیر آنها می باشیم .
این دو مبحث بدلیل آنکه دارای کاربرد وسیعی در علم کامپیوتر و برنامه سازی های کامپیوتری میباشند حائز اهمیت فراوان می باشند .
1-ترکیبات :
شاید در نگاه اول ترکیبات یک بخش معماگونه و سطحی از ریاضیات به نظر برسد که دارای کاربرد چندانی نبوده و فقط مفهوم های انتزاعی را معرفی می کند ولی این شاخه از ریاضیات دارای گسترهی وسیع بوده و دارای شاخه های زیادی نیز می باشد .
ابتدا به مسأله ای زیبا از ترکیبات برای آشنا شدن بیشتر با این مبحث ارائه می کنیم .
سوال : یک اتاقی مشبک شده به طول 8 و عرض 8 داریم که خانهی بالا سمت چپ و خانهی پایین سمت راست آن حذف شده است (مانند شکل زیر)
حال ما دو نوع موزاییک داریم . یکی 2*1 ( ) و دیگری 1×2 ( ) سوال این است که آیا می توان این اتاق را با این دو نوع موزائیک فرش کرد .
احتمالاً اگر شخص آشنایی با ترکیبات نداشته باشد می گوید «آری» و سعی می کند با کوشش و
خطا اتاق را فرش کند ولی این کار شدنی نیست ؟! و اثبات جالبی نیز دارد .
اثبات : جدول را بصورت شطرنجی رنگ می کنیم مانند شکل زیر :
حال با کمی دقت متوجه می شویم که هر موزائیک یک خانه از خانه های سیاه و یک خانه از خانههای سفید را می پوشاند یعنی اگر قرار باشد که بتوان با استفاده از این موزائیک ها جدول پوشانده شود باید تعداد خانه های سیاه با تعداد خانه های سفید برابر باشد ولی این گونه نیست زیرا تعداد خانه های سفید جدول برابر 32 و تعداد خانه های سیاه برابر 30 می باشد . در نتیجه این کار امکان امکان پذیر نیست .
این مسأله مربوط به مسائل رنگ آمیزی در ترکیبات بوده که دارای دامنهی وسیعی از مسائل دشوار و پیچیده می باشد در زیر چند نمونه از مسائل آسان و سخت را بیان می کنیم .
1-ثابتکنید هیچ جدولی را نمی توان به موزائیک هایی به شکل و پوشاند .
(راهنمایی: ثابت کنید حتی سطر اول جدول را هم نمی توان پوشاند)
2-ثابت کنید یک مهرهی اسب نمی تواند از یک خانهی دلخواه صفحهی n*4 شروع به حرکت کند و تمام خانه ها را طی کند .
3-یک شبکهی n*m از نقاط داریم یک مسیر فراگیر مسیری است که از خانهی بالا سمت چپ
شروع به حرکت کرده و از همهی خانه هر کدام دقیقاً یک بار عبور کند و به خانهی سمت راست پایین برود ثابت کنید شرط لازم و کافی برای وجود یک مسیر فراگیر در شبکهی n*m آن است که لااقل یکی از m یا n فرد باشد (مرحلهی دوم المپیاد کامپیوتر ایران) در شکل زیر یک مسیر فراگیر را برای جدول 5*4 می بینیم .
B
4-ثابت کنید شرط لازم کافی برای پوشش جدول n*m با موزائیک های 2*1 یا 1*2 آن است که یا m یا n زوج باشند .
حال میخواهیم یک مبحث مهم از ترکیبات به نام استقراء را معرفی کنیم.
استقراء بعنی رسیدن ازجزء به کل و هم ارز است با اصل خوشترتیبی زیر مجموعهها( اصل خوشتربینی بیان میکند که هر مجموعه متناهی از اعداد عضوی به نام کوچکترین عضو دارد).
برای اثبات حکمی به کمک استقراء لازم است:
1) حکم را برای یک پایه دلخواه(که معمولاً کوچک باشد) ثابت کنیم.
2) حکم را برای یک k دلخواه فرض میگیریم.
3) به کمک قسمت 2 حکم را برای ثابت میکنیم.
بسیاری از گزارهها به کمک این استقراء که در ظاهر ساده است ثابت میشود:
یک مثال ساده:
ثابت کنید: .
برای که داریم و حکم برقرار است:
فرض کنیم برای درست باشد حکم را برای ثابت میکنیم داریم:
که این قسمت طبق فرض بردار میباشد
و برای نیز حکم مسأله برقرار است.
یک مثال سخت:
این سئوال در المپیاد کامپیوتر امسال مطرح شده و ما فقط یک قسمت آنرا بطور خلاصه بیان میکنیم.
سئوال: در روز A دارای تعداد مجموعه میباشد بطوریکه هیچ مجموعهای زیرمجموعه دیگری نیست یعنی اکر )
حل شایان در روز B میآید از روی مجموعههای A تمام مجموعههایی را نمیسازیم که دارای دو شرط زیر میباشند:
1- هر مجموعهای دلخواه در روز B با تمام مجموعهها در روز A اشتراک دارد.
2-اگر از یک مجموعه دلخواه در روز B یک عضو را حذف کنیم آنگاه دیگر شرط 1 برقرار نباشد( که به این شرط، شرط مینیمالی میگوئیم:
حال فراز در روز C از روی مجموعههای B تمام مجموعههایی با دو شرط بالا را میسازد ثابت کنید ( یعنی تمام مجموعههای روز اول در روز سوم نیز تولید شدهاند)