Stream: Archive Mirror: Isabelle Users Mailing List

Topic: [isabelle] auto2 on imperative programs


view this post on Zulip Email Gateway (Aug 22 2022 at 11:13):

From: Bohua Zhan <bzhan@mit.edu>
Hi, everyone

I have uploaded the newest version of auto2, with work done over the
summer. The main addition is examples on verifying imperative
programs, in the framework of Imperative_HOL.

The repository is at: https://github.com/bzhan/auto2

The main algorithms verified are:

Examples on arrays and linked lists follow the corresponding ones in
HOL/Imperative_HOL/ex.

Similar to examples in Imperative_HOL/ex, the proofs use directly the
semantics of the heap monad. All loops are defined by recursion, and
properties of recursive functions are proved by induction. No Hoare
logic or separation logic is used (although some of the abstractions
may be inspired by separation logic, as is necessary to deal with
disjointness of sets of pointers, etc). The proofs are "mostly"
automatic - only a few lines of hints are needed to give intermediate
steps.

Some technical notes:

The documentation is updated to reflect all the internal changes, but
unfortunately I haven't had time to explain the newer examples in
detail. Nevertheless I would be happy to answer any questions about
them here. Any comments are also welcome.

Thanks,
Bohua


Last updated: Apr 25 2024 at 12:23 UTC