الأحد، 10 يوليو 2016

أهمية علم المنطق والرياضيات المتقطعة

    بسم الله الرحمن الرحيم 

سوف أتكلم في هذه المدونة عن مفهوم علم المنطق والرياضيات المتقطعة .
وعن أهمية علم المنطق والفائدة من دراسته في قسم الحاسوب .
وعن علاقته بالحاسوب .

------------------------------------------------------------------------------------
الرياضيات المتقطعة (بالإنجليزية: Discrete mathematics) أو تدعى أيضا الرياضيات المتناهية أو الرياضيات المحددة (finite mathematics)، هي دراسة البنى الرياضية التي تكون متقطعة أساسا، بمعنى أنها لا تستدعي وجود صفة الاتصال ولا تتطلبه لكي تدرس هذا الموضوع.
أإن المواضيع التي تتم دراستها في الرياضيات المتقطعة هي إما أن تكون محددة أو غير محددة. وتُستعمل مصطلح الرياضيات المحددة في بعض الأحيان للإشارة إلى حقول الرياضيات المتقطعة التي تتعامل مع المجموعات المحددة، وخصوصاً في المجالات التي لها صلة بقطاع العمال .
اكتسبت الرياضيات المتقطعة شعبية واسعة خلال العقود الأخيرة بسبب تطبيقاتها الواسعة في علوم الحاسوب. فمصطلحات وترميزات الرياضيات المتقطعة مفيدة لدراسة والتعبير عن مسائل الأغراض .
نظرية المجموعات :هو فرع من علم المنطق الرياضي، تهتم بدراسة المجموعات والتي هي تجميع لكائنات رياضية مجردة والعمليات المطبقة عليها، وتشكل إحدى أهم ركائز الرياضيات الحديثة.للمزيد 

-----------------------------------------------------------------------------------------------------

المنطق الرياضي : المنطق هو العلم الذي يبحث في القواعد التي تتبع في التفكير وطرائق الاستدلال الصحيح وأساليب الاستنتاج ومعقوليتها. وهو بذلك أداة للتفكير لأنه يعنى بتحليل طرائق التفكير و صيانته من الخطأ. والعملية المنطقية تهتم بفئة من الصيغ أو القضايا. 

------------------------------------------------------------------------------------------------------
اهمية الرياضيات المتقطعه في تطبيقات الحاسوب 

الرياضيات علم الدِّراسة المنطقيَّة لكمِّ الأشياء وكيفها وترابطها، كما أنه علم الدراسة المجردة البحتة التسلسلية للقضايا والأنظمة الرِّياضية. وهي واحدة من أكثر أقسام المعرفة الإنسانية فائدة وإ ثارة. ويُعزى سبب صعوبة تعريف كلمة رياضيات إلى المواضيع العديدة التي تشملها.

وتشمل الرياضيات الأساسية التي تدرس بالمدارس، دراسة الأعداد والكميات والصيغ والعلاقات. فعلى سبيل المثال، يدرس الحساب مسائل تتعلق بالأعداد، ويتضمن الجبر حل معادلات (وهي صيغ رياضية تقوم على المساواة) تمثل الأحرف فيها كميات مجهولة. بينما تدرس الهندسة خواص وعلاقات الأشكال في الفضاء.

أما الحوسبة فهي حل مسائل رياضية تتضمن إجراء العديد من العمليات العددية. والحاسوب أداة رياضية تقوم بالعمليات الحسابية بسرعة عالية. ويستخدم علماء الرياضيات الحاسوب لإجراء العمليات الحسابية المعقدة خلال دقائق قليلة، والتي قد يتطلب إجراؤها آلاف السنين باستخدام القلم والورقة.

وتتطلب الرياضيات مهارات أهمها: التحليل الدقيق، والتّعليل الواضح، وتساعد تلك المهارات الناس على حل بعض الألغاز الصعبة التي تواجههم.

وتُبنى الرياضيات على المنطق، فانطلاقا بفرضيات قُبلت على نطاق واسع، استخدم علماء الرياضيات المنطق لاستخراج النتائج وتطوير نظم رياضية متكاملة.


أهمية الرياضيات

ويمكن تقسيم الرياضيات إلى رياضيات بحتة ورياضيات تطبيقية.

