TSTP Solution File: GRA010+1 by Z3---4.8.9.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Z3---4.8.9.0
% Problem  : GRA010+1 : TPTP v8.1.0. Bugfixed v3.2.0.
% Transfm  : none
% Format   : tptp
% Command  : z3_tptp -proof -model -t:%d -file:%s

% Computer : n020.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Fri Sep 16 20:47:28 EDT 2022

% Result   : Theorem 0.16s 0.36s
% Output   : Proof 0.16s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :    3
%            Number of leaves      :   12
% Syntax   : Number of formulae    :   17 (   2 unt;   8 typ;   0 def)
%            Number of atoms       :  109 (  15 equ)
%            Maximal formula atoms :   14 (  12 avg)
%            Number of connectives :  117 (  24   ~;  19   |;  51   &)
%                                         (   6 <=>;  17  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   16 (  11 avg)
%            Maximal term depth    :    2 (   1 avg)
%            Number of FOOLs       :    7 (   7 fml;   0 var)
%            Number of types       :    2 (   0 usr)
%            Number of type conns  :   12 (   5   >;   7   *;   0   +;   0  <<)
%            Number of predicates  :   10 (   8 usr;   2 prp; 0-3 aty)
%            Number of functors    :    3 (   3 usr;   2 con; 0-2 aty)
%            Number of variables   :   81 (  61   !;  17   ?;  81   :)

% Comments : 
%------------------------------------------------------------------------------
tff(number_of_in_type,type,
    number_of_in: ( $i * $i ) > $i ).

tff(triangles_type,type,
    triangles: $i ).

tff(sequential_pairs_type,type,
    sequential_pairs: $i ).

tff(triangle_type,type,
    triangle: ( $i * $i * $i ) > $o ).

tff(sequential_type,type,
    sequential: ( $i * $i ) > $o ).

tff(on_path_type,type,
    on_path: ( $i * $i ) > $o ).

tff(path_type,type,
    path: ( $i * $i * $i ) > $o ).

tff(complete_type,type,
    complete: $o ).

tff(1,plain,
    ( ~ ( complete
       => ! [P: $i,V1: $i,V2: $i] :
            ( ( path(V1,V2,P)
              & ! [E1: $i,E2: $i] :
                  ( ( on_path(E1,P)
                    & on_path(E2,P)
                    & sequential(E1,E2) )
                 => ? [E3: $i] : triangle(E1,E2,E3) ) )
           => ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ) )
  <=> ~ ( ~ complete
        | ! [P: $i,V1: $i,V2: $i] :
            ( ~ ( path(V1,V2,P)
                & ! [E1: $i,E2: $i] :
                    ( ~ ( on_path(E1,P)
                        & on_path(E2,P)
                        & sequential(E1,E2) )
                    | ? [E3: $i] : triangle(E1,E2,E3) ) )
            | ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(2,axiom,
    ~ ( complete
     => ! [P: $i,V1: $i,V2: $i] :
          ( ( path(V1,V2,P)
            & ! [E1: $i,E2: $i] :
                ( ( on_path(E1,P)
                  & on_path(E2,P)
                  & sequential(E1,E2) )
               => ? [E3: $i] : triangle(E1,E2,E3) ) )
         => ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',complete_means_sequential_pairs_and_triangles) ).

tff(3,plain,
    ~ ( ~ complete
      | ! [P: $i,V1: $i,V2: $i] :
          ( ~ ( path(V1,V2,P)
              & ! [E1: $i,E2: $i] :
                  ( ~ ( on_path(E1,P)
                      & on_path(E2,P)
                      & sequential(E1,E2) )
                  | ? [E3: $i] : triangle(E1,E2,E3) ) )
          | ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ) ),
    inference(modus_ponens,[status(thm)],[2,1]) ).

tff(4,plain,
    ~ ! [P: $i,V1: $i,V2: $i] :
        ( ~ ( path(V1,V2,P)
            & ! [E1: $i,E2: $i] :
                ( ~ ( on_path(E1,P)
                    & on_path(E2,P)
                    & sequential(E1,E2) )
                | ? [E3: $i] : triangle(E1,E2,E3) ) )
        | ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ),
    inference(or_elim,[status(thm)],[3]) ).

tff(5,plain,
    ^ [P: $i,V1: $i,V2: $i] :
      trans(
        monotonicity(
          rewrite(
            ( ( path(V1,V2,P)
              & ! [E1: $i,E2: $i] :
                  ( ( on_path(E1,P)
                    & on_path(E2,P)
                    & sequential(E1,E2) )
                 => ? [E3: $i] : triangle(E1,E2,E3) ) )
          <=> ( path(V1,V2,P)
              & ! [E1: $i,E2: $i] :
                  ( ~ ( on_path(E1,P)
                      & on_path(E2,P)
                      & sequential(E1,E2) )
                  | ? [E3: $i] : triangle(E1,E2,E3) ) ) )),
          ( ( ( path(V1,V2,P)
              & ! [E1: $i,E2: $i] :
                  ( ( on_path(E1,P)
                    & on_path(E2,P)
                    & sequential(E1,E2) )
                 => ? [E3: $i] : triangle(E1,E2,E3) ) )
           => ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) )
        <=> ( ( path(V1,V2,P)
              & ! [E1: $i,E2: $i] :
                  ( ~ ( on_path(E1,P)
                      & on_path(E2,P)
                      & sequential(E1,E2) )
                  | ? [E3: $i] : triangle(E1,E2,E3) ) )
           => ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ) )),
        rewrite(
          ( ( ( path(V1,V2,P)
              & ! [E1: $i,E2: $i] :
                  ( ~ ( on_path(E1,P)
                      & on_path(E2,P)
                      & sequential(E1,E2) )
                  | ? [E3: $i] : triangle(E1,E2,E3) ) )
           => ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) )
        <=> ( ~ ( path(V1,V2,P)
                & ! [E1: $i,E2: $i] :
                    ( ~ ( on_path(E1,P)
                        & on_path(E2,P)
                        & sequential(E1,E2) )
                    | ? [E3: $i] : triangle(E1,E2,E3) ) )
            | ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ) )),
        ( ( ( path(V1,V2,P)
            & ! [E1: $i,E2: $i] :
                ( ( on_path(E1,P)
                  & on_path(E2,P)
                  & sequential(E1,E2) )
               => ? [E3: $i] : triangle(E1,E2,E3) ) )
         => ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) )
      <=> ( ~ ( path(V1,V2,P)
              & ! [E1: $i,E2: $i] :
                  ( ~ ( on_path(E1,P)
                      & on_path(E2,P)
                      & sequential(E1,E2) )
                  | ? [E3: $i] : triangle(E1,E2,E3) ) )
          | ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ) )),
    inference(bind,[status(th)],]) ).

tff(6,plain,
    ( ! [P: $i,V1: $i,V2: $i] :
        ( ( path(V1,V2,P)
          & ! [E1: $i,E2: $i] :
              ( ( on_path(E1,P)
                & on_path(E2,P)
                & sequential(E1,E2) )
             => ? [E3: $i] : triangle(E1,E2,E3) ) )
       => ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) )
  <=> ! [P: $i,V1: $i,V2: $i] :
        ( ~ ( path(V1,V2,P)
            & ! [E1: $i,E2: $i] :
                ( ~ ( on_path(E1,P)
                    & on_path(E2,P)
                    & sequential(E1,E2) )
                | ? [E3: $i] : triangle(E1,E2,E3) ) )
        | ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ) ),
    inference(quant_intro,[status(thm)],[5]) ).

tff(7,axiom,
    ! [P: $i,V1: $i,V2: $i] :
      ( ( path(V1,V2,P)
        & ! [E1: $i,E2: $i] :
            ( ( on_path(E1,P)
              & on_path(E2,P)
              & sequential(E1,E2) )
           => ? [E3: $i] : triangle(E1,E2,E3) ) )
     => ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',sequential_pairs_and_triangles) ).

tff(8,plain,
    ! [P: $i,V1: $i,V2: $i] :
      ( ~ ( path(V1,V2,P)
          & ! [E1: $i,E2: $i] :
              ( ~ ( on_path(E1,P)
                  & on_path(E2,P)
                  & sequential(E1,E2) )
              | ? [E3: $i] : triangle(E1,E2,E3) ) )
      | ( number_of_in(sequential_pairs,P) = number_of_in(triangles,P) ) ),
    inference(modus_ponens,[status(thm)],[7,6]) ).

tff(9,plain,
    $false,
    inference(unit_resolution,[status(thm)],[8,4]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.10  % Problem  : GRA010+1 : TPTP v8.1.0. Bugfixed v3.2.0.
% 0.00/0.10  % Command  : z3_tptp -proof -model -t:%d -file:%s
% 0.10/0.31  % Computer : n020.cluster.edu
% 0.10/0.31  % Model    : x86_64 x86_64
% 0.10/0.31  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.10/0.31  % Memory   : 8042.1875MB
% 0.10/0.31  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.10/0.31  % CPULimit : 300
% 0.10/0.31  % WCLimit  : 300
% 0.10/0.31  % DateTime : Wed Aug 31 13:24:45 EDT 2022
% 0.10/0.31  % CPUTime  : 
% 0.16/0.31  Z3tptp [4.8.9.0] (c) 2006-20**. Microsoft Corp.
% 0.16/0.31  Usage: tptp [options] [-file:]file
% 0.16/0.31    -h, -?       prints this message.
% 0.16/0.31    -smt2        print SMT-LIB2 benchmark.
% 0.16/0.31    -m, -model   generate model.
% 0.16/0.31    -p, -proof   generate proof.
% 0.16/0.31    -c, -core    generate unsat core of named formulas.
% 0.16/0.31    -st, -statistics display statistics.
% 0.16/0.31    -t:timeout   set timeout (in second).
% 0.16/0.31    -smt2status  display status in smt2 format instead of SZS.
% 0.16/0.31    -check_status check the status produced by Z3 against annotation in benchmark.
% 0.16/0.31    -<param>:<value> configuration parameter and value.
% 0.16/0.31    -o:<output-file> file to place output in.
% 0.16/0.36  % SZS status Theorem
% 0.16/0.36  % SZS output start Proof
% See solution above
%------------------------------------------------------------------------------