SMT is a problem of determining whether a mathematical formula is satisfiable, generalizing the Boolean satisfiability problem. It is NP-hard and for many theories it is undecidable, but researchers study which theories lead to a decidable SMT problem. SMT solvers are tools used to solve the SMT problem for practical inputs and have been used in various applications.
Stanford University
Winter 2023
Focuses on efficient high-level programming through code optimization and program analysis for quality improvement. Also explores automatic memory management and natural language coding through machine learning.
No concepts data
+ 16 more conceptsStanford University
Fall 2019
This course emphasizes SAT and SMT technology and its applications, offering an understanding of theoretical foundations and how to implement a small theory solver. Applications of SAT/SMT technology in the context of verification are also covered. The advanced topics and lack of specified prerequisites suggest this is a high-level course.
No concepts data
+ 20 more conceptsCarnegie Mellon University
Spring 2022
This course is about software verification, with the goal of writing bug-free code. Students will learn to formalize program correctness, write verified code, and use automated tools for verification. It explores the principles behind verification tools, logical specifications, and deductive reasoning. Previous knowledge in program correctness reasoning is beneficial.
No concepts data
+ 22 more concepts