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

View Problem - Process Solution

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

% Computer : n021.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:29 EDT 2022

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