الاستقراء والتكرار

في نظرية الأنواع الحدسية (ITT)، وهي فرع من فروع المنطق الرياضي ، يُعد الاستقراء التكراري ميزةً لتعريف نوع ودالة عليه في آنٍ واحد. يُتيح ذلك إنشاء أنواع أكبر من الأنواع الاستقرائية ، مثل الأكوان . وتظل الأنواع المُنشأة قابلةً للتنبؤ ضمن نظرية الأنواع الحدسية.

يُعطى التعريف الاستقرائي من خلال قواعد توليد عناصر نوعٍ ما. ويمكن بعد ذلك تعريف الدوال من هذا النوع بالاستقراء على طريقة توليد عناصره. يُعمم الاستقراء-الاستدعاء الذاتي هذا الوضع، إذ يُمكن تعريف النوع والدالة في آنٍ واحد ، لأن قواعد توليد عناصر النوع يُسمح لها بالإشارة إلى الدالة. [ 1 ]

يمكن استخدام الاستقراء التكراري لتعريف أنواع كبيرة تشمل مختلف بنيات الكون. وهو يزيد بشكل كبير من قوة نظرية البرهان لنظرية الأنواع. ومع ذلك، لا تزال التعريفات الاستقرائية التكرارية تُعتبر تنبؤية .

خلفية

نشأت نظرية الاستقراء التكراري من دراساتٍ لقواعد نظرية مارتن-لوف الحدسية للأنواع . تحتوي هذه النظرية على عددٍ من "مُكوِّنات الأنواع" وأربعة أنواع من القواعد لكلٍّ منها. وقد أشار مارتن-لوف إلى أن قواعد كل مُكوِّن نوع تتبع نمطًا يحافظ على خصائص نظرية الأنواع (مثل التطبيع القوي ، والتنبؤ ). بدأ الباحثون بالبحث عن الوصف الأكثر عمومية لهذا النمط، لأنه سيُحدد أنواع مُكوِّنات الأنواع التي يُمكن إضافتها (أو عدم إضافتها!) لتوسيع نظرية الأنواع.

كان مُنشئ نوع "الكون" هو الأكثر إثارة للاهتمام، لأنه عندما كُتبت القواعد "على طريقة تارسكي"، فإنها حددت في آنٍ واحد "نوع الكون" ودالة تعمل عليه. وقد أدى هذا في النهاية إلى ديبجر إلى الاستقراء التكراري.

وصفت أوراق ديبجر الأولية الاستقراء التكراري بأنه "مخطط" للقواعد، وحددت أنواع المُشكِّلات التي يمكن إضافتها إلى نظرية الأنواع. لاحقًا، قام هو وسيتزر بكتابة مُشكِّل أنواع جديد بقواعد تسمح بإنشاء تعريفات استقرائية تكرارية جديدة داخل نظرية الأنواع. [ 2 ] أُضيف هذا إلى مساعد البرهان النصفي (وهو نسخة معدلة من ألف ).

الفكرة

قبل التطرق إلى الأنواع الاستقرائية التكرارية، ننتقل إلى النوع الاستقرائي الأبسط. يمكن أن تكون دوال البناء للأنواع الاستقرائية ذاتية الإشارة، ولكن بشكل محدود. يجب أن تكون معاملات دالة البناء "موجبة".

  • لا تشير إلى النوع الذي يتم تعريفه
  • أن يكون بالضبط من النوع الذي يتم تحديده، أو
  • أن تكون دالة تُرجع النوع الذي يتم تعريفه.

في الأنواع الاستقرائية، يمكن أن يعتمد نوع المعامل على معاملات سابقة، لكن لا يمكن أن يشير إلى معاملات من النوع المُعرَّف. أما الأنواع الاستقرائية التكرارية فتتجاوز ذلك: إذ يمكن لأنواع المعاملات أن تشير إلى معاملات سابقة تستخدم النوع المُعرَّف. ويجب أن تكون هذه المعاملات "شبه موجبة".

  • تكون دالة تعتمد على مُعامل سابق إذا كان هذا المُعامل مُغلفًا في الدالة التي يتم تعريفها.

لذا، إذاد{\displaystyle D}هو النوع الذي يتم تعريفه وو{\displaystyle f}إذا تم تعريف الدالة (في نفس الوقت)، فإن تعريفات هذه المعاملات تكون موجبة:

  • أ:أ{\displaystyle a:A}
  • د:د{\displaystyle d:D}
  • ز:أتيyصهـ{\displaystyle g:A\to {\mathsf {Type}}}
  • ح:أد{\displaystyle h:A\to D}
  • أنا:أبد{\displaystyle i:A\to B\to D}
  • ج:ز أ{\displaystyle j:g\ a} (يعتمد على المعلمات السابقة، والتي لا يوجد أي منها من النوع)د{\displaystyle D}.)

