# Title of Presentation

Program Verification as SMT SMT workshop 2012 Nikolaj Bjrner, Ken McMillan, Andrey Rybalchenko Microsoft Research Takeaways Program Verification as Solving Recursive Horn Clauses as Satisfiability Modulo Theories

SMT-LIB (+ goodies) a superb basis for Program Verification benchmark exchange Program Verification as SMT mc(x) = x-10 if x > 100

mc(x) = mc(mc(x+11)) if x 100 assert (mc(x) 91) Program Verification as SMT Formulate as Horn clauses: mc() mc() mc() mc() mc()

Solve for mc Program Verification as SMT Program Verification (Safety) as Satisfiability of Horn clauses Verification Tool Workflow HAVOC

Program Annotated with Inductive invariants Verification condition Dafny Verification Tool Workflow

Houdini HAVOC Program partially annotated with Inductive invariants Verification condition

Slicing Corral Inductive variable selection Dafny

Verification Tool Workflow Verification Condition Generators can already produce Horn Clauses Corral HAVOC Program partially annotated with Inductive invariants

Why, LLVM Horn Clauses Dualit Kind Leon HSF y Aligato r Synerg

UFO MCMT IC3 y SAFARI Dafny Procedures Horn Formulas

Summary as commands Verifying procedure calls Modular Concurrency Horn Clauses

[Predicate Abstraction and Refinement for Verifying Multi-Threaded Programs Ashutosh Gupta, Corneliu Popeea, Andrey Rybalchenko, POPL 2011] Clauses Horn

{ : | ( )} { :| ( , )} { :| ()} { : | ( , )} Extract sufficient Horn Conditions Verification Tool Workflow summary Many front-ends exist. Verification Condition Generators: - used for Checking Inductive Invariants - re-used for Synthesizing Inductive Invariants

Generalized Horn Formulas In a nutshell, solving partial correctness amounts to checking truth value of formulas of the form: E.g., satisfiability of: Generalized Horn Formulas Handling background axioms:

Z3s SMT format Takeaways Program Verification as Solving Recursive Horn Clauses as Satisfiability Modulo Theories SMT-LIB (+ goodies) a superb basis for Program

Verification benchmark exchange

## Recently Viewed Presentations

• I can identify the purpose behind asking questions at a higher level. I can incorporate Bloom's Taxonomy when developing high level questions. I understand what question space is and can implement this into my own questioning practice.
• Residential customers were engaged to understand the level of support for a Time of Use tariff. Western Power take its responsibility to deliver a safe and reliable electricity service to 1.1 million homes and businesses in Western Australia seriously.
• Baseline products. This is baseline products of GEMS. The required precisions of the NO2, SO2, HCHO are 1X10^15, 1X10^16, and 1X10^16 respectively.
• Example: Condition A: If the Light Sensor reads above 50, NXT says "Light"; Condition B: If the Light Sensor reads below 50, NXT says "Dark" Specific conditions could be time, sensor input, a set number of repetitions (sample switch.rbt)
• Summary - Überschneidungsfreie Vorortung quantitative Potenziale Sportartikel/-geräte. AGOF facts & figures „Sportartikel und -geräte" Q1/2016Quelle: AGOF e.V. / digital facts 2015-12Basis: 103.513 Fälle (Nutzer stationäre und/oder mobile Angebote letzte drei Monate) / Angaben in Prozent
• In the spring of 2010, I earned my AIC designation by completing three AIC exams and one AINS exam over a six month period. While on a long term job assignment in Florida, I started studying CPCU 500 in February...
• What is "MAKING?" The maker culture is a contemporary culture or subculture representing a technology-based extension of DIY culture.Typical interests enjoyed by the maker culture include engineering-oriented pursuits such as electronics, robotics, 3-D printing, and the use of CNC tools,...
• Cubism. Cubism was a truly revolutionary style of modern art developed by Pablo Picasso and Georges Braque. It was the first style of abstract art which evolved at the beginning of the 20th century in response to a world that...