وتهتم الرياضيات البحتة بتطوير المعرفة الرياضية لذاتها دون اعتبار لتطبيق حالي عاجل، فمثلاً، قد يبتدع أحد علماء الرياضيات عالمًا خياليًا لكل شيء فيه أبعاد أخرى غير الطول والعرض والارتفاع. وتهتم الرياضيات التطبيقية بتطوير أساليب رياضية لتستخدم في العلوم والمجالات الأخرى.

والحدود بين الرياضيات البحتة والتطبيقية ليست دائمًا واضحة. فغالبًا ما تجد تطبيقات عملية لأفكار طورت في الرياضيات البحتة، وكثيرًا ما تقود أفكار في الرياضيات التطبيقية إلى أبحاث في الرياضيات البحتة.

ويتأثر كل جزء من حياتنا تقريبًا بالرياضيات. ولعبت الرياضيات دورًا أساسيًا في تطور التقنية الحديثة ـ كالأدوات، والتقنيات، والمواد، ومصادر الطاقة التي جعلت حياتنا وعملنا أكثر يسرًا.

في الحياة اليومية تدخل الرياضيات في تفاصيل حياتنا اليومية البسيطة منها والمعقدة. ففي الأمور البسيطة نتعرف على الوقت، وباقي نقودنا بعد شراء شيء ما، وفي الأمور المعقدة كتنظيم ميزانية البيت أو تسوية دفتر الشيكات.وتستخدم الحسابات الرياضية في الطبخ والقيادة والبستنة، والخياطة، ونشاطات عامة عديدة أخرى. وتؤدي الرياضيات كذلك دورًا في العديد من الهوايات والألعاب الرياضية.

وهكذا فإن البنى الرياضية التي يدرسها الرياضيون غالباً ما يعود أصلها إلى العلوم الطبيعية، وخاصة علم الطبيعة، ولكن الرياضيين يقومون بتعريف ودراسة بنى أخرى لأغراض رياضية بحتة، لأن هذه البنى قد توفر تعميما لحقول أخرى من الرياضيات مثلاً، أو أن تكون عاملاً مساعدا في حسابات معينة، وأخيراً فإن الرياضيين قد يدرسون حقولا معينة من الرياضيات لتحمسهم لها، معتبرين أن الرياضيات هي فن وليس علماً تطبيقيا.


المنطق هو العلم الذي يبحث في القواعد التي تتبع في التفكير وطرق الاستدلال وهو بذلك أداة للتفكير لأنه يعنى بتحليل طرق التفكير وصيانته من الخطأ. والعملية المنطقية تهتم بفئة من الصيغ أو القضايا.
القضية : جملة تقوم على علاقة  بين عدد من الكلمات المفهومة، وتنقسم إلى قسمين :
  1. القضية الإخبارية : وهي تخبر عن شيء ما وتحتمل الصدق أو الكذب  مثل (المثلثات المتطابقة متكافئة)، (كل ما في الكون يجذب بعضه بعضا).
  2. القضية الإنشائية : وهي التي لا يمكن أن توصف بالصدق أو الكذب مثل لا تمش في الأرض مرحا وهي ليست قضايا منطقية.
والقضية المنطقية جملة خبرية تحتمل الصدق أو الكذب ويمكن التحقق منها فالجملة المعادن تتمدد بالحرارة جملة خبرية يمكن التحقق من صحتها بإجراء التجارب وإقرار صحة العبارة من عدمه. والقضية مفهوم أساسي في المنطق نتعلم تصنيفها كما ورد سابقا عن طريق الخبرة مثل :
  1. صاحب كتاب ابن تيمية رفع الملام عن الأئمة الأعلام. (خبرية)
  2. ينزل المطر في الخريف. (خبرية)
  3. لا تنه عن خلق وتأتي بمثله. (إنشائية)
  4. كيف حالك؟ (إنشائية)
