TSTP Solution File: SWC082-1 by Z3---4.8.9.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Z3---4.8.9.0
% Problem  : SWC082-1 : TPTP v8.1.0. Released v2.4.0.
% Transfm  : none
% Format   : tptp
% Command  : z3_tptp -proof -model -t:%d -file:%s

% Computer : n009.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 : Tue Sep 20 11:55:07 EDT 2022

% Result   : Unsatisfiable 0.17s 0.41s
% Output   : Proof 0.17s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :    9
%            Number of leaves      :   35
% Syntax   : Number of formulae    :   69 (  11 unt;   9 typ;   0 def)
%            Number of atoms       :  274 (   0 equ)
%            Maximal formula atoms :   16 (   4 avg)
%            Number of connectives :  392 ( 195   ~; 157   |;   0   &)
%                                         (  40 <=>;   0  =>;   0  <=;   0 <~>)
%            Maximal formula depth :    9 (   4 avg)
%            Maximal term depth    :    1 (   1 avg)
%            Number of FOOLs       :   17 (  17 fml;   0 var)
%            Number of types       :    2 (   0 usr)
%            Number of type conns  :    5 (   3   >;   2   *;   0   +;   0  <<)
%            Number of predicates  :   10 (   8 usr;   2 prp; 0-3 aty)
%            Number of functors    :    6 (   6 usr;   6 con; 0-0 aty)
%            Number of variables   :   21 (  18   !;   0   ?;  21   :)

% Comments : 
%------------------------------------------------------------------------------
tff(segmentP_type,type,
    segmentP: ( $i * $i ) > $o ).

tff(sk5_type,type,
    sk5: $i ).

tff(sk3_type,type,
    sk3: $i ).

tff(neq_type,type,
    neq: ( $i * $i ) > $o ).

tff(nil_type,type,
    nil: $i ).

tff(sk4_type,type,
    sk4: $i ).

tff(sk2_type,type,
    sk2: $i ).

tff(ssList_type,type,
    ssList: $i > $o ).

tff(sk1_type,type,
    sk1: $i ).

tff(1,plain,
    ( ( $false
      | segmentP(sk3,sk5) )
  <=> segmentP(sk3,sk5) ),
    inference(rewrite,[status(thm)],]) ).

tff(2,plain,
    ( ~ $true
  <=> $false ),
    inference(rewrite,[status(thm)],]) ).

tff(3,plain,
    ( neq(sk2,nil)
  <=> neq(sk4,nil) ),
    inference(rewrite,[status(thm)],]) ).

tff(4,plain,
    ( neq(sk2,nil)
  <=> neq(sk2,nil) ),
    inference(rewrite,[status(thm)],]) ).

