author | haftmann |
Thu, 19 Jun 2025 17:15:40 +0200 | |
changeset 82734 | 89347c0cc6a3 |
parent 64561 | a7664ca9ffc5 |
permissions | -rw-r--r-- |
64561 | 1 |
Notes from Geoff Sutcliffe: |
60716 | 2 |
|
3 |
I added a few lines to the top of bin/isabelle ... |
|
4 |
||
5 |
## Geoff makes Isabelle a robust tool, because he's kind |
|
6 |
function cleanup { |
|
7 |
rm -rf $HOME |
|
8 |
} |
|
9 |
if [ -z ${HOME+x} ]; then |
|
10 |
HOME="/tmp/Isabelle_$$" |
|
11 |
trap cleanup EXIT |
|
12 |
fi |
|
13 |
||
14 |
... which you might like to adopt. Now it works on SystemOnTPTP. |
|
15 |
||
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
16 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
17 |
Notes to Geoff: |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
18 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
19 |
Once you have open the archive, Isabelle and its tool are ready to go. The |
60716 | 20 |
various tools are invoked as follows (given a file name %s): |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
21 |
|
60716 | 22 |
Isabelle, competition version: |
23 |
STAREXEC_WALLCLOCK_LIMIT=300 ./bin/starexec_run_isabelle %s |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
24 |
|
60716 | 25 |
Isabelle, demo version: |
26 |
STAREXEC_WALLCLOCK_LIMIT=300 ./bin/starexec_run_isabelle_hot %s |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
27 |
|
60716 | 28 |
Nitpick (formerly also called Nitrox): |
29 |
STAREXEC_WALLCLOCK_LIMIT=300 ./bin/starexec_run_nitpick %s |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
30 |
|
60716 | 31 |
Refute: |
32 |
STAREXEC_WALLCLOCK_LIMIT=300 ./bin/starexec_run_refute %s |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
33 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
34 |
Here's an example: |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
35 |
|
60716 | 36 |
STAREXEC_WALLCLOCK_LIMIT=300 ./bin/starexec_run_isabelle $TPTP/Problems/SET/SET014^4.p |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
37 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
38 |
The output should look as follows: |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
39 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
40 |
running nitpick for 7 s |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
41 |
FAILURE: nitpick |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
42 |
running simp for 15 s |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
43 |
SUCCESS: simp |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
44 |
% SZS status Theorem |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
45 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
46 |
Additional sanity tests: |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
47 |
|
60716 | 48 |
STAREXEC_WALLCLOCK_LIMIT=300 ./bin/starexec_run_isabelle_hot $TPTP/Problems/CSR/CSR150^3.p |
49 |
STAREXEC_WALLCLOCK_LIMIT=300 ./bin/starexec_run_isabelle_hot $TPTP/Problems/SYO/SYO304^5.p |
|
50 |
||
64561 | 51 |
The first problem is unprovable; the second one is proved by Satallax (after |
52 |
some delay). |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
53 |
|
64561 | 54 |
All the tools accept CNF, FOF, TFF0, TFF1, THF0, or THF1 problems and output |
55 |
SZS statuses of the form |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
56 |
|
60716 | 57 |
% SZS status XXX |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
58 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
59 |
where XXX is in the set |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
60 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
61 |
{Unknown, TimedOut, Unsatisfiable, Theorem, Satisfiable, CounterSatisfiable} |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
62 |
|
60716 | 63 |
Nitpick also output a model within "% SZS begin" and "% SZS end" tags, in |
64561 | 64 |
its idiosyncratic syntax. For TFF0 and THF0, phantom type arguments are not |
65 |
supported, and type quantifiers are only allowed at the outermost position |
|
66 |
in a formula, as "forall". |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
67 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
68 |
Enjoy! |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
69 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
70 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
71 |
Notes to myself: |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
72 |
|
64561 | 73 |
I downloaded the official Isabelle2016-1 Linux package from |
60716 | 74 |
|
64561 | 75 |
http://isabelle.in.tum.de/dist/Isabelle2016-1_linux.tar.gz |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
76 |
|
64561 | 77 |
on "macbroy21" and renamed the directory "Isabelle2016-1-CASC". I modified |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
78 |
|
64561 | 79 |
src/HOL/TPTP |
60716 | 80 |
|
81 |
to include changes backported from the development version of Isabelle. I |
|
64561 | 82 |
also modified "bin/isabelle" as suggested by Geoff above. I then built a |
83 |
"HOL-TPTP" image: |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
84 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
85 |
./bin/isabelle build -b HOL-TPTP |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
86 |
|
64561 | 87 |
I moved the heaps over to "./heaps": |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
88 |
|
64561 | 89 |
mv ~/.isabelle/Isabelle2016-1/heaps . |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
90 |
|
60716 | 91 |
I created some wrapper scripts in "./bin": |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
92 |
|
60716 | 93 |
starexec_run_default |
94 |
starexec_run_isabelle |
|
95 |
starexec_run_isabelle_hot |
|
96 |
starexec_run_nitpick |
|
97 |
starexec_run_refute |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
98 |
|
60716 | 99 |
I tested the "SET014^4" problem mentioned above. |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
100 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
101 |
Next, I installed and enabled ATPs. |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
102 |
|
60716 | 103 |
LEO-II (1.6.2): |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
104 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
105 |
I logged to a 32-bit Linux ("lxlabbroy") machine. I retrieved LEO-II from |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
106 |
|
60716 | 107 |
http://page.mi.fu-berlin.de/cbenzmueller/leo/leo2_v1.6.2.tgz |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
108 |
|
60716 | 109 |
I did "make opt". I copied "bin/leo.opt" to |
64561 | 110 |
"~/Isabelle2016-1-CASC/contrib/leo". |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
111 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
112 |
I added this line to "etc/settings": |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
113 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
114 |
LEO2_HOME=$ISABELLE_HOME/contrib |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
115 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
116 |
Satallax (2.7): |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
117 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
118 |
I logged to a 32-bit Linux ("lxlabbroy") machine. I retrieved Satallax from |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
119 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
120 |
http://www.ps.uni-saarland.de/~cebrown/satallax/downloads/satallax-2.7.tar.gz |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
121 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
122 |
I added E to the path so that it gets detected by Satallax's configure |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
123 |
script: |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
124 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
125 |
export PATH=$PATH:~/Isabelle2013-CASC/contrib/e-1.6-2/x86-linux |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
126 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
127 |
I followed the instructions in "satallax-2.7/INSTALL". I copied |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
128 |
"bin/satallax.opt" to "~/Isabelle2013-CASC/contrib/satallax". |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
129 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
130 |
I added this line to "etc/settings": |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
131 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
132 |
SATALLAX_HOME=$ISABELLE_HOME/contrib |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
133 |
|
64561 | 134 |
Vampire 4.0 (commit 2fedff6) |
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
135 |
|
64561 | 136 |
I copied the file "vampire", which I got from Giles Reger on 23 September |
137 |
2015. |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
138 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
139 |
I added these lines to "etc/settings": |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
140 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
141 |
VAMPIRE_HOME=$ISABELLE_HOME/contrib |
64561 | 142 |
VAMPIRE_VERSION=4.0 |
60716 | 143 |
|
144 |
Z3 TPTP (4.3.2.0 postrelease): |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
145 |
|
64561 | 146 |
For Isabelle2015, I cloned out the git repository: |
60716 | 147 |
|
148 |
git clone https://git01.codeplex.com/z3 |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
149 |
|
60716 | 150 |
I build Z3 and from "build", ran "make examples" to build "z3_tptp". |
151 |
I copied "z3_tptp" as "z3_tptp-solver" and "libz3.so" to "./contrib", |
|
152 |
and put a wrapper called "z3_tptp" to set the library path correctly |
|
153 |
(inspired by the CVC4 setup on Mac OS X). |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
154 |
|
60716 | 155 |
I added this line to "etc/settings": |
156 |
||
157 |
Z3_TPTP_HOME=$ISABELLE_HOME/contrib |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
158 |
|
60716 | 159 |
Unfortunately, I got "z3::exception" errors. I did not investigate this |
160 |
further and commented out the environment variable in "etc/settings". |
|
161 |
||
162 |
To test that the examples actually worked, I create a file called |
|
163 |
"/tmp/T.thy" with the following content: |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
164 |
|
60716 | 165 |
theory T imports Main begin |
64561 | 166 |
|
60716 | 167 |
lemma "a = b ==> [b] = [a]" |
64561 | 168 |
sledgehammer [cvc4 e leo2 satallax spass vampire z3 (*z3_tptp*)] () |
169 |
oops |
|
170 |
||
60716 | 171 |
end |
172 |
||
173 |
Then I ran |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
174 |
|
62677 | 175 |
./bin/isabelle process -T /tmp/T |
60716 | 176 |
|
177 |
I also performed the aforementioned sanity tests. |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
178 |
|
60716 | 179 |
Finally, I renamed "README" to "README.orig" and copied this "ReadMe" over. |
180 |
||
181 |
Ideas for a future year: |
|
52098
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
182 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
183 |
* Unfold definitions, esp. if it makes the problem more first-order (cf. |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
184 |
"SEU466^1"). |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
185 |
* Detect and remove needless definitions. |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
186 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
187 |
That's it. |
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
188 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
189 |
|
6c38df1d294a
added CASC-related files, to keep a public record of the Isabelle submission at the competition
blanchet
parents:
diff
changeset
|
190 |
Jasmin Blanchette |
64561 | 191 |
15 December 2016 |