src/HOL/TPTP/lib/Tools/tptp_isabelle
author blanchet
Fri, 24 May 2013 11:08:25 +0200
changeset 52124 c54170ee898b
parent 52096 7e9cd79e25b3
child 54434 e275d520f49d
permissions -rwxr-xr-x
pass noninteractive flag -- necessary to run under CASC's "runsolver" program
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
47832
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
     1
#!/usr/bin/env bash
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
     2
#
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
     3
# Author: Jasmin Blanchette
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
     4
#
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
     5
# DESCRIPTION: Isabelle tactics for TPTP competitive division
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
     6
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
     7
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
     8
PRG="$(basename "$0")"
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
     9
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    10
function usage() {
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    11
  echo
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    12
  echo "Usage: isabelle $PRG TIMEOUT FILES"
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    13
  echo
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    14
  echo "  Runs a combination of Isabelle tactics on TPTP problems."
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    15
  echo "  Each problem is allocated at most TIMEOUT seconds."
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    16
  echo
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    17
  exit 1
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    18
}
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    19
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    20
[ "$#" -eq 0 -o "$1" = "-?" ] && usage
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    21
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    22
SCRATCH="Scratch_${PRG}_$$_${RANDOM}"
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    23
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    24
TIMEOUT=$1
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    25
shift
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    26
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    27
for FILE in "$@"
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    28
do
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    29
  echo "theory $SCRATCH imports \"$TPTP_HOME/ATP_Problem_Import\" begin \
48083
a4148c95134d renamed TPTP commands to agree with Sutcliffe's terminology
blanchet
parents: 47832
diff changeset
    30
ML {* ATP_Problem_Import.isabelle_tptp_file @{theory} ($TIMEOUT) \"$FILE\" *} end;" \
47832
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    31
    > /tmp/$SCRATCH.thy
52124
c54170ee898b pass noninteractive flag -- necessary to run under CASC's "runsolver" program
blanchet
parents: 52096
diff changeset
    32
  "$ISABELLE_PROCESS" -q -e "use_thy \"/tmp/$SCRATCH\"; exit 1;" HOL-TPTP | grep --line-buffered -v "^###\|^PROOF FAILED for depth\|^Failure node\|inferences so far.  Searching to depth\|^val it = (): unit"
47832
7df66b448c4a split into demo and competitive version
blanchet
parents:
diff changeset
    33
done