tff(5,axiom,
    neq(sk2,nil),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',co1_7) ).

tff(6,plain,
    neq(sk2,nil),
    inference(modus_ponens,[status(thm)],[5,4]) ).

tff(7,plain,
    neq(sk4,nil),
    inference(modus_ponens,[status(thm)],[6,3]) ).

tff(8,plain,
    ( neq(sk4,nil)
  <=> $true ),
    inference(iff_true,[status(thm)],[7]) ).

tff(9,plain,
    ( ~ neq(sk4,nil)
  <=> ~ $true ),
    inference(monotonicity,[status(thm)],[8]) ).

tff(10,plain,
    ( ~ neq(sk4,nil)
  <=> $false ),
    inference(transitivity,[status(thm)],[9,2]) ).

tff(11,plain,
    ( ( ~ neq(sk4,nil)
      | segmentP(sk3,sk5) )
  <=> ( $false
      | segmentP(sk3,sk5) ) ),
    inference(monotonicity,[status(thm)],[10]) ).

tff(12,plain,
    ( ( ~ neq(sk4,nil)
      | segmentP(sk3,sk5) )
  <=> segmentP(sk3,sk5) ),
    inference(transitivity,[status(thm)],[11,1]) ).

tff(13,plain,
    ( ( ~ neq(sk4,nil)
      | segmentP(sk3,sk5) )
  <=> ( ~ neq(sk4,nil)
      | segmentP(sk3,sk5) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(14,plain,
    ( ( segmentP(sk3,sk5)
      | ~ neq(sk4,nil) )
  <=> ( ~ neq(sk4,nil)
      | segmentP(sk3,sk5) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(15,axiom,
    ( segmentP(sk3,sk5)
    | ~ neq(sk4,nil) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',co1_13) ).

tff(16,plain,
    ( ~ neq(sk4,nil)
    | segmentP(sk3,sk5) ),
    inference(modus_ponens,[status(thm)],[15,14]) ).

tff(17,plain,
    ( ~ neq(sk4,nil)
    | segmentP(sk3,sk5) ),
    inference(modus_ponens,[status(thm)],[16,13]) ).

tff(18,plain,
    segmentP(sk3,sk5),
    inference(modus_ponens,[status(thm)],[17,12]) ).

tff(19,plain,
    ( ( $false
      | segmentP(sk4,sk5) )
  <=> segmentP(sk4,sk5) ),
    inference(rewrite,[status(thm)],]) ).

tff(20,plain,
    ( ( ~ neq(sk4,nil)
      | segmentP(sk4,sk5) )
  <=> ( $false
      | segmentP(sk4,sk5) ) ),
    inference(monotonicity,[status(thm)],[10]) ).

tff(21,plain,
    ( ( ~ neq(sk4,nil)
      | segmentP(sk4,sk5) )
  <=> segmentP(sk4,sk5) ),
    inference(transitivity,[status(thm)],[20,19]) ).

tff(22,plain,
    ( ( ~ neq(sk4,nil)
      | segmentP(sk4,sk5) )
  <=> ( ~ neq(sk4,nil)
      | segmentP(sk4,sk5) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(23,plain,
    ( ( segmentP(sk4,sk5)
      | ~ neq(sk4,nil) )
  <=> ( ~ neq(sk4,nil)
      | segmentP(sk4,sk5) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(24,axiom,
    ( segmentP(sk4,sk5)
    | ~ neq(sk4,nil) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',co1_12) ).

tff(25,plain,
    ( ~ neq(sk4,nil)
    | segmentP(sk4,sk5) ),
    inference(modus_ponens,[status(thm)],[24,23]) ).

tff(26,plain,
    ( ~ neq(sk4,nil)
    | segmentP(sk4,sk5) ),
    inference(modus_ponens,[status(thm)],[25,22]) ).

tff(27,plain,
    segmentP(sk4,sk5),
    inference(modus_ponens,[status(thm)],[26,21]) ).

tff(28,plain,
    ( ( $false
      | neq(sk5,nil) )
  <=> neq(sk5,nil) ),
    inference(rewrite,[status(thm)],]) ).

tff(29,plain,
    ( ( ~ neq(sk4,nil)
      | neq(sk5,nil) )
  <=> ( $false
      | neq(sk5,nil) ) ),
    inference(monotonicity,[status(thm)],[10]) ).

tff(30,plain,
    ( ( ~ neq(sk4,nil)
      | neq(sk5,nil) )
  <=> neq(sk5,nil) ),
    inference(transitivity,[status(thm)],[29,28]) ).

tff(31,plain,
    ( ( ~ neq(sk4,nil)
      | neq(sk5,nil) )
  <=> ( ~ neq(sk4,nil)
      | neq(sk5,nil) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(32,plain,
    ( ( neq(sk5,nil)
      | ~ neq(sk4,nil) )
  <=> ( ~ neq(sk4,nil)
      | neq(sk5,nil) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(33,axiom,
    ( neq(sk5,nil)
    | ~ neq(sk4,nil) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',co1_11) ).

tff(34,plain,
    ( ~ neq(sk4,nil)
    | neq(sk5,nil) ),
    inference(modus_ponens,[status(thm)],[33,32]) ).

tff(35,plain,
    ( ~ neq(sk4,nil)
    | neq(sk5,nil) ),
    inference(modus_ponens,[status(thm)],[34,31]) ).

tff(36,plain,
    neq(sk5,nil),
    inference(modus_ponens,[status(thm)],[35,30]) ).

tff(37,plain,
    ( ( ssList(sk5)
      | $false )
  <=> ssList(sk5) ),
    inference(rewrite,[status(thm)],]) ).

tff(38,plain,
    ( ( ssList(sk5)
      | ~ neq(sk4,nil) )
  <=> ( ssList(sk5)
      | $false ) ),
    inference(monotonicity,[status(thm)],[10]) ).

tff(39,plain,
    ( ( ssList(sk5)
      | ~ neq(sk4,nil) )
  <=> ssList(sk5) ),
    inference(transitivity,[status(thm)],[38,37]) ).

tff(40,plain,
    ( ( ssList(sk5)
      | ~ neq(sk4,nil) )
  <=> ( ssList(sk5)
      | ~ neq(sk4,nil) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(41,axiom,
    ( ssList(sk5)
    | ~ neq(sk4,nil) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',co1_10) ).

tff(42,plain,
    ( ssList(sk5)
    | ~ neq(sk4,nil) ),
    inference(modus_ponens,[status(thm)],[41,40]) ).

tff(43,plain,
    ssList(sk5),
    inference(modus_ponens,[status(thm)],[42,39]) ).

tff(44,plain,
    ^ [A: $i] :
      refl(
        ( ( ~ ssList(A)
          | ~ neq(A,nil)
          | ~ segmentP(sk4,A)
          | ~ segmentP(sk3,A) )
      <=> ( ~ ssList(A)
          | ~ neq(A,nil)
          | ~ segmentP(sk4,A)
          | ~ segmentP(sk3,A) ) )),
    inference(bind,[status(th)],]) ).

tff(45,plain,
    ( ! [A: $i] :
        ( ~ ssList(A)
        | ~ neq(A,nil)
        | ~ segmentP(sk4,A)
        | ~ segmentP(sk3,A) )
  <=> ! [A: $i] :
        ( ~ ssList(A)
        | ~ neq(A,nil)
        | ~ segmentP(sk4,A)
        | ~ segmentP(sk3,A) ) ),
    inference(quant_intro,[status(thm)],[44]) ).

tff(46,plain,
    ^ [A: $i] :
      trans(
        monotonicity(
          rewrite(
            ( ~ segmentP(sk2,A)
          <=> ~ segmentP(sk4,A) )),
          rewrite(
            ( ~ segmentP(sk1,A)
          <=> ~ segmentP(sk3,A) )),
          ( ( ~ ssList(A)
            | ~ segmentP(sk2,A)
            | ~ neq(A,nil)
            | ~ segmentP(sk1,A) )
        <=> ( ~ ssList(A)
            | ~ segmentP(sk4,A)
            | ~ neq(A,nil)
            | ~ segmentP(sk3,A) ) )),
        rewrite(
          ( ( ~ ssList(A)
            | ~ segmentP(sk4,A)
            | ~ neq(A,nil)
            | ~ segmentP(sk3,A) )
        <=> ( ~ ssList(A)
            | ~ neq(A,nil)
            | ~ segmentP(sk4,A)
            | ~ segmentP(sk3,A) ) )),
        ( ( ~ ssList(A)
          | ~ segmentP(sk2,A)
          | ~ neq(A,nil)
          | ~ segmentP(sk1,A) )
      <=> ( ~ ssList(A)
          | ~ neq(A,nil)
          | ~ segmentP(sk4,A)
          | ~ segmentP(sk3,A) ) )),
    inference(bind,[status(th)],]) ).

tff(47,plain,
    ( ! [A: $i] :
        ( ~ ssList(A)
        | ~ segmentP(sk2,A)
        | ~ neq(A,nil)
        | ~ segmentP(sk1,A) )
  <=> ! [A: $i] :
        ( ~ ssList(A)
        | ~ neq(A,nil)
        | ~ segmentP(sk4,A)
        | ~ segmentP(sk3,A) ) ),
    inference(quant_intro,[status(thm)],[46]) ).

tff(48,plain,
    ( ! [A: $i] :
        ( ~ ssList(A)
        | ~ segmentP(sk2,A)
        | ~ neq(A,nil)
        | ~ segmentP(sk1,A) )
  <=> ! [A: $i] :
        ( ~ ssList(A)
        | ~ segmentP(sk2,A)
        | ~ neq(A,nil)
        | ~ segmentP(sk1,A) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(49,plain,
    ^ [A: $i] :
      trans(
        monotonicity(
          rewrite(
            ( ( ~ ssList(A)
              | ~ neq(A,nil)
              | ~ segmentP(sk2,A) )
          <=> ( ~ ssList(A)
              | ~ segmentP(sk2,A)
              | ~ neq(A,nil) ) )),
          ( ( ~ ssList(A)
            | ~ neq(A,nil)
            | ~ segmentP(sk2,A)
            | ~ segmentP(sk1,A) )
        <=> ( ~ ssList(A)
            | ~ segmentP(sk2,A)
            | ~ neq(A,nil)
            | ~ segmentP(sk1,A) ) )),
        rewrite(
          ( ( ~ ssList(A)
            | ~ segmentP(sk2,A)
            | ~ neq(A,nil)
            | ~ segmentP(sk1,A) )
        <=> ( ~ ssList(A)
            | ~ segmentP(sk2,A)
            | ~ neq(A,nil)
            | ~ segmentP(sk1,A) ) )),
        ( ( ~ ssList(A)
          | ~ neq(A,nil)
          | ~ segmentP(sk2,A)
          | ~ segmentP(sk1,A) )
      <=> ( ~ ssList(A)
          | ~ segmentP(sk2,A)
          | ~ neq(A,nil)
          | ~ segmentP(sk1,A) ) )),
    inference(bind,[status(th)],]) ).

tff(50,plain,
    ( ! [A: $i] :
        ( ~ ssList(A)
        | ~ neq(A,nil)
        | ~ segmentP(sk2,A)
        | ~ segmentP(sk1,A) )
  <=> ! [A: $i] :
        ( ~ ssList(A)
        | ~ segmentP(sk2,A)
        | ~ neq(A,nil)
        | ~ segmentP(sk1,A) ) ),
    inference(quant_intro,[status(thm)],[49]) ).

tff(51,axiom,
    ! [A: $i] :
      ( ~ ssList(A)
      | ~ neq(A,nil)
      | ~ segmentP(sk2,A)
      | ~ segmentP(sk1,A) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',co1_8) ).

tff(52,plain,
    ! [A: $i] :
      ( ~ ssList(A)
      | ~ segmentP(sk2,A)
      | ~ neq(A,nil)
      | ~ segmentP(sk1,A) ),
    inference(modus_ponens,[status(thm)],[51,50]) ).

tff(53,plain,
    ! [A: $i] :
      ( ~ ssList(A)
      | ~ segmentP(sk2,A)
      | ~ neq(A,nil)
      | ~ segmentP(sk1,A) ),
    inference(modus_ponens,[status(thm)],[52,48]) ).

tff(54,plain,
    ! [A: $i] :
      ( ~ ssList(A)
      | ~ neq(A,nil)
      | ~ segmentP(sk4,A)
      | ~ segmentP(sk3,A) ),
    inference(modus_ponens,[status(thm)],[53,47]) ).

tff(55,plain,
    ! [A: $i] :
      ( ~ ssList(A)
      | ~ neq(A,nil)
      | ~ segmentP(sk4,A)
      | ~ segmentP(sk3,A) ),
    inference(skolemize,[status(sab)],[54]) ).

tff(56,plain,
    ! [A: $i] :
      ( ~ ssList(A)
      | ~ neq(A,nil)
      | ~ segmentP(sk4,A)
      | ~ segmentP(sk3,A) ),
    inference(modus_ponens,[status(thm)],[55,45]) ).

tff(57,plain,
    ( ( ~ ! [A: $i] :
            ( ~ ssList(A)
            | ~ neq(A,nil)
            | ~ segmentP(sk4,A)
            | ~ segmentP(sk3,A) )
      | ~ ssList(sk5)
      | ~ neq(sk5,nil)
      | ~ segmentP(sk4,sk5)
      | ~ segmentP(sk3,sk5) )
  <=> ( ~ ! [A: $i] :
            ( ~ ssList(A)
            | ~ neq(A,nil)
            | ~ segmentP(sk4,A)
            | ~ segmentP(sk3,A) )
      | ~ ssList(sk5)
      | ~ neq(sk5,nil)
      | ~ segmentP(sk4,sk5)
      | ~ segmentP(sk3,sk5) ) ),
    inference(rewrite,[status(thm)],]) ).

tff(58,plain,
    ( ~ ! [A: $i] :
          ( ~ ssList(A)
          | ~ neq(A,nil)
          | ~ segmentP(sk4,A)
          | ~ segmentP(sk3,A) )
    | ~ ssList(sk5)
    | ~ neq(sk5,nil)
    | ~ segmentP(sk4,sk5)
    | ~ segmentP(sk3,sk5) ),
    inference(quant_inst,[status(thm)],]) ).

tff(59,plain,
    ( ~ ! [A: $i] :
          ( ~ ssList(A)
          | ~ neq(A,nil)
          | ~ segmentP(sk4,A)
          | ~ segmentP(sk3,A) )
    | ~ ssList(sk5)
    | ~ neq(sk5,nil)
    | ~ segmentP(sk4,sk5)
    | ~ segmentP(sk3,sk5) ),
    inference(modus_ponens,[status(thm)],[58,57]) ).

tff(60,plain,
    $false,
    inference(unit_resolution,[status(thm)],[59,56,43,36,27,18]) ).

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