5.      لمنطق الرياضي (ويعرف أيضا باسم المنطق الرمزي)، هو أحد حقول الرياضيات  المتصل بأساسيات الرياضيات، علوم الحاسوب النظرية والمنطق الفلسفي.
6.      ويمتد علم المنطق الحديث ليشمل آفاقًا أرحب بكثير مما شمله عمل أرسطو. فقد وضع علماء المنطق المُحْدَثون نظريات وأساليب لتناول القضايا الاستنتاجية على نحو يختلف عن الاستقراء المطلق. ومن علماء المنطق الحديث البارزين عالما الرياضيات البريطانيان جورج بُول و أَلْفرد نُورْث وايتهد، ثم الفيلسوف البريطاني بِرْترْاند راسل. وعلى عكس المناطقة التقليديين، فقد استخدم هؤلاء المناطقة مناهج حسابية وأساليب تستخدم الرموز.
7.      ويستخدم علم المنطق اليوم بصفة أساسية لاختبار مدى سلامة القضايا. كما أن له استخدامات مهمة أيضًا في مجال العمل مع أجهزة مثل الحواسيب، والدوائر الكهربائية.
8.      ولاختبار سلامة قضية ما، يقوم عالم المنطق أولاً بتحليل عباراتها، والتعبير عنها في صيغة رموز. ويكون الحرف أو أيّ رمز مُستخدم في القضية رمزًا لكلمة أو عبارة بأكملها في حالات عديدة. فعلى سبيل المثال، يَكْتب المناطقة عبارة مثل: "سقراط حكيم" في هيئة "ح س"، وعبارة "كل إغريقي حكيم" في هيئة معادلة كما يلي: "[س] [غ س¿ح س]". والرمز ¿يعني (إذا كان ¿، إذاً ¿ ). ويقوم عالم المنطق بعد ذلك بتطبيق قواعد الاستنتاج أحيانًا أو قواعد الاستدلال، لتحديد المعادلات الجديدة التي يُمكن استنتاجها من المقدمات الأصلية. فعلى سبيل المثال، هناك قاعدة تسمح باستنتاج العبارة (ك) من العبارات (ب) و "[ب ¿ك]". وعلى ذلك، يمكن الاستدلال على العبارة "تمَّ إلغاء النزهة" من العبارات "السماء تمطر" و "إذا كانت السماء تمطر إذًا تُلغى النزهة ". ويستمر عالم المنطق في استنتاج المعادلات حتى يصل إلى نتيجة.
9.      والمنطق الحديث الرمزي هو تطوير وتصويب للمنطق التقليدي، يقوم على استنباط القوانين المنطقية من أقل عدد من المبادئ (بديهيات وقوانين) بطريقة دقيقة كاملة، أي إنه نسق استنباطي، يبدأ من مقدمات معينة لينتهي إلى النظريات اللازمة عنها، معتمداً قواعد خاصة، مستخدماً اللغة المنطقية الرمزية فقط. ويرجع ظهوره إلى لايبنتيس أولاً ثم جورج بول George Boole ت(1815ـ1864)، وطوره فريگه Frege، وفيتگنشتاين Wittgenstein وكارناپ Carnap وغيرهم، ويسمى أحياناً بالمنطق الرمزي أو الرياضي أو الاستدلالي أوالنظري أو جبر المنطق، أو المنطق اللوغارتيمي، أو اللوغسيقا، ويتوقف الاسم على الهدف من التسمية. وقد اكتمل على يد رسل Russell ووايتهد Whitehead اللذين حاولا المزج بين المنطق والرياضيات فوصلا إلى المنطق الرمزي، الذي يستخدم نوعين من الرموز، وهي الثوابت والمتغيرات، ويتألف من أربعة مباحث أساسي
10.  فالمنطق بشكل عام وتحديد ما هو صحيح وما هو خاطئ بطرق وبراهين رياضية بشكل خاص، ألهم العلماء في الرّياضيات والحاسوب لتطوير جودة وصحّة المخرجات الحاسوبية. ففي مجال هندسة البرمجيات مثلاً وعند الاستدلال على صحّة المخطّط الرّسومي التّوضيحي لبرنامج حاسوبي ما، يتم تحويل هذا المخطّط إلى معادلات رياضية بحتة يصبح فيها المربع المرسوم الموجود في المخطّط، والذي يمثل أحد مدخلات أو مخرجات البرنامج، مجرد رمز رياضي، وتتحول العلاقة بين المربعات المختلفة إلى دوال رياضية بحتة. وحينها فقط يتم الانتقال من عالم الحاسب إلى عالم الرّياضيات حيث يتم تحليل هذه الدّوال والاستدلال على صحتها من خلال استحداث النّظريات حول خصائصها المختلفة وإثبات صحّة هذه النّظريات. عند إثبات صحّة هذه النّظريات نكون بذلك قد أثبتنا صحّة المخطّط الرّسومي للبرنامج الحاسوبي وأنتجنا ما يسمّى مخطّطاً موثق الصّحة.
11.  هذه العملية تعود بالنّفع وبشكل كبير في اختصار الجهد والوقت المبذول في فتره اختبار صحة البرامج. فمن ناحية أولى، مرحلة اختبار البرامج والتي عادة ما تكون بعد الانتهاء من البرنامج، ليست أبداً دليلاً على صحّة البرنامج، حيث أإنّ الاختبار يحدّد خلوَ البرنامج من الخطأ الذي يتم الاختبار من أجله وتحت ظروف بيئة الاختبار. فلو تمّ إثبات خلو البرنامج من هذا الخطأ وتم تغيير بيئة الاختبار، هناك احتمال لظهور الخطأ مجدداً! ولهذا يصرّ مصمّمو البرامج كثيراً على أنّ مرحلة الاختبار هي مجرد مرحلة إثبات خلو البرنامج من الخطأ المختبر من أجله فقط وليس إثبات صحّة البرنامج، في حين أنّ الاتجاه الرّياضي الأوّل يثبت صحّة البرنامج بشكل عام.
12.  من ناحية ثانية، فإنّ أيّ خطأ يتم اكتشافه في تصميم البرنامج أثناء مرحلة الاختبار يتضمن تصحيح الخطأ في المخطّط الأساسي ثم تتبع الخطأ في المخططات الفرعية ومن ثم داخل النّص البرمجي للبرنامج، وهو ما لا يحدث في الاتجاه الرياضي حيث يتم اكتشاف الخطأ وتصحيحه من بداية المخطّط قبل المضي في خطوات تصميم البرنامج الأخرى.
13.  ما سبق قد يجعل القارئ يتساءل، إذا كان الاتّجاه الرّياضي بهذه الدّقة ويقدّم هذه المنفعة الجلية لماذا لا يُستخدَم فعلياً في بيئة تصميم البرامج؟! الحقيقة أنّ المنهج الرّياضي أو كما يُسمّى «تطبيق المنطق» في إثبات صحّة المخطّطات ليس بالعملية السّهلة والمباشرة ويحتاج إلى مهارات عالية، والمتخصّصون في هذا المجال ليسوا بالعدد الكبير حالياً.
14.  لذلك كان الاتّجاه البديل في المجال البحثي لخدمة تصميم البرمجيات هو العمل على تدقيق وإثبات صحّة القوانين التي تُبنى منها هذه المخطّطات الرّسومية للبرامج المختلفة، وبالتالي عندما يستخدم مهندس النّظم العادي هذه القوانين في رسم المخطّط يكون متأكداً من صحتها، والخطأ الحادث لا يكون له أي علاقة مباشرة بالقانون المستخدم وإنّما من التّطبيق الخاطيء للقانون.

