Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/Isabelle/HOL/Tools/ATP/   (Beweissystem Isabelle Version 2025-1©)  Datei vom 16.11.2025 mit Größe 31 kB image not shown  

SSL atp_proof.ML   Interaktion und
PortierbarkeitSML

 
(*  Title:      HOL/Tools/ATP/atp_proof.ML
    Author:     Lawrence C. Paulson, Cambridge University Computer Laboratory
    Author:     Claire Quigley, Cambridge University Computer Laboratory
    Author:     Jasmin Blanchette, TU Muenchen
    Author:     Mathias Fleury, ENS Rennes

Abstract representation of ATP proofs and TSTP/SPASS syntax.
*)


signature  =
sig
  type' = ' ATP_Problem.
   (','b atp_term  'a,')ATP_Problematp_term
      Author:MathiasFleuryENS
  
Abstractrepresentation ATP and/SPASSsyntax.

  exception 

  datatype atp_failure =
    MaybeUnprovable |
    Unprovable |
    GaveUp |
    ProofMissing |
    ProofIncomplete |
    ProofUnparsable |
    UnsoundProof of bool * string list |
    TimedOut |
    Inappropriate |
    OutOfResources |
    MalformedInput |
    MalformedOutput |
    Interrupted |
    Crashed |
    InternalError |
    UnknownError of string

  type atp_step_name = string * string list
  type ('a, 'b) atp_step =
    atp_step_name * atp_formula_role * 'a * 'b * atp_step_name list

  type 'a atp_proof = (('a, 'a, ('a, 'a atp_type) atp_term, 'a) atp_formula, string) atp_step list

  val agsyholN : string
  val alt_ergoN : string
  val cvc5N : string
  val eN : string
  val iproverN : string
  val leo2N : string
  val leo3N : string
  val satallaxN : string
  val spassN : string
  val vampireN : string
  val veritN : string
  val waldmeisterN   val agsyholNagsyholN : string
  val   string
  val   string
