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")
34 #ML_PLATFORM=x86-linux
35 #ML_HOME=/usr/local/polyml/x86-linux
39 # Poly/ML 5.1 (64 bit)
40 #ML_PLATFORM=x86_64-linux
41 #ML_HOME=/usr/local/polyml/x86_64-linux
46 #ML_PLATFORM=x86-linux
47 #ML_HOME=/usr/local/polyml/x86-linux
48 #ML_SYSTEM=polyml-4.2.0
51 # Standard ML of New Jersey (slow!)
53 #ML_HOME="/usr/local/smlnj/bin"
54 #ML_OPTIONS="@SMLdebug=/dev/null"
55 #ML_PLATFORM=$(eval $("$ML_HOME/.arch-n-opsys" 2>/dev/null); echo "$HEAP_SUFFIX")
56 #SMLNJ_CYGWIN_RUNTIME=1
58 # Moscow ML 2.00 (experimental!)
60 #ML_HOME="/usr/local/mosml/bin"
64 # Alice 1.4 (experimental!)
66 #ML_HOME="/usr/local/alice/bin"
72 ### Interactive sessions (cf. isatool tty)
75 ISABELLE_LINE_EDITOR=""
76 [ -z "$ISABELLE_LINE_EDITOR" ] && ISABELLE_LINE_EDITOR="$(type -p rlwrap)"
77 [ -z "$ISABELLE_LINE_EDITOR" ] && ISABELLE_LINE_EDITOR="$(type -p ledit)"
81 ### Batch sessions (cf. isatool usedir)
84 ISABELLE_USEDIR_OPTIONS="-p 1 -v true -V outline=/proof,/ML"
86 # Specifically for the HOL image
88 #HOL_USEDIR_OPTIONS="-p 2"
90 #Source file identification (default: full name + date stamp)
91 ISABELLE_FILE_IDENT=""
92 #ISABELLE_FILE_IDENT="md5"
93 #ISABELLE_FILE_IDENT="md5sum"
94 #ISABELLE_FILE_IDENT="sha1sum"
95 #ISABELLE_FILE_IDENT="openssl dgst -sha1"
99 ### Document preparation (cf. isatool latex/document)
102 ISABELLE_LATEX="latex"
103 ISABELLE_PDFLATEX="pdflatex"
104 ISABELLE_BIBTEX="bibtex"
105 ISABELLE_MAKEINDEX="makeindex"
106 ISABELLE_DVIPS="dvips -D 600"
107 ISABELLE_EPSTOPDF="epstopdf"
109 # Paranoia setting for strange latex installations ...
114 ### Misc path settings
117 # The place for user configuration, heap files, etc.
118 ISABELLE_HOME_USER=~/isabelle
120 # Where to look for isabelle tools (multiple dirs separated by ':').
121 ISABELLE_TOOLS="$ISABELLE_HOME/lib/Tools"
123 # Location for temporary files (should be on a local file system).
124 ISABELLE_TMP_PREFIX="/tmp/isabelle-$USER"
126 # Heap input locations. ML system identifier is included in lookup.
127 ISABELLE_PATH="$ISABELLE_HOME_USER/heaps/$ISABELLE_IDENTIFIER:$ISABELLE_HOME/heaps"
129 # Heap output location. ML system identifier is appended automatically later on.
130 ISABELLE_OUTPUT="$ISABELLE_HOME_USER/heaps/$ISABELLE_IDENTIFIER"
131 ISABELLE_BROWSER_INFO="$ISABELLE_HOME_USER/browser_info"
133 # Site settings check -- just to make it a little bit harder to copy this file verbatim!
134 [ -n "$ISABELLE_SITE_SETTINGS_PRESENT" ] && \
135 { echo >&2 "### Isabelle site settings already present! Maybe copied etc/settings in full?"; }
149 # Where to look for docs (multiple dirs separated by ':').
150 ISABELLE_DOCS="$ISABELLE_HOME/doc"
152 # Preferred document format
153 ISABELLE_DOC_FORMAT=pdf
155 # The dvi file viewer
157 #DVI_VIEWER="xdvi -geometry 498x704 -expert -s 5"
158 #DVI_VIEWER="xdvi -geometry 711x1005 -expert -s 7"
159 #DVI_VIEWER="xdvi -geometry 500x704 -expert -s 10"
160 #DVI_VIEWER="xdvi -geometry 555x782 -expert -s 9"
162 # The pdf file viewer
163 if [ $(uname -s) = Darwin ]; then
172 # Printer spool command for PS files
180 # Fallback: the null interface (pass-through to raw isabelle process).
181 ISABELLE_INTERFACE=none
183 # Proof General path, look in a variety of places
184 ISABELLE_INTERFACE=$(choosefrom \
185 "$ISABELLE_HOME/contrib/ProofGeneral/isar/interface" \
186 "$ISABELLE_HOME/../ProofGeneral/isar/interface" \
187 "/usr/local/ProofGeneral/isar/interface" \
188 "/usr/share/ProofGeneral/isar/interface" \
189 "/opt/ProofGeneral/isar/interface" \
190 "/usr/share/emacs/ProofGeneral/isar/interface" \
191 "$ISABELLE_INTERFACE")
193 PROOFGENERAL_OPTIONS=""
194 #PROOFGENERAL_OPTIONS="-m no_brackets -m no_type_brackets -x true -p emacs22"
196 # Automatic setup of remote fonts
197 #XSYMBOL_INSTALLFONTS="xset fp+ tcp/isafonts.informatik.tu-muenchen.de:7200"
201 ### External reasoning tools
204 ## Set HOME only for tools you have installed!
207 E_HOME=$(choosefrom "$ISABELLE_HOME/contrib/E/$ML_PLATFORM" "/usr/local/E" "")
208 VAMPIRE_HOME=$(choosefrom "$ISABELLE_HOME/contrib/vampire/$ML_PLATFORM" "/usr/local/Vampire" "")
209 SPASS_HOME=$(choosefrom "$ISABELLE_HOME/contrib/spass/$ML_PLATFORM/bin" "/usr/local/SPASS" "")
211 # HOL4 proof objects (cf. Isabelle/src/HOL/Import)
212 #HOL4_PROOFS="$ISABELLE_HOME_USER/proofs:$ISABELLE_HOME/proofs"
214 # SVC (Stanford Validity Checker)
216 #SVC_MACHINE=i386-redhat-linux
217 #SVC_MACHINE=sparc-sun-solaris
219 # Mucke (mu-calculus model checker)
220 #MUCKE_HOME=/usr/local/bin
222 # Einhoven model checker
223 #EINDHOVEN_HOME=/usr/local/bin
225 # MiniSat 1.14 (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
226 #MINISAT_HOME=/usr/local/bin
228 # zChaff (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
229 #ZCHAFF_HOME=/usr/local/bin
230 #ZCHAFF_VERSION=2004.5.13
231 #ZCHAFF_VERSION=2004.11.15
233 # BerkMin561 (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
234 #BERKMIN_HOME=/usr/local/bin
235 #BERKMIN_EXE=BerkMin561-linux
236 #BERKMIN_EXE=BerkMin561-solaris
238 # Jerusat 1.3 (SAT Solver, cf. Isabelle/src/HOL/Tools/sat_solver.ML)
239 #JERUSAT_HOME=/usr/local/bin
241 # For configuring HOL/Matrix/cplex
242 # LP_SOLVER is the default solver. It can be changed during runtime via Cplex.set_solver.
243 # First option: use the commercial cplex solver
246 # Second option: use the open source glpk solver