15.  هذا الاتجاه البحثي بالتأكيد لا يضمن صحّة المخطّطات، أي لا يضمن مخطَطات موثقة الصّحة وإنّما يرفع درجة الثّقة في هذه المخطّطات ويقلّل نسبة حدوث الأخطاء، وهو ما يُعتبر إنجازاً في بيئة كثيرة الأخطاء كبيئة تصميم البرامج.


-------------------------------------------------------------------------------------------------------------

علاقة علم المنطق بالحاسوب 

علم الحاسب منبعث من الرياضيات. المبرمج الجيد يجيد التعامل مع مختلف المفاهيم الرياضية إلا إذا كان عمله غير متقدم وغير مرتبط بالرسوميات فلن يجد إلا القليل من الروابط بين الرياضيات والبرمجة. لكن هناك الكثير من المفاهيم البرمجية المرتبطة بالرياضيات فمجرد استخدام مبرمج إلى Array ثنائي الأبعاد يضطره لاسترجاع معلومات رياضية وهذه بعض الأمثلة:
1- المحاكيات: بناء محاكيات فيزيائية أو فلكية أو محركات ألعاب أو غيرها يحتاج لفهم متعمق بالرياضيات لتكون واقعية وهو أمر مهم حيث أن كثيراً من هذه المحاكيات يستخدم في الأبحاث العلمية كما أنها تستخدم في المجال الطبي بكثرة.
2- الرسوميات ثنائية الأبعاد: تعتمد على رسم الأشكال على محورين أفقي وعمودي لتحديد مكان ظهورها على الشاشة التي تصبح بمثابة النظام الإحداثي.
3- الرسوميات ثلاثية الأبعاد: تعتمد على المصفوفات بشكل كبير ومع التعمق تحتاج لفهم معمق لعدة مجالات في الرياضيات حتى تستطيع معرفة كيف يتم عرض الرسوم الثلاثية الأبعاد لتظهر على شاشتك الثنائية الأبعاد.
4- تحسين حل المشاكل البرمجية: هناك عدة حلول وكلما كنت أفضل في الرياضيات كلما كانت حلولك أفضل. أذكر مرة أني كنت مسروراً لحلي مسألة لم يستطع أحد زملائي حلها من قبل لكن الكمبيوتر أخذ 20 دقيقة ليحلها وفي اليوم التالي أتى أحدهم وقدم حلاً لا يأخذ أكثر من ثانية.
5- فهم طريقة عمل الكمبيوتر: الكمبيوتر من الأساس لا يفهم إلا إشارتين: التيار موجود "1" و التيار منقطع "0" ولتسهيل عملية البرمجة تم تطوير لغات برمجة لتترجم للغة الآلة وفهم كيفية تخزن الأرقام والبيانات والقيم في الكمبيوتر يحتاج إلى أن يكون مستعداً للحساب كثيراً.
6- تعلم بعض لغات البرمجة: عندما تكتب كود بلغة ++С كي يعمل الكود يتم تحويله للغة Assembly والذي يتم بدوره تحويله إلى لغة الآلة 0 و 1. ولكل بنية معالجات لغتها الخاصة بها ولولا Assembly لكان من الصعب كتابة كود ليعمل على مختلف أنواع الأجهزة. هذه اللغة تحتاج استخداماً كثيراً للرياضيات نظراً لطبيعتها ومحدوديتها. فهم اللغة طبعاً سيجعلك مبرمجاً أفضل حيث ستعرف مالذي سيترجم إليه كل سطر تكتبه مايدفعك لتحسين طريقة برمجتك لتقليل استهلاك موارد الجهاز.
7- التشفير وحماية المعلومات: أحد أساسيات التشفير هو استخدام معادلات تقوم بتغيير المحتوى ولا يمكن استعادة المحتوى الأصلي إلا عبر استخدام معادلات معاكسة. ودوماً ماتستخدم أرقام أولية لانتاج هذه المعادلات
طالب علم الحاسوب يدرس الرياضيات ليتعلم طريقة التفكير, والتحليل المنطقي, وبناء الخوارزميات
اما المعادلات الرياضية لن تستخدمها بشكل مباشر في البرمجة, الا لاهداف معينة, مثلا برمجة الالعاب تتطلب نوع معين من الرياضيات وهو الحيوميتري,والبرامج المحاسبية تتطلب معادلات المحاسبة,
طبعا سوف تستخدم اثناء كتابتك للاكواد ما يعرف ب arithmetic operations وهي رياضيات, لكنها بسيطة, مثل
(c/d)+(a+b)

