ACL2 - ACL2
![]() | |
Paradigma | Funkční, meta |
---|---|
Navrhl | Robert S. Boyer, J Strother Moore a Matt Kaufmann |
Vývojář | Matt Kaufmann a J Strother Moore |
Poprvé se objevil | 1990 (omezená distribuce), 1996 (veřejná distribuce) |
Stabilní uvolnění | 8.2 / květen 2019 |
Psací disciplína | Dynamický |
OS | Cross-platform |
Licence | BSD |
webová stránka | www |
Ovlivněno | |
Společný Lisp, Nqthm |
ACL2 ("Výpočetní logika pro Applicative Common Lisp") je a software systém skládající se z a programovací jazyk, rozšiřitelná teorie v a logika prvního řádu a automatizovaný testovací teorém. ACL2 je navržen tak, aby podporoval automatické uvažování v indukčních logických teoriích, většinou za účelem softwaru a hardwarové ověření. Vstupní jazyk a implementace ACL2 jsou psány v Společný Lisp. ACL2 je bezplatný open source software.
Přehled
Programovací jazyk ACL2 je aplikovatelný (vedlejší účinek zdarma) varianta Common Lisp. ACL2 je bez typu. Všechny ACL2 funkce jsou celkový - to znamená, že každá funkce mapuje každý objekt v ACL2 vesmír k jinému objektu ve vesmíru.
Základní teorie ACL2 axiomatizuje the sémantika jeho programovacího jazyka a jeho vestavěných funkcí. Uživatelské definice v programovacím jazyce, které splňují a definiční princip rozšířit teorii způsobem, který ji udrží logická konzistence.
Jádro prověrky teorémů ACL2 je založeno na přepis termínu a toto jádro je v tomto objeviteli uživatele rozšiřitelné věty lze použít jako ad hoc důkaz techniky pro následné domněnky.
ACL2 je zamýšlen jako „průmyslová síla“ verze Boyer-Moorovy věty prover, NQTHM. Ke splnění tohoto cíle má ACL2 mnoho funkcí pro podporu čistého inženýrství zajímavých matematických a výpočetních teorií. ACL2 také odvozuje účinnost z toho, že je postaven na Common Lisp; například může být stejná specifikace, která je základem pro indukční ověření sestaven a běž nativně.
V roce 2005 obdrželi autoři rodiny proverů Boyer-Moore, která zahrnuje ACL2 Cena softwarového systému ACM „pro průkopníky a inženýry nejúčinnější testovací teorém (...) jako nástroj formálních metod pro ověřování hardwaru a softwaru kritického pro bezpečnost.“[1][2]
Důkazy
ACL2 má řadu průmyslových aplikací.[3][4] V roce 1995 J Strother Moore, Matt Kaufmann a Tom Lynch použili ACL2 k prokázání správnosti operace dělení s plovoucí desetinnou čárkou AMD K5 mikroprocesor v důsledku Chyba Pentium FDIV.[5] The zajímavé aplikace Stránka dokumentace ACL2 obsahuje souhrn některých použití systému.
Mezi průmyslové uživatele ACL2 patří AMD, Arm, Centaur Technology, IBM, Intel, Oracle a Rockwell Collins.
Reference
- ^ ACM: Tisková zpráva, 15. března 2006
- ^ „Cena softwarového systému“. Ocenění ACM. Sdružení pro výpočetní techniku. Archivovány od originál dne 02.04.2012. Citováno 14. ledna 2012.
- ^ Knihy a články o ACL2 a jeho aplikacích
- ^ Workshopová řada ACL2
- ^ Msgstr "Mechanicky ověřený důkaz správnosti jádra algoritmu dělení s plovoucí desetinnou čárkou AMD5K86". CiteSeerX 10.1.1.43.3309. Citovat deník vyžaduje
| deník =
(Pomoc)