Onur Kasimlar

AI Meets Hoare Logic: Revolutionizing Software Testing with Formal Methods

Go beyond testing. Use AI and formal methods to mathematically prove your software is correct for all possible inputs.

AI Meets Hoare Logic: Revolutionizing Software Testing with Formal Methods
#1about 3 minutes

The case for software verification in the AI era

AI-generated code is probabilistic and requires more than traditional testing, creating a need for formal software verification to ensure correctness.

#2about 3 minutes

Understanding the difference between testing and verification

Software testing finds errors through execution with selected inputs, while formal verification provides a complete mathematical proof of correctness for all inputs.

#3about 6 minutes

A primer on Hoare Logic and its core axioms

Hoare Logic uses preconditions, postconditions, and axioms like assignment and composition to formally prove that a piece of code behaves as specified.

#4about 1 minute

Current tools and applications for software verification

Modern verification relies on tools like SMT solvers and model checkers and is primarily used in critical systems like aerospace due to its high manual effort.

#5about 4 minutes

Verifying a binary search algorithm with OpenJML

A practical demonstration shows how to use OpenJML annotations like 'requires' and 'ensures' to formally verify a Java binary search implementation.

#6about 3 minutes

Using AI to generate formal verification proofs

AI tools like Gemini can generate verification annotations but may introduce subtle errors, highlighting the need for human oversight in this new validation workflow.

Related jobs
Jobs that call for the skills explored in this talk.
SabIna compys

SabIna compys
Vienna, Austria

Remote
20-100K
Intermediate
JavaScript
.NET
+1

Featured Partners

Related Articles

View all articles
BB
Benedikt Bischof
How we Build The Software of Tomorrow
Welcome to this issue of the WeAreDevelopers Live Talk series. This article recaps an interesting talk by Thomas Dohmke who introduced us to the future of AI – coding.This is how Thomas describes himself:I am the CEO of GitHub and drive the company’s...
How we Build The Software of Tomorrow
CH
Chris Heilmann
Exploring AI: Opportunities and Risks for Developers
In today's rapidly evolving tech landscape, the integration of Artificial Intelligence (AI) in development presents both exciting opportunities and notable risks. This dynamic was the focus of a recent panel discussion featuring industry experts Kent...
Exploring AI: Opportunities and Risks for Developers

From learning to earning

Jobs that call for the skills explored in this talk.

Software Tester

Think-cell
Foster City, United States of America

Intermediate
Unit Testing
Manual Testing
Automated Testing