1 # -*- shell-script -*- :mode=shellscript:
4 # Isabelle settings -- site defaults.
7 # * See the system manual for explanations on Isabelle settings
8 # * DO NOT EDIT the repository copy of this file!
9 # * DO NOT COPY this file into your personal isabelle directory!
12 ### ML compiler settings (ESSENTIAL!)
15 # ML_HOME specifies the location of the actual compiler binaries. Do
16 # not invent new ML system names unless you know what you are doing.
17 # Only one of the sections below should be activated.
19 # Poly/ML 4.x/5.x (automated settings)
20 POLY_HOME="$(type -p poly)"; [ -n "$POLY_HOME" ] && POLY_HOME="$(dirname "$POLY_HOME")"
21 ML_PLATFORM=$("$ISABELLE_HOME/lib/scripts/polyml-platform")
22 ML_HOME=$(choosefrom \
23 "$ISABELLE_HOME/contrib/polyml/$ML_PLATFORM" \
24 "$ISABELLE_HOME/../polyml/$ML_PLATFORM" \
25 "/usr/local/polyml/$ML_PLATFORM" \
26 "/usr/share/polyml/$ML_PLATFORM" \
27 "/opt/polyml/$ML_PLATFORM" \
29 ML_SYSTEM=$("$ISABELLE_HOME/lib/scripts/polyml-version")
33 # Poly/ML 5.1 on 64bit Linux
34 #ML_PLATFORM=x86_64-linux
35 #ML_HOME=/usr/local/polyml/x86_64-linux
39 # Poly/ML 5.1 on Cygwin
40 #ML_PLATFORM=x86-cygwin
41 #ML_HOME=/usr/local/polyml/x86-cygwin
44 #POLY_LINK_OPTIONS="-lstdc++"
47 #ML_PLATFORM=x86-linux
48 #ML_HOME=/usr/local/polyml/x86-linux
49 #ML_SYSTEM=polyml-4.2.0
52 # Standard ML of New Jersey 110 or later
53 #SMLNJ_CYGWIN_RUNTIME=1
55 #ML_HOME="$ISABELLE_HOME/contrib/smlnj/bin"
56 #ML_OPTIONS="@SMLdebug=/dev/null"
57 #ML_PLATFORM=$(eval $("$ML_HOME/.arch-n-opsys" 2>/dev/null); echo "$HEAP_SUFFIX")
59 # Moscow ML 2.00 or later (experimental!)
61 #ML_HOME="$ISABELLE_HOME/contrib/mosml/bin"
65 # Poplog/PML version 15.6/2.1 (experimental!)
67 #ML_HOME="/usr/local/poplog/current-poplog/bin"
72 # Alice 1.4 (experimental!)
74 #ML_HOME="/usr/local/alice/bin"
80 ### Compilation options (cf. isatool usedir)
83 ISABELLE_USEDIR_OPTIONS="-p 1 -v true -V outline=/proof,/ML"
85 # Specifically for the HOL image
87 #HOL_USEDIR_OPTIONS="-p 2"
89 #Source file identification (default: full name + date stamp)
90 ISABELLE_FILE_IDENT=""
91 #ISABELLE_FILE_IDENT="md5"
92 #ISABELLE_FILE_IDENT="md5sum"
93 #ISABELLE_FILE_IDENT="sha1sum"
94 #ISABELLE_FILE_IDENT="openssl dgst -sha1"
98 ### Document preparation (cf. isatool latex/document)
101 ISABELLE_LATEX="latex"
102 ISABELLE_PDFLATEX="pdflatex"
103 ISABELLE_BIBTEX="bibtex"
104 ISABELLE_MAKEINDEX="makeindex"
105 ISABELLE_DVIPS="dvips -D 600"
106 ISABELLE_EPSTOPDF="epstopdf"
108 # Paranoia setting for strange latex installations ...
111 # If ISABELLE_THUMBPDF is set, isatool tries to
112 # generate thumbnails for proof documents
113 #type -path thumbpdf >/dev/null && ISABELLE_THUMBPDF="thumbpdf"
117 ### Misc path settings
120 # The place for user configuration, heap files, etc.
121 ISABELLE_HOME_USER=~/isabelle
123 # Where to look for isabelle tools (multiple dirs separated by ':').
124 ISABELLE_TOOLS="$ISABELLE_HOME/lib/Tools"
126 # Location for temporary files (should be on a local file system).
127 ISABELLE_TMP_PREFIX="/tmp/isabelle-$USER"
129 # Heap input locations. ML system identifier is included in lookup.
130 ISABELLE_PATH="$ISABELLE_HOME_USER/heaps/$ISABELLE_IDENTIFIER:$ISABELLE_HOME/heaps"
132 # Heap output location. ML system identifier is appended automatically later on.
133 if [ "$THIS_IS_ISABELLE_BUILD" = true ]; then
134 #Isabelle build tells us to store heaps etc. within the distribution.
135 ISABELLE_OUTPUT="$ISABELLE_HOME/heaps"
136 ISABELLE_BROWSER_INFO="$ISABELLE_HOME/browser_info"
138 ISABELLE_OUTPUT="$ISABELLE_HOME_USER/heaps/$ISABELLE_IDENTIFIER"
139 ISABELLE_BROWSER_INFO="$ISABELLE_HOME_USER/browser_info"
142 # Site settings check -- just to make it a little bit harder to copy this file verbatim!
143 [ -n "$ISABELLE_SITE_SETTINGS_PRESENT" ] && \
144 { echo >&2 "### Isabelle site settings already present! Maybe copied etc/settings in full?"; }
158 # Where to look for docs (multiple dirs separated by ':').
159 ISABELLE_DOCS="$ISABELLE_HOME/doc"
161 # Preferred document format
162 ISABELLE_DOC_FORMAT=pdf
164 # The dvi file viewer
166 #DVI_VIEWER="xdvi -geometry 498x704 -expert -s 5"
167 #DVI_VIEWER="xdvi -geometry 711x1005 -expert -s 7"
168 #DVI_VIEWER="xdvi -geometry 500x704 -expert -s 10"
169 #DVI_VIEWER="xdvi -geometry 555x782 -expert -s 9"
171 # The pdf file viewer
172 if [ $(uname -s) = Darwin ]; then
181 # Printer spool command for PS files
189 # Fallback: the null interface (pass-through to raw isabelle process).
190 ISABELLE_INTERFACE=none
192 # Proof General path, look in a variety of places
193 ISABELLE_INTERFACE=$(choosefrom \
194 "$ISABELLE_HOME/contrib/ProofGeneral/isar/interface" \
195 "$ISABELLE_HOME/../ProofGeneral/isar/interface" \
196 "/usr/local/ProofGeneral/isar/interface" \
197 "/usr/share/ProofGeneral/isar/interface" \
198 "/opt/ProofGeneral/isar/interface" \
199 "/usr/share/emacs/ProofGeneral/isar/interface" \
200 "$ISABELLE_INTERFACE")
202 PROOFGENERAL_OPTIONS=""
203 #PROOFGENERAL_OPTIONS="-m no_brackets -m no_type_brackets -x true -p xemacs"
205 type -path xemacs >/dev/null || \
206 PROOFGENERAL_OPTIONS="-p emacs $PROOFGENERAL_OPTIONS"
208 # Automatic setup of remote fonts
209 #XSYMBOL_INSTALLFONTS="xset fp+ tcp/isafonts.informatik.tu-muenchen.de:7200"
213 ### External reasoning tools
216 ## Set HOME only for tools you have installed!
218 # HOL4 proof objects (cf. Isabelle/src/HOL/Import)
219 HOL4_PROOFS="$PROOF_DIRS:$ISABELLE_HOME_USER/proofs:$ISABELLE_HOME/proofs"
221 # SVC (Stanford Validity Checker)
223 #SVC_MACHINE=i386-redhat-linux
224 #SVC_MACHINE=sparc-sun-solaris
226 # Mucke (mu-calculus model checker)
227 #MUCKE_HOME=/usr/local/bin
229 # Einhoven model checker
230 #EINDHOVEN_HOME=/usr/local/bin
232 # MiniSat 1.14 (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
233 #MINISAT_HOME=/usr/local/bin
235 # zChaff (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
236 #ZCHAFF_HOME=/usr/local/bin
237 #ZCHAFF_VERSION=2004.5.13
238 #ZCHAFF_VERSION=2004.11.15
240 # BerkMin561 (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
241 #BERKMIN_HOME=/usr/local/bin
242 #BERKMIN_EXE=BerkMin561-linux
243 #BERKMIN_EXE=BerkMin561-solaris
245 # Jerusat 1.3 (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
246 #JERUSAT_HOME=/usr/local/bin
248 # For configuring HOL/Matrix/cplex
249 # LP_SOLVER is the default solver. It can be changed during runtime via Cplex.set_solver.
250 # First option: use the commercial cplex solver
253 # Second option: use the open source glpk solver
258 E_HOME=$(choosefrom "$ISABELLE_HOME/contrib/E/$ML_PLATFORM" "/usr/local/E" "")
259 VAMPIRE_HOME=$(choosefrom "$ISABELLE_HOME/contrib/vampire/$ML_PLATFORM" "/usr/local/Vampire" "")
260 SPASS_HOME=$(choosefrom "$ISABELLE_HOME/contrib/spass/$ML_PLATFORM/bin" "/usr/local/SPASS" "")