کتاب برنامه = اثبات: مبانی برنامه‌نویسی قابل اعتماد با نظریه نوع‌ها با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

برنامه = اثبات: مبانی برنامه‌نویسی قابل اعتماد با نظریه نوع‌ها | ساخت برنامه‌های بدون خطا برنامه = اثبات: مبانی برنامه‌نویسی قابل اعتماد با نظریه نوع‌ها آیا از اشکالات (باگ‌ها) خسته شده‌اید؟ آیا می‌خو...

انتخاب پلن

انتخاب پلن برای ادامه خرید الزامی است.

پرداخت اقساطی
در صورت خرید اقساطی هر قسط: 87,488 تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
پرداخت اقساطی با دیجی‌پی پرداخت اقساطی با ترب‌پی

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: دوره برنامه = اثبات: مبانی برنامه‌نویسی قابل اعتماد با نظریه نوع‌ها

موضوع کلی: منطق، اثبات و محاسبه

موضوع میانی: نظریه نوع‌ها و همخوانی کاری-هاوارد

📋 سرفصل‌های دوره

  • 1. مقدمه‌ای بر منطق و استدلال
  • 2. زبان گزاره‌ای: گزاره‌ها و عملگرهای منطقی
  • 3. جداول ارزش و هم‌ارزی‌های منطقی
  • 4. استنتاج منطقی: استدلال‌های معتبر
  • 5. سیستم استنتاج طبیعی: قواعد پایه
  • 6. قواعد معرفی و حذف عطف (AND)
  • 7. قواعد معرفی و حذف فصل (OR)
  • 8. قواعد معرفی و حذف استلزام (IMPLICATION)
  • 9. قواعد نفی (NEGATION) و تناقض
  • 10. اثبات قضایای منطقی با استنتاج طبیعی
  • 11. مقدمه‌ای بر منطق محمولات (First-Order Logic)
  • 12. گزاره‌نماها، متغیرها و سورها
  • 13. سور عمومی (FOR ALL): قواعد استنتاج
  • 14. سور وجودی (EXISTS): قواعد استنتاج
  • 15. استنتاج طبیعی در منطق محمولات
  • 16. ساختار برهان و استراتژی‌های اثبات
  • 17. اثبات با قیاس خلف و نفی نقیض
  • 18. مفهوم سازگاری و مدل‌های منطقی
  • 19. اصل استقرای ریاضی و کاربردهای آن
  • 20. استقرای ساختاری بر روی داده‌ها
  • 21. مبانی برنامه‌نویسی: از دستورالعمل تا انتزاع
  • 22. توابع و تعریف آن‌ها در برنامه‌ها
  • 23. انواع داده‌ها: عددی، بولی، رشته‌ای
  • 24. مفهوم سیستم‌های نوعی (Type Systems)
  • 25. معرفی حساب لاندا بدون نوع (Untyped Lambda Calculus)
  • 26. متغیرهای آزاد و مقید: انتزاع و کاربرد
  • 27. کاهش بتا: گام بنیادین در محاسبه
  • 28. هم‌گرایی و فرم نرمال
  • 29. حساب لاندا ساده نوع‌دار (Simply-Typed Lambda Calculus)
  • 30. قواعد نوع‌گذاری در STLC و نوع‌پذیری
  • 31. همخوانی کاری-هاوارد: ایده مرکزی
  • 32. گزاره‌ها به عنوان انواع و اثبات‌ها به عنوان برنامه‌ها
  • 33. نوع تابع (A -> B) معادل استلزام (A => B)
  • 34. ساخت اثبات‌های استلزامی به عنوان توابع
  • 35. نوع محصول (Product Type) معادل عطف (A AND B)
  • 36. برنامه‌ها برای ساخت و دسترسی به جفت‌ها
  • 37. نوع جمع (Sum Type) معادل فصل (A OR B)
  • 38. ساخت برنامه‌ها برای فصل و تطابق الگو
  • 39. نوع تهی (Empty Type - Void) معادل تناقض (False)
  • 40. قاعده Ex Falso Quodlibet و برنامه متناظر
  • 41. نوع واحد (Unit Type) معادل گزاره درست (True)
  • 42. برنامه برای نوع واحد و اثبات بدیهیات
  • 43. نفی به عنوان استلزام به تهی (¬A = A -> Void)
  • 44. پیاده‌سازی نفی در سیستم نوعی
  • 45. قوانین دمورگان از دیدگاه کاری-هاوارد
  • 46. استدلال‌های سازنده (Constructive Reasoning)
  • 47. تفاوت منطق کلاسیک و سازنده
  • 48. اصل میانه ممتنع (Law of Excluded Middle) و نوع‌ها
  • 49. انتخاب اصول اضافی برای منطق کلاسیک
  • 50. برنامه‌نویسی مبتنی بر شواهد منطقی
  • 51. مقدمه‌ای بر نظریه نوع‌های وابسته (Dependent Type Theory)
  • 52. نوع‌های Pi (Pi Types): توابع با نوع بازگشتی وابسته
  • 53. ساخت توابع وابسته و کاربردهای آن
  • 54. مثال: طول لیست و نوع لیست‌های متناهی
  • 55. نوع‌های سیگما (Sigma Types): جفت‌های وابسته
  • 56. ساخت جفت‌های وابسته و استخراج شواهد
  • 57. انواع استقرایی (Inductive Types): تعریف از پایه
  • 58. اعداد طبیعی به عنوان یک نوع استقرایی
  • 59. تعریف توابع بازگشتی بر روی اعداد طبیعی
  • 60. اثبات خواص اعداد طبیعی با استقرا در نظریه نوع‌های وابسته
  • 61. لیست‌ها به عنوان انواع استقرایی پارامتری
  • 62. عملیات بر روی لیست‌ها و اثبات صحت آن‌ها
  • 63. درخت‌ها و سایر ساختارهای داده استقرایی
  • 64. تطابق الگو وابسته (Dependent Pattern Matching)
  • 65. اثبات خواص توابع با تطابق الگو وابسته
  • 66. برابری تعریفی (Definitional Equality) در نظریه نوع‌ها
  • 67. برابری گزاره‌ای (Propositional Equality): نوع هویت (Identity Type)
  • 68. اثبات برابری با استفاده از نوع هویت
  • 69. بازنویسی (Rewriting) و استفاده از شواهد برابری
  • 70. ساختار اثبات‌های خودکار (Automated Proofs)
  • 71. بررسی نوع (Type Checking) برای برنامه‌های وابسته
  • 72. سلسله‌مراتب جهان‌ها (Universes) و سازگاری نظریه نوع‌ها
  • 73. اصول و قواعد نظریه نوع‌های ساختنده (Constructive Type Theory)
  • 74. برنامه‌نویسی تابعی خالص با نظریه نوع‌ها
  • 75. استدلال درباره خواص سیستم‌ها با انواع وابسته
  • 76. دستیاران اثبات (Proof Assistants): ابزارهای اثبات صوری
  • 77. Coq: یک دستیار اثبات پیشرو
  • 78. زبان اسکریپت‌نویسی گالینا (Gallina) در Coq
  • 79. تاکتیک‌های اثبات در Coq: گام به گام تا برهان
  • 80. Agda: برنامه‌نویسی وابسته و اثبات‌گر
  • 81. Lean: یک سیستم اثبات‌گر سبک و توسعه‌پذیر
  • 82. طراحی و توسعه اثبات‌های تعاملی
  • 83. استخراج برنامه از اثبات (Program Extraction)
  • 84. مثال: استخراج یک الگوریتم از اثبات صحت آن
  • 85. راستی‌آزمایی تابعی (Functional Verification) برنامه‌ها
  • 86. اثبات صحت و کامل بودن الگوریتم‌ها
  • 87. انواع پالایش (Refinement Types) برای ویژگی‌های دقیق‌تر
  • 88. انواع زیرمجموعه (Subset Types) و اعتبارسنجی ورودی
  • 89. مدل‌سازی سیستم‌های هم‌روند با نظریه نوع‌ها
  • 90. توسعه برنامه‌های بدون خطا با متدهای صوری
  • 91. کاربرد نظریه نوع‌ها در راستی‌آزمایی کامپایلرها
  • 92. پروژه CompCert: یک کامپایلر C راستی‌آزمایی‌شده صوری
  • 93. راستی‌آزمایی اجزای هسته سیستم عامل
  • 94. استفاده از نظریه نوع‌ها در امنیت سایبری
  • 95. محدودیت‌ها و چالش‌های پذیرش متدهای صوری
  • 96. مقیاس‌پذیری و پیچیدگی مدیریت اثبات‌های بزرگ
  • 97. آموزش برنامه‌نویسی قابل اعتماد: مهارت‌های آینده
  • 98. نظریه نوع‌ها در تحقیقات پیشرفته زبان‌های برنامه‌نویسی
  • 99. ارتباط "برنامه = اثبات" با هوش مصنوعی نمادین
  • 100. جمع‌بندی: آینده برنامه‌نویسی با نظریه نوع‌ها
تگ‌ها: Agda Computation Coq Curry-Howard Correspondence First-order Logic Formal Verification Functional Languages Functions Haskell Logic Program = Proof Programming fundamentals Proof Reliable Programming Type Theory اثبات برنامه اثبات برنامه‌نویسی قابل اعتماد تأیید صوری توابع زبان‌های تابعی مبانی برنامه‌نویسی محاسبه منطق منطق مرتبه اول نظریه نوع‌ها همخوانی کاری-هاوارد

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.