Fluctuat - Fluctuat
![]() | tento článek může být pro většinu čtenářů příliš technická na to, aby je pochopili. Prosím pomozte to vylepšit na aby to bylo srozumitelné pro neodborníky, aniž by byly odstraněny technické podrobnosti. (Leden 2013) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) |
Vývojáři | Commissariat à l'Énergie Atomique |
---|---|
Napsáno | C ++ |
Operační systém | |
K dispozici v | Angličtina |
Typ | Formální ověření, Statická analýza kódu |
Licence | Komerční |
webová stránka | www |
Fluctuat byl vyvinut společností Alternativy komisariátu à l'Énergie Atomique et aux Énergies od roku 2001. Fluctuat umožňuje statickou analýzu C a Ada programy se zvláštním zaměřením na operace s plovoucí desetinnou čárkou.
Teoretické základy
Fluctuat je statický analyzátor, založený na abstraktní interpretace. Ve srovnání s podobnými nástroji jako Polyprostor nebo Astrée, spoléhá se na to zonotopy jako abstraktní doména. To znamená, že hodnota každé programové proměnné je abstrahována lineárním výrazem symboly hluku (interní proměnné, které se pohybují v [-1,1]).
Zvažme nyní následující program:
x = [0,1]; y = 2 * x + 1; z = x * y;
První řádek znamená, že hodnota X může být cokoli v [0,1]. Může být napsán jako x = 0,5 + 0,5 * ε, kde ε je symbol šumu. Druhý řádek to naznačuje y = 2 + ε; od té doby X a y sdílejí stejný symbol šumu, tato abstraktní doména je relační. Pokud existují nelineární operace, jako ve třetím řádku, jsou zavedeny nové symboly šumu. Přesný symbolický výraz by byl z = 1 + 1,5 * ε + 0,5 * ε * ε, ale abstrahujeme to jako z = 1,25 + 1,5ε + 0,25η.
Funkce
Mezi funkce Fluctuat patří:
- statická analýza z C a Ada programy.[1]
- Analýza citlivosti programových proměnných.[2]
- nejhorší případ generace.
- interaktivní analýza.
- analýza hybridní systémy [3]
Viz také
Reference
- ^ David Delmas; et al. „Směrem k průmyslovému použití FLUCTUAT na bezpečnostně důležitém avionickém softwaru“. Sborník ze 14. mezinárodního workshopu o formálních metodách pro průmyslové kritické systémy FMICS'09. LNCS. 5825. 53–69.
- ^ Eric Goubault a Sylvie Putot. Msgstr "Statická analýza numerických algoritmů". Proceedings of Static Analysis Symposium SAS'06, Seoul. LNCS. 4134. str. 18–34.
- ^ Olivier Bouissou; et al. "HybridFluctuat: statický analyzátor numerických programů v nepřetržitém prostředí". Proceedings of Computer Aided Verification CAV'09, Grenoble, Francie. LNCS. 5649. str. 620–626. CiteSeerX 10.1.1.216.8351.