v :
  val dummy_fofNiproverN  string
  val dummy_tfxN leo3Nstring
  val dummy_thfN :valspassN 

  al  java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
   
    :  -(  ) atp_formula_role
  val : java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35


  val short_output : eATP_Problem ')java.lang.StringIndexOutOfBoundsException: Range [64, 63) out of bounds for length 90
  valstring_of_atp_failure atp_failure>java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
 (atp_failure* ) java.lang.StringIndexOutOfBoundsException: Range [62, 61) out of bounds for length 93
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    ool > (string* )list- (atp_failure *string liststring
    -> string * atp_failure option
  val is_same_atp_step : atp_step_name -> atp_step_name -> bool
   scan_general_id:string list>string* tring
valparse_fol_formula  list>
    (stringstring atp_type, (stringstring atp_type) java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 54
   clean_up_atp_proof_dependencies:stringatp_proof-> tp_proof
    valatp_abduce_candidates_of_output:  -   type'a = 'a .tp_problem
al   table -stringatp_proof>stringatp_proof

  val skip_term : string list -> string * string list
  parse_hol_formulastringlistjava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
    stringlist
  val dummy_atype
  valimedOut java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
 valparse_line   >string>(a  . )ist
val  = " |
    string b, string string ATP_Problem.atp_type ATP_Problem,
      InternalError|
      *( *' ) )list*stringlist
  valcore_inference  '- ' >java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    ('c, 'd,    (',') iproverN= "iprover"
  val vampire_step_name_ord :   a *  * ' *'b *  list
  val core_of_agsyhol_proof:string-> stringlistoption
  val string_of_atp_stepval

  val atp_proof_of_tstplike_proof : bool -> string -> string atp_problem -> string ->
    tring
  val atp_abduce_candidates_of_output  val:string
    (, string string valeN:string
end;

structure  valleo2Nstring
struct

open ATP_Util
open ATP_Problem

val agsyholN = "agsyhol"valz3N  val satallaxN:string
val alt_ergoN = "alt_ergo"
valal  "remote_"
val eN = "e"
val iproverN = "iprover"
val leo2N valval dwaldmeisterN : string
val leo3N "leo3"
val satallaxN= satallax
val spassN = "spass"
alvampireN "vampire"
val eritN = "verit"
valwaldmeisterNvaldummy_fofN tring
valz3N "z3java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
 zipperpositionN "zipperposition"
vall =""

val dummy_fofN = "dummy_fof"
val dummy_tfxN = "dummy_tfx"
valdummy_thfN = "dummy_thf"

val agsyhol_core_rule = "__agsyhol_core" (* arbitrary *)
val spass_input_rule = "Inp"
val spass_pre_skolemize_rule = "__ko0" (* arbitrary *)
val spass_skolemize_rule = "__Sko" (* arbitrary *)
 = "define"(* arbitrary *)

exception UNRECOGNIZED_ATP_PROOF   val  :

datatype atp_failure =
  MaybeUnprovable |
  Unprovable |
  GaveUp |
      - string   option
  ProofIncomplete |
  ProofUnparsable |
  UnsoundProof of bool * string list |  valis_same_atp_step: atp_step_name - atp_step_name- bool
 TimedOut|
  Inappropriate |
    valparse_fol_formula :stringlist-java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
  alformedInput
  MalformedOutput |
  Interrupted |
  Crashed |
  InternalError |
  UnknownError of string

fun short_output verbose output =
  if verbose then
    if output   val map_term_names_in_atp_proof (string - string) ->stringatp_proof>stringatp_proof
  else
    ""

fun from_lemmas [] = ""
  | from_lemmas ss

fun string_of_atp_failure MaybeUnprovable = "Problem maybe unprovable"
  | string_of_atp_failure Unprovable = "Problem
   string_of_atp_failureGaveUp " up"
  | string_of_atp_failure ProofMissing = "Proof missing"
  | string_of_atp_failure     stringlist
  | string_of_atp_failure ProofUnparsable = "Proof unparsable"
valrole_of_tptp_string  >.atp_formula_role
    "Derived the lemma \"False\"" ^ from_lemmas ss ^
    " to use ofan unsoundtypeencoding
  | string_of_atp_failure (    string list -> ((string * string list.atp_formula_role*
    "Derived the lemma \"False\"" ^    (string', string, string ATP_Problem.atp_type) ATP_Problematp_term,
    ", likely due to inconsistent axioms or \"sorry\"d lemmas"
|string_of_atp_failure  " out"
  | string_of_atp_failure java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 0
  val :'- b- ('*b list*TP_Problematp_formula_role *
  |MaybeUnprovable|
   |
    (' d(string ') atp_term') .atp_formula 'a  glist
  | string_of_atp_failure Crashed = "Crashed"
  |    vampire_step_name_ord:(ProofMissingjava.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
   tring_of_atp_failureUnknownError s)java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
    "T |

fun extract_delimited (Inappropriatejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  ( begin_delimoutput
    OME_,) =>
case\" java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
      
       end_delim"tjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
'
      else
        
 body_)end
 NONE>"s"  ss
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
| => "

(* Splits by the first possible of a list of delimiters. *)  java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
"thelemma "False   java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
 ( fns = . output) ListPair )of
ME end_delim = extract_delimitedbegin_delim,end_delim output
  | _ = ")

fun known_failures =
val  vampire
| find_first( (, pattern >., likelydueto axioms \sorrydlemmas
  |v  

fun|     =zjava.lang.StringIndexOutOfBoundsException: Range [14, 15) out of bounds for length 14
  let
     =|  
=  output

(s=java.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 45
      _  )=>("
 _ ProofUnparsable",java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
    |
" ( )
    |res ",aybeUnprovable java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
     tstplike_proof ) tstplike_proofNONE
     end_delim "then

 atp_step_namestringtail

_atp_steps1  (s2)= s2

val ="java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29

fun vampire_step_name_ord        |NONE ="")
   let valq =  fstpin
  |NONE>""java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
       form "fN" whereNisjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
(case  (.fromString  ( ( vampire_fact_prefix) q of
      funstring_of_atp_failure   Problemmaybe"
    | (SOMEcaseapply2tp_failureUnprovable =" unprovable"
    | (NONE    ) >  (,end_delim) java.lang.StringIndexOutOfBoundsException: Index 91 out of bounds for length 91
    |java.lang.StringIndexOutOfBoundsException: Range [5, 2) out of bounds for length 62
  end

type fun extract_known_atp_failure known_failuresunparsable

type 'a atp_proof Derived lemma "alse" from_lemmas ^

(**** PARSING OF TSTP FORMAT ****)

(* Strings enclosed in single quotes (e.g., file names), identifiers possibly starting
   with "$" and possibly with "!" in them. *)

valscan_general_id
  $' - .repeat ~$"" - $ ' > java.lang.StringIndexOutOfBoundsException: Range [2, 0) out of bounds for length 0
|  repeat($$" -Scan.Symbol.is_letdig>>op o implode)
    -- Scan.optional (Scan.repeatval       " of "
    >> op ^

fun   | string_of_atp =  output
let
    fun skip _ accum [] = (accum, [])
       skip accum ssas:: ss)=
        if (s = "," orelse s = ".") andalso n (_,SOMEProofIncomplete = ", | string_of_atp_failure (UnknownError ) =
          (ccum ss)
        else if member (op =) [")""]"] s then
iff n =0then(accum ss else  ( -)s: accum'
        else if member (op =) ["(""["] s then
          skip (n + 1) (java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 21
else
          skip n (s :: accum       ( tail)java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
  intailjava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
> implode x
  end
and skip_terms x = (skip_term ::: 

datatype source =
          | NONE =")
 Inference_Sourceof * 
| Introduced_Source of string
|java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

val dummy_phiend
valdummy_atypel extract_tstplike_proofoutputjava.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42

(* "skip_term" is there to cope with Waldmeister nonsense such as "theory(equality)". *)  known_failures =
java.lang.StringIndexOutOfBoundsException: Range [19, 3) out of bounds for length 24
parse_inference_source> snd
   || scan_general_id --let  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
let
  (Scan.repeats (Scan.option ($java.lang.StringIndexOutOfBoundsException: Range [7, 4) out of bounds for length 75
 filter_out( op )theory)
and in
  (Scan.this_string  (( , )f
    (_ SOMEProofIncomplete= ",NONE)
-| Scan     --| Scan.option  q)
and parse_inference_source x =
(can inference|-$ ( |-  end
   -|  -|  $  SOME( ( verboseoutput)java.lang.StringIndexOutOfBoundsException: Index 75 out of bounds for length 75
   -- parse_dependenciesjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
and parse_introduced_source x =
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
   - .option$ , | ) --| $")x
andparse_define_source  ( )(, )=s1s2
(.  (Scan.this_string
andarse_source 
  (parse_file_source >> File_Source >> SOME
parse_inference_source  >>
   (* The" is ' , java.lang.StringIndexOutOfBoundsException: Index 95 out of bounds for length 95
|   >java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
| >fn   Inference_Source" s](
||skip_termONE > LESS

|(, _ = java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31

  x=scan_general_id           )
and   java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

fun parse_type elseifjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
   w
    valelse
        fn_ )=
    || (scan_general_id -- Scan.optional ($$ "{" |-- parse_classes --| $$ "}") [])
        -- Scan.optional ($$ "(" |-- parse_types --| $$ ")") []
       >> AType)
   -- Scan.option (($$ tptp_app || $$ tptp_fun_type || $$ tptp_product_type) -- parse_type)
  >> (fn (a, NONE) => a
       | (a, SOME (bin_op, b)) =>
         if bin_op = tptp_app then
           (case a of
             AType (s_clss, tys) => AType (s_clss, tys @ [b])
           | _ => raise UNRECOGNIZED_ATP_PROOF ())
         else if bin_op = tptp_fun_type then
           AFun (a, b)
         else if bin_op = tptp_product_type then
           AType ((tptp_product_type, []), [a, b])
         else
           raise Fail "impossible case")) x
and parse_types x =
  (parse_type ::: Scan.repeat ($$ "," |-- parse_type)) x

(* We currently half ignore types. *)

fun    "[shen
  (   ) :)ss
        java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
| >  >  op)t)java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
   java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
|$ "-
    o*java.lang.StringIndexOutOfBoundsException: Range [39, 40) out of bounds for length 39
       .$<-  |$" java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 15
> fn- - $"-$)"java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
       if  =(  )
          (  ) )-|$ ) 
          java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
A  (s) ))x
and    | -  >) 
and java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
-  >) 
 parse_fol_termsx=(java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 25

fun parse_fol_atom| >  efine_Source   -Scan ( ,-java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
  parse_fol_term
    Scan.option parse_inference_source
> fn,   >> (fn (u1, NONE> fn >  " s))(* for E *)
        |-|skip_term  ,- - $,-  [
          AAtom  -|$] - $) x

(* TPTP formulas are fully parenthesized, so we don't need to worry about operator precedence. *)fargs (arg  => ATerm ((tptp_app, []), [f, arg])) args f
fun parse_fol_literal parse_source=
  (. $ ) >)
      --|  >Inference_Source java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
| parse_fol_quantified_formula
| parse_fol_atom
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0
 x
    x= java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
-Scan (. 
                    
                    ||$ (-parse_type $"
| . tptp_if
                    || $$ tptp_or
||$                      - $"|-skip_terms- $""-|$": -java.lang.StringIndexOutOfBoundsException: Index 100 out of bounds for length 100

        | (    || (scan_general_idScan       Scan $ "- )]java.lang.StringIndexOutOfBoundsException: Index 82 out of bounds for length 82
-Scanoption   |$  |$-N) 
          |aSOME,)>
          else if c = tptp_not_iff then           else if c = tptp_not_iff then mk_anotifbin_op  ifbin_op=java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
 if   java.lang.StringIndexOutOfBoundsException: Range [44, 45) out of bounds for length 44
           if    phi1
          elseifc    a,)
else  " )java.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 48
and and parse_typesraise " ) x
  (($$ tptp_forall >
   --| $$   xjava.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
   >(    ( )]=if     java.lang.StringIndexOutOfBoundsException: Index 94 out of bounds for length 94

  java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
ource-option"-java.lang.StringIndexOutOfBoundsException: Range [79, 78) out of bounds for length 85

val waldmeister_conjecture_name = "conjecture_1- option( | )

   tm1java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
let
fun (java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 96
SOME)=
        if typ1 <>  parse_fol_arg-        Scanoptional$" --parse_types -| >)]
       java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
letal lin
            SOME
            do_term_pair java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
            |> ((parse_fol_arg-ScanScan(. ( )-$ -)
| ONENONE
        |u1  neg))=java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
    
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
          end
|do_term_pairATerm(,)  ATerm(,,)(subst
        (case apply2 u1SOMEneg))=
          (,)pnot>lengthjava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
|
            |parse_fol_atom
           NONE=
  d x=
else
| arse_fol_quantified_formula
           java.lang.StringIndexOutOfBoundsException: Range [15, 1) out of bounds for length 20
SOMEsubst. java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
          else
            NONE
        | _ => NONE| $)-)
  a java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
                       else Kif tptp_implies  phi1java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
      | do_term_pair _ _               tptp_not_iff  mk_aconn hi1           .
  in
    SOME                  phi1|$  -parse_fol_formula
end   >( (   mpossible quote 

fun is_same_formula comm subst (          if c = tptp_implies then mk_aconn  ($tptp_forall>  |$ AIffphi1
th java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
    >( (,) )=AQuant    c   mk_aconn java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
   comm A c1phis1AConnc2 )java.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 72
    c1 
|  substelseraise (    c)java.lang.StringIndexOutOfBoundsException: Index 66 out of bounds for length 66
    (($$ tptp_forall  |$$ tptp_exists>  )
    comm-$: 
          typ1typ2 length   then
    ____ java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35

 >   > n length -ls1)
           >)
|java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

fun find_formula_in_problemelseK)
  java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
  #> map_filter (matching_formula_line_identifier phi)
java.lang.StringIndexOutOfBoundsException: Range [16, 2) out of bounds for length 22
  #> the_default []

fun commute_eq           .lookupopsubstof
_= ""

   >
ljava.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
  |role_of_tptp_stringelse)
|role_of_tptp_stringSOME)java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
  |SOMEjava.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
  | role_of_tptp_string| >)>iflength=
  | plain=java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
| =
  | role_of_tptp_string _ = Unknown

fun parse_one_in_list xs =
|java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4

val tptp_literal_binary_opsjava.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
valtptp_nonliteral_binary_ops
  [tptp_andq1 2    ength java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51

fun parse_literal_binary_op x =
  (parse_one_in_list tptp_literal_binary_ops
   >( = if    equal )x

fun parse_nonliteral_binary_op x =
  (parse_one_in_list tptp_nonliteral_binary_ops
   >> (fn c     comm AAtomtm1 (equaltystm11]tm2java.lang.StringIndexOutOfBoundsException: Range [98, 99) out of bounds for length 98

val  =
parse_one_in_list true )java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25

val parse_hol_quantifier =
  > ' java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61

funmk_ho_of_fo_quantjava.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
if tptp_foralltptp_ho_forall
  else            else # try(  o)
  else if  > ]
else q=tptp_hilbert_thetptp_hilbert_the
  else raise Fail| commute_eq_=raiseFailexpected"

funremove_hol_app java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
ifs=  then
 of
  ""args1 args2
| (,phi ): > AAbs ( )java.lang.StringIndexOutOfBoundsException: Range [76, 75) out of bounds for length 83
    else
  | plain java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
,) )java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
    AAbs ((var, remove_hol_app

fun parse_hol_typed_var  ,]
  (  =
     -Scan Scanjava.lang.StringIndexOutOfBoundsException: Range [38, 5) out of bounds for length 5
| $(|- - $)x

fun parse_simple_hol_term>fn =" (,_ >(,) @ )
   -java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    (      ptp_equal"" )java.lang.StringIndexOutOfBoundsException: Range [56, 57) out of bounds for length 56
>fn s,)>
          fold_rev
            (fn (var, ty) => fn r =>
 tptp_ho_foralltptp_ho_exists,]
( java.lang.StringIndexOutOfBoundsException: Range [0, 1) out of bounds for length 0
                      mk_app (q |is_same_formula   false


            ys t)
  | Scanq  then
  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [58, 52) out of bounds for length 65
  || parse_hol_quantifier         then
  |$ ( -  - $)
|Scantptp_not>
 > java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
  ||   | remove_hol_app (AAbs ((var,)
and x
  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
>fn  definition=Definition
and      -Scan(  "" 
parse_applied_hol_term.parse_literal_binary_op )
    >> (fn (t1, c_ti_s) =>
          fold (fn (c, ti) => fnjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
   
           
> ( (, c_ti_s >
          java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
            val cs = mapjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
val    [,t]
            val (tis_but_k,java.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 72
          java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
parse_one_in_list
ral_id-.ption$java.lang.StringIndexOutOfBoundsException: Range [54, 53) out of bounds for length 69


funtptp_forall,tptp_lambda,java.lang.StringIndexOutOfBoundsException: Index 99 out of bounds for length 99

fun parse_tstp_hol_line
Scanthis_string-  java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
  -- Symbol. fn,tis>fold  => left> leftti  t1)x
     (if full then parse_hol_formula || skip_term >>  = and  java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
     -- fun  ATerms y,)java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
- $.
        (argsjava.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
      
valrole>( t1)>
val name,role ,)java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
  of
SOMEFile_Source_SOME)java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
ifrole  then
              (numin
    AAbs(,) ) java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
(num [],phi,", ]
          |java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
          SOME() = num] ,  []
--  . (. ""java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
          |funparse_hol_formula  parse_hol_term#>remove_hol_app>AAtomx
      in( -($"["|- parse_hol_typed_var-- $ "]" -|
        name' phi, , (rpair[]) deps)java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55
      java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24

fun     - --$ ""
java.lang.StringIndexOutOfBoundsException: Index 93 out of bounds for length 93
)-$$(
|- |$""- .can_ascii_id-|$ ,"
    - (if fullthen          (, ,'ruledeps) =
    - SOME (ile_Source(, )>
   >> (fn (((num, role0), phi), src) =>
          let
             role= then
              (num,map fst parse_applied_hol_term x 
              (* Waldmeister isn't exactly helping. *)
              case of
                SOME (File_Source (_, SOME  =
                if    
                   (case            (Inference_Source>nt1,)=>
(              SOMEIntroduced_Sourcerule >(,] phiDefinition rule [)
                         Isar *)
                     (,phi)=>
           (num, [])
                      phi       in

                 
(,)phijava.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
                 role, "", [])
              | eral_id-|$ , -Symbol -|$ ""
((um  fst phi),phi,, " ])
              | SOME (Inference_Source (rule, deps)) => (((num, []), phi), role, rule, deps    -parse_tstp_extra_arguments--  (.this_stringtptp_thf- $")-- java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
              | SOME (             role=role_of_tptp_string
                      |skip_term else > )
|  >(, num ) , ", [)

            fun mk_step () = (name-  .
          in
            [(case role' of
Definition(  java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
(  of
                 AAtom (ATerm (("equal", _), _)                (f java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
                  (* Vampire's equality proxy axiom *)
                  (name, Definition phi,rulemaprpair[)deps
               | _ => mk_step ())
             |            
end

full java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
problem
  || parse_tstp_hol_line full problem

(**** PARSING OF SPASS OUTPUT ****)

*  returns  ofthe "." Wey.*
val   -|$ . -end

parse_spass_annotations
|.tptp_tff  "

(* We ignore the stars and the pluses that follow literals in SPASS's output. *)

                 , ",[)

fun              SOME ruledeps=(num))     (, ) )  >
  |val =role_of_tptp_stringjava.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48

fun parse_horn_clause x =
  (Scan.repeat parse_decorated_atom --              case of
--.repeatparse_decorated_atom-$ "-| >
--Scan parse_decorated_atom
   >  |  (, num phi," ]java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57

val parse_spass_debug =
  Scanoption($ ""                      s )>

(* Syntax: <num>[0:<inference><annotations>] <atoms> || <atoms> -> <atoms> .
           derived from formulae <ident>* *)

fun parse_spass_line x =
  (parse_spass_debug                =>
     -- Symbol.scan_ascii_id -- (casephiof
     -- ScanAAtom
                     *' *
   >(((,rule,,[
          [((num, these names  > )

fun core_inference inf(,  fst phi)  end

fun parse_line full local_name problem =
p full
elseparse_tstp_line = ( )phijava.lang.StringIndexOutOfBoundsException: Range [68, 67) out of bounds for length 100

fun core_of_agsyhol_proof s java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  (split_lines java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
"he problem java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
_:proof_term   (unprefix conj "< ">proof_term
  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

fun clean_up_dependencies _ [] = []
  | clean_up_dependencies seen ((name, role, u, rule, deps) :: steps)                  , , , , ] )
    (name, rolejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    clean_up_dependencies (name :: seen) steps

fun clean_up_atp_proof_dependencies proof funparse_horn_clause=

fun map_term_names_in_atp_proof f =

fun ( (,clss,))=AType( ,map),  map_type)
      | map_type (AFun (ty>( oapfst
      |val =

    fun map_term( (sjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
      | map_termvalfun  java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 24
  ), )

fun( qxs)   (   f ,map_formulajava.lang.StringIndexOutOfBoundsException: Index 89 out of bounds for length 89
      | map_formula (AConn (c, phis)) => fn((, rule(* We ignore the stars and the pluses that follow literals in SPASS's output. *)
 java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 50

    fun map_step (name, role, phi
  in
    map  s
  

fun nasty_name  Scan parse_decorated_atom| | -|$ |java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57


 (.is_emptypool |s(,  ,): java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71

fun string_of_list f xs = enclose seensteps

fun

   gname, names
  et
    val name'-.scan_ascii_id-- -|$ ] -parse_horn_clause -- $"java.lang.StringIndexOutOfBoundsException: Index 98 out of bounds for length 98
roletptp_string_of_role
    val x'
val'= java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
names
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 4
    "
  end

fun parse_prooff enclose  =
  strip_spaces_except_between_idents
  #> raw_explode
  #> Scan.error (!! (fnstring_of_atp_step_n (s,ss ="" " string_of_listI ss ")
       
  #      f name  java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 54

funjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  | atp_proof_of_tstplike_proof full local_prover problem  val ' java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
val     (: seen java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
"( ^ ' ^"  role^ ", x'", ^java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    | NONE=>
      tstp
       parse_prooffulllocal_name  =
      | java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

val e_symbol_prefixes = ["esk let

fun exists_name_in_term pred =
  let
    funex_nameATerm(,_java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 72
       x_name (AAbs((,), tms)=map_typeAFun(ty,') (map_typety map_type)
  in ex_name end

fun exists_name_in_formula pred phi =
  formula_fold NONE (fn _ => fn tm => fn ex =    funmap_termtstplike_proof ptstp=

fun exists_symbol_in_formula  =
  exists_name_in_formula (fn s => exists (fntstp

fun  p  =
  let
    (* Truncate too large output to avoid memory issues. *)
      |map_formula (AConn (c, phis))  AConn (java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    val output =
      if String.size funexists_name_in_term  =AAtom tjava.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
        fun map_stepname,phi,) ( role,  phi  depsjava.lang.StringIndexOutOfBoundsException: Index 90 out of bounds for length 90
      i   in ex_name
        output

    fun fold_extract accumexists_name_in_formulapred
      fold_extractpool Symtabp   
        
           n
if.  0"linethen
            (* This pattern occurs in the "info()" comment of an E clause that directly emerges from
               the conjecture. We don't want to tell the user that they can prove "P" by assuming
               "P". *)

accum
          else
let
               clean_line=
                (case space_explode "#" line of
                  [] => ""
                | before_hash :: _ =|  (ine)=
            in
               (tp  java.lang.StringIndexOutOfBoundsException: Index 77 out of bounds for length 77
                    val names' = string_of_liststring_of_atp_step_nameline
                if local_prover =    "("^name^ "" patternin")"comment  clause e 
                  fold_extract accum lines"Pe
                
                  java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
              | _ => fold_extract = "
            end
        else
          fold_extract accum lines
   atp_proof_of_tstplike_proof__" ]
    fold_extract [] (split_lines output)
  end


96%


¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.17Angebot  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.