Skip to main content
Przejdź do strony domowej Komisji Europejskiej (odnośnik otworzy się w nowym oknie)
polski pl
CORDIS - Wyniki badań wspieranych przez UE
CORDIS

Sparsity-guided Efficient SMT-solving for Program Verification

Opis projektu

Skalowalny przełom w usprawnianiu weryfikacji oprogramowania

W obszarze weryfikacji oprogramowania spełnialność w ramach teorii (ang. Satisfiability Modulo Theories, SMT) odgrywa kluczową rolę. Z drugiej strony skalowalność wciąż stanowi poważną przeszkodę, szczególnie w przypadku weryfikacji rozległych segmentów programu. W tym kontekście zespół finansowanego przez ERBN projektu SPES zamierza wykorzystać wrodzoną rzadkość strukturalną w programach (odzwierciedloną w ich ograniczonej szerokości drzewa i szerokości ścieżki). Badacze z projektu SPES dążą do zaprojektowania wyspecjalizowanych, szybszych i bardziej wydajnych narzędzi (solverów) rozwiązujących problemy SMT. Podejście to polega na dekompozycji grafów przepływu sterowania na mniejsze, łatwiejsze do zarządzania fragmenty, kierując solver tak, aby podejmował decyzje w optymalnej kolejności. W rezultacie projekt zwiększy wydajność algorytmów sprawdzania spełnialności i eliminacji zmiennych. Utoruje to drogę do tworzenia bardziej skalowalnych i skutecznych procesów weryfikacji oprogramowania.

Cel

Satisfiability modulo theories (SMT) is a ubiquitous framework in modern software verification. It can express a significant number of classical program verification tasks, e.g. invariant generation, reachability and pre/post-conditions, in complex programs with arrays, pointers, real/integer variables, and user-defined data structures. State-of-the-art SMT solvers, such as cvc5/Z3, form the backbone of modern verification suites.

Unfortunately, SMT-based verification methods are far from perfect in terms of scalability. They are especially slow when the desired property depends on a large portion of the program, such as a function with hundreds/thousands of lines. A primary reason is that solvers are designed for *general-purpose* constraint-solving. When a program analysis tool, such as Boogie, reduces a verification task to SMT and passes it to a solver, such as Z3, the solver has no knowledge of the original program or any of its structural and sparsity properties that are inherited by the SMT instance. Thus, it spends significant time exploring unpromising solution paths or applying unproductive heuristics.

In this project, we will exploit the structural sparsity of programs to design faster bespoke SMT-solving algorithms for software verification tasks. It is well-known that control-flow graphs of structured programs are sparse and decomposable. Formally, they have bounded treewidth/pathwidth. Thus, one can successively find small cuts that decompose the graphs into parts of a small size. The idea is to guide the SMT-solver with a promising approximation or decision order based on these decompositions. This is because the SMT instance inherits the sparsity and structure of the underlying program. Thus, it can be decomposed into small parts by successively solving low-dimensional sub-instances. More specifically, this project will use the decomposition to design faster algorithms for satisfiability checking and (approximate) quantifier/variable elimination.

Dziedzina nauki (EuroSciVoc)

Klasyfikacja projektów w serwisie CORDIS opiera się na wielojęzycznej taksonomii EuroSciVoc, obejmującej wszystkie dziedziny nauki, w oparciu o półautomatyczny proces bazujący na technikach przetwarzania języka naturalnego. Więcej informacji: Europejski Słownik Naukowy.

Aby użyć tej funkcji, musisz się zalogować lub zarejestrować

Słowa kluczowe

Słowa kluczowe dotyczące projektu wybrane przez koordynatora projektu. Nie należy mylić ich z pojęciami z taksonomii EuroSciVoc dotyczącymi dziedzin nauki.

Program(-y)

Wieloletnie programy finansowania, które określają priorytety Unii Europejskiej w obszarach badań naukowych i innowacji.

Temat(-y)

Zaproszenia do składania wniosków dzielą się na tematy. Każdy temat określa wybrany obszar lub wybrane zagadnienie, których powinny dotyczyć wnioski składane przez wnioskodawców. Opis tematu obejmuje jego szczegółowy zakres i oczekiwane oddziaływanie finansowanego projektu.

System finansowania

Program finansowania (lub „rodzaj działania”) realizowany w ramach programu o wspólnych cechach. Określa zakres finansowania, stawkę zwrotu kosztów, szczegółowe kryteria oceny kwalifikowalności kosztów w celu ich finansowania oraz stosowanie uproszczonych form rozliczania kosztów, takich jak rozliczanie ryczałtowe.

HORIZON-ERC - HORIZON ERC Grants

Wyświetl wszystkie projekty finansowane w ramach tego programu finansowania

Zaproszenie do składania wniosków

Procedura zapraszania wnioskodawców do składania wniosków projektowych w celu uzyskania finansowania ze środków Unii Europejskiej.

(odnośnik otworzy się w nowym oknie) ERC-2025-STG

Wyświetl wszystkie projekty finansowane w ramach tego zaproszenia

Instytucja przyjmująca

THE CHANCELLOR, MASTERS AND SCHOLARS OF THE UNIVERSITY OF OXFORD
Wkład UE netto

Kwota netto dofinansowania ze środków Unii Europejskiej. Suma środków otrzymanych przez uczestnika, pomniejszona o kwotę unijnego dofinansowania przekazanego powiązanym podmiotom zewnętrznym. Uwzględnia podział unijnego dofinansowania pomiędzy bezpośrednich beneficjentów projektu i pozostałych uczestników, w tym podmioty zewnętrzne.

€ 1 494 803,00
Adres
WELLINGTON SQUARE UNIVERSITY OFFICES
OX1 2JD Oxford
Zjednoczone Królestwo

Zobacz na mapie

Region
South East (England) Berkshire, Buckinghamshire and Oxfordshire Oxfordshire
Rodzaj działalności
Higher or Secondary Education Establishments
Linki
Koszt całkowity

Ogół kosztów poniesionych przez organizację w związku z uczestnictwem w projekcie. Obejmuje koszty bezpośrednie i pośrednie. Kwota stanowi część całkowitego budżetu projektu.

€ 1 494 803,00

Beneficjenci (1)

Moja broszura 0 0