| author | wenzelm | 
| Sat, 29 Dec 2018 16:11:24 +0100 | |
| changeset 69536 | 892b68f932f9 | 
| 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 |