* يوجد علاقة قوية جداً ومتينة تربط البرمجة بالرياضيات

هذه العلاقة ليست فقط مرتبطة ببرمجة الألعاب أو برامج الحساب أو الإحصاء بل بالعكس هي مرتبطة في كل مجالات علم الحاسوب

 فمثلاً إذا كنت سوف تتعامل مع تشفير البيانات فأنت تحتاج للرياضيات لكي تكتب المعادلة المناسبة للتشفير وهنا يبرز لدينا علم Number theory
عند تعاملك مع الكثير الخوارزميات وتركيب الشبكات يبرز لدينا Graph theory وهذا بحر واسع ،
عملية معالجة الصور يدخل فيها Linear Algebra وجزء من Complex Analysis
وهذا قطرة من محيط هذه العلوم .


***نصيحتي الأخيرة : لكي تكون مبرمجاً مبدعاً تقدر على أن تصنع ما تريد أنظر للبرمجة من خلال الرياضيات أما إذا كنت أن تكون مجرد مستخدم ينتظر الغرب لكي يطوروا لغة برمجة أو يضيفوا ميزة للغات البرمجة لكي تأتي أنت وتستخدمها (كالأغلبية) فاترك الرياضيات  ###




تحياتي .... 







هناك 4 تعليقات:

  1. اشكرك على اخر نصيحة 😉

    ردحذف
    الردود
    1. اشكركم جزيل الشكر على هذه المعلومات المفيدة

      حذف
  2. شكرًا على هذا المقال المُفيد، لغة بسيطة وواضحة لمن أراد فهم العلاقة بين الحاسب والرياضيات. جزاك الله خير.

    ردحذف