هذا إيجابي جزئياً:

  • ك:(و د)د{\displaystyle k:(f\ d)\to D} (يعتمد على المعامل)د{\displaystyle d}من النوعد{\displaystyle D}ولكن فقط من خلال الاتصال بـو{\displaystyle f}.)

هذه ليست نتائج إيجابية ولا نتائج إيجابية جزئية:

  • ك:دأ{\displaystyle k:D\to A} (د{\displaystyle D}(وهو أحد مُعاملات الدالة.)
  • ل:(أد)أ{\displaystyle l:(A\to D)\to A} (يأخذ المعامل دالة تُرجعد{\displaystyle D}لكنه يعودأ{\displaystyle A}نفسها.)
  • م:z د{\displaystyle m:z\ d} (يعتمد على)د{\displaystyle d}من النوعد{\displaystyle D}ولكن ليس من خلال الوظيفةو{\displaystyle f}.)

مثال الكون

ومن الأمثلة الشائعة والبسيطة على ذلك مُكوِّن النوع الخاص بكون على غرار تارسكي. وهو يتكون من نوعيو{\displaystyle U}ووظيفةتي:يوتيyصهـ{\displaystyle T:U\to {\mathsf {Type}}}بحيث يكون هناك عنصر منيو{\displaystyle U}لكل نوع في نظرية الأنواع (باستثناءيو{\displaystyle U}(نفسها!)، والوظيفةتي{\displaystyle T}خرائط عناصريو{\displaystyle U}إلى النوع المرتبط.

النوعيو{\displaystyle U}يحتوي كل مُنشئ نوع في نظرية الأنواع على دالة إنشاء (أو قاعدة إدخال). أما دالة إنشاء الدوال التابعة فهي كالتالي:

جoنsترuجتoرΠ(u:يو)(u:تي(u)يو):يو{\displaystyle {\mathsf {constructor}}_{\Pi }(u:U)(u':T(u)\to U):U}

أي أنه يأخذ عنصرًاu{\displaystyle u}من النوعيو{\displaystyle U}سيتم ربط ذلك بنوع المعامل، ودالة.u{\displaystyle u'}بحيث يكون ذلك لجميع القيمx:تي(u){\displaystyle x:T(u)}،u(x){\displaystyle u'(x)}يُشير إلى نوع القيمة المُعادة من الدالة (والذي يعتمد على قيمة المُعامل،x{\displaystyle x}). (النهائي:يو{\displaystyle :U}يشير إلى أن نتيجة المُنشئ هي عنصر من النوعيو{\displaystyle U}.)

تنص قاعدة الاختزال (أو قاعدة الحساب) على ما يلي:تي(جoنsترuجتoرΠ(u،u)){\displaystyle T({\mathsf {constructor}}_{\Pi }(u,u'))}يتقلص إلىx:تي(u)تي(u(x)){\displaystyle \prod _{x:T(u)}T(u'(x))}.

بعد الاختزال، تصبح الدالةتي{\displaystyle T}يعمل على جزء أصغر من المدخلات. إذا كان ذلك صحيحًا عندماتي{\displaystyle T}يتم تطبيقه على أي مُنشئ، ثمتي{\displaystyle T}سينتهي الأمر دائمًا.

الاستخدام

تم تطبيق الاستقراء والتكرار في Agda و Idris . [ 3 ]

انظر أيضاً

مراجع

  1. ديبجر، بيتر (يونيو 2000). "صياغة عامة للتعريفات الاستقرائية-التكرارية المتزامنة في نظرية الأنواع" (ملف PDF) . مجلة المنطق الرمزي . 65 (2): 525-549 . CiteSeerX 10.1.1.6.4575 . doi : 10.2307/2586554 . JSTOR 2586554. S2CID 18271311 .   
  2. ديبجر، بيتر (1999). "صياغة بديهية محدودة للتعريفات الاستقرائية التكرارية". حسابات لامدا المكتوبة وتطبيقاتها . سلسلة محاضرات في علوم الحاسوب. المجلد 1581. الصفحات 129-146 . CiteSeerX 10.1.1.219.2442 . doi : 10.1007/3-540-48959-2_11 . ISBN    978-3-540-65763-7.
  3. بوف، آنا؛ ديبجر، بيتر؛ نوريل، أولف (2009). "نظرة عامة موجزة على لغة أغدا - لغة وظيفية ذات أنواع تابعة" . في: بيرغوفر، ستيفان؛ نيبكو، توبياس؛ أوربان، كريستيان؛ وينزل، ماكاريوس (محررون). إثبات النظريات في منطق الرتبة العليا . سلسلة محاضرات في علوم الحاسوب. المجلد 5674. برلين، هايدلبرغ: سبرينغر. الصفحات 73-78 . doi : 10.1007/978-3-642-03359-9_6 . ISBN   978-3-642-03359-9.