تأیید اجرای Rust از پیوندهای رقص کنوت با استفاده از ACL2: کار مرتبط

تعدادی از زبان‌های دامنه خاص که هم اجرای سخت‌افزار و هم نرم‌افزار را هدف قرار می‌دهند و برای تأیید رسمی پشتیبانی می‌کنند، ایجاد شده‌اند. کریپتول [5]به عنوان مثال، به عنوان یک «مشخصات طلایی» برای ارزیابی پیاده‌سازی‌های رمزنگاری استفاده شده است، که در آن ابزارهای خودکار بررسی هم ارزی را بین مشخصات Cryptol برای یک الگوریتم معین و اجرای VHDL انجام می‌دهند.

سیستم های تایید رسمی برای Rust شامل Creusot است [8]، بر اساس WhyML; پروستی [3]، بر اساس زنجیره ابزار تأیید Viper. و RustHorn [20]، بر اساس بندهای هورن محدود شده است. AWS در حال توسعه یک بررسی کننده مدل برای Rust، Kani است [2]. علاوه بر این، دانشگاه کارنگی ملون در حال توسعه Verus است، یک ابزار مبتنی بر SMT برای تأیید رسمی برنامه‌های Rust. [19]. با Verus، برنامه نویسان اثبات ها و مشخصات را با استفاده از نحو Rust بیان می کنند، که به اثبات ها اجازه می دهد از انواع خطی Rust و بررسی قرض گرفتن استفاده کنند. تلاش برای اثبات صحت قابل دستیابی در سیستم ما با استفاده از این ابزارهای تأیید جالب خواهد بود.

Source link