seL4 / l4v

seL4 specification and proofs

Home Page:https://sel4.systems

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AutoCorres 1.8 fails to build on Isabelle 2021-1 - Cannot load theory "HOL-Library.Bit_Operations"

Pierre-Colin opened this issue · comments

Hi. Being interested in formal verification of C programs as well as getting a better understanding the extent of the seL4 proof, I decided to download Isabelle and follow UNSW's COMP4161. After two readings, most of the content of the course is clear to me, and I have even managed to prove a few unrelated things on my own, but when comes time to use AutoCorres, I get stuck right at the building phase.

My GNU/Linux distribution is Arch, and I installed Isabelle 2021-1 by unpacking its archive into /opt/isabelle/ and placing the following shell script in /usr/bin/isabelle (probably not written by me since that's not how I would do it):

#!/usr/bin/env bash

exec "/opt/isabelle/bin/isabelle" "$@"

I then extracted the AutoCorres 1.8 archive in the same directory as the theory files for the course and ran the following command from that same directory:

L4V_ARCH=X64 isabelle build -v -b -d autocorres-1.8 AutoCorres

The building fails with the following log (hostname and home directory name omitted):

Started at Mon Jun 6 21:43:18 GMT+2 2022 (polyml-5.9_x86_64_32-linux on hostname)
ISABELLE_TOOL_JAVA_OPTIONS="-Djava.awt.headless=true -Xms512m -Xmx4g -Xss16m"
ISABELLE_BUILD_OPTIONS=""

ML_PLATFORM="x86_64_32-linux"
ML_HOME="/opt/isabelle/contrib/polyml-5.9/x86_64_32-linux"
ML_SYSTEM="polyml-5.9"
ML_OPTIONS="--minheap 500"

Session Pure/Pure
Session FOL/FOL
Session Tools/Tools
Session HOL/HOL (main)
Session HOL/HOL-Library (main timing)
Session HOL/HOL-Combinatorics (main timing)
Session HOL/HOL-Computational_Algebra (main timing)
Session HOL/HOL-Analysis (main timing)
Session HOL/HOL-Eisbach
Session HOL/HOL-Statespace
Session Lib/Word_Lib (lib)
*** Cannot load theory "HOL-Library.Bit_Operations"
*** The error(s) above occurred in session "Word_Lib" (line 9 of "~/doc/COMP4161/autocorres-1.8/lib/Word_Lib/ROOT")

The file /opt/isabelle/src/HOL/Bit_Operations.thy exists, though when open with jEdit it shows the following error on line 6:

Cannot update finished theory "HOL.Bit_Operations"

This is probably not an actual error since it does the same thing on Main.thy. I have tried reinstalling Isabelle with no success, and I cannot find older Isabelle versions which don't seem to be archived. I also could not find this issue being mentioned while searching for Isabelle or AutoCorres.

What may be the source of this error?

Thank you for your attention.

Hi! autocorres-1.8 is for Isabelle2021 and does not work for Isabelle2021-1. We haven't released a 2021-1 version yet, because we have larger changes in the pipeline for that release.

You can either use autocorres directly from the l4v repository together with Isabelle2021-1 or download Isabelle2021 and use the release 1.8 version.