TSTP Solution File: SWV888-1 by Leo-III---1.7.7

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Leo-III---1.7.7
% Problem  : SWV888-1 : TPTP v8.1.2. Released v4.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : run_Leo-III %s %d

% Computer : n006.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 May 19 12:19:09 EDT 2023

% Result   : Unsatisfiable 3.94s 1.92s
% Output   : Refutation 4.30s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :    2
%            Number of leaves      :   83
% Syntax   : Number of formulae    :  139 (  41 unt;  28 typ;   0 def)
%            Number of atoms       :  191 (  84 equ;   0 cnn)
%            Maximal formula atoms :    3 (   1 avg)
%            Number of connectives :  798 (  96   ~;  80   |;   0   &; 622   @)
%                                         (   0 <=>;   0  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   15 (   7 avg)
%            Number of types       :    2 (   0 usr)
%            Number of type conns  :   48 (  48   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   30 (  28 usr;   8 con; 0-5 aty)
%            Number of variables   :  276 (   0   ^; 276   !;   0   ?; 276   :)

% Comments : 
%------------------------------------------------------------------------------
thf(c_Natural_Oevalc_type,type,
    c_Natural_Oevalc: $i > $i > $i > $o ).

thf(c_Option_Othe_type,type,
    c_Option_Othe: $i > $i > $i ).

thf(c_Com_Obody_type,type,
    c_Com_Obody: $i > $i ).

thf(v_pn_type,type,
    v_pn: $i ).

thf(tc_Com_Ocom_type,type,
    tc_Com_Ocom: $i ).

thf(v_x_type,type,
    v_x: $i ).

thf(v_xa_type,type,
    v_xa: $i ).

thf(c_Com_Ocom_OBODY_type,type,
    c_Com_Ocom_OBODY: $i > $i ).

thf(c_Suc_type,type,
    c_Suc: $i > $i ).

thf(c_Option_Ooption_OSome_type,type,
    c_Option_Ooption_OSome: $i > $i > $i ).

thf(c_ATP__Linkup_Osko__Option__Xoption__Xexhaust__1__1_type,type,
    c_ATP__Linkup_Osko__Option__Xoption__Xexhaust__1__1: $i > $i > $i ).

thf(c_Option_Ooption_ONone_type,type,
    c_Option_Ooption_ONone: $i > $i ).

thf(c_Natural_Oevaln_type,type,
    c_Natural_Oevaln: $i > $i > $i > $i > $o ).

thf(c_Natural_Osko__Natural__Xevaln__elim__cases__4__1_type,type,
    c_Natural_Osko__Natural__Xevaln__elim__cases__4__1: $i > $i > $i > $i > $i > $i ).

thf(c_Com_Ocom_OSemi_type,type,
    c_Com_Ocom_OSemi: $i > $i > $i ).

thf(c_ATP__Linkup_Osko__Option__Xnot__Some__eq__1__1_type,type,
    c_ATP__Linkup_Osko__Option__Xnot__Some__eq__1__1: $i > $i > $i ).

thf(c_ATP__Linkup_Osko__Option__Xoption__Xnchotomy__1__1_type,type,
    c_ATP__Linkup_Osko__Option__Xoption__Xnchotomy__1__1: $i > $i > $i ).

thf(c_Com_OWT_type,type,
    c_Com_OWT: $i > $o ).

thf(c_ATP__Linkup_Osko__Option__Xnot__None__eq__1__1_type,type,
    c_ATP__Linkup_Osko__Option__Xnot__None__eq__1__1: $i > $i > $i ).

thf(c_Com_Ocom_OSKIP_type,type,
    c_Com_Ocom_OSKIP: $i ).

thf(c_Fun_Oid_type,type,
    c_Fun_Oid: $i > $i > $i ).

thf(c_Natural_Osko__Natural__Xevaln__elim__cases__6__1_type,type,
    c_Natural_Osko__Natural__Xevaln__elim__cases__6__1: $i > $i > $i > $i > $i ).

thf(t_a_type,type,
    t_a: $i ).

thf(c_Natural_Osko__Natural__Xevalc__elim__cases__4__1_type,type,
    c_Natural_Osko__Natural__Xevalc__elim__cases__4__1: $i > $i > $i > $i > $i ).

thf(c_Com_OWT__bodies_type,type,
    c_Com_OWT__bodies: $o ).

thf(c_Com_Osko__Com__XWTs__elim__cases__7__1_type,type,
    c_Com_Osko__Com__XWTs__elim__cases__7__1: $i > $i ).

thf(c_Natural_Osko__Natural__Xeval__eq__1__1_type,type,
    c_Natural_Osko__Natural__Xeval__eq__1__1: $i > $i > $i > $i ).

thf(c_Natural_Osko__Natural__Xevalc__evaln__1__1_type,type,
    c_Natural_Osko__Natural__Xevalc__evaln__1__1: $i > $i > $i > $i ).

thf(19,axiom,
    ! [B: $i,A: $i] :
      ( ( c_Com_Ocom_OSemi @ A @ B )
     != c_Com_Ocom_OSKIP ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_com_Osimps_I13_J_0) ).

thf(101,plain,
    ! [B: $i,A: $i] :
      ( ( c_Com_Ocom_OSemi @ A @ B )
     != c_Com_Ocom_OSKIP ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[19]) ).

thf(11,axiom,
    ! [B: $i,A: $i] :
      ( ( A
        = ( c_Option_Ooption_OSome @ ( c_ATP__Linkup_Osko__Option__Xoption__Xnchotomy__1__1 @ A @ B ) @ B ) )
      | ( A
        = ( c_Option_Ooption_ONone @ B ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_option_Onchotomy_0) ).

thf(84,plain,
    ! [B: $i,A: $i] :
      ( ( A
        = ( c_Option_Ooption_OSome @ ( c_ATP__Linkup_Osko__Option__Xoption__Xnchotomy__1__1 @ A @ B ) @ B ) )
      | ( A
        = ( c_Option_Ooption_ONone @ B ) ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[11]) ).

thf(25,axiom,
    ! [B: $i,A: $i] :
      ( ( c_Option_Ooption_ONone @ A )
     != ( c_Option_Ooption_OSome @ B @ A ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_not__Some__eq_1) ).

thf(117,plain,
    ! [B: $i,A: $i] :
      ( ( c_Option_Ooption_ONone @ A )
     != ( c_Option_Ooption_OSome @ B @ A ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[25]) ).

thf(14,axiom,
    c_Com_OWT @ c_Com_Ocom_OSKIP,
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_WT_OSkip_0) ).

thf(92,plain,
    c_Com_OWT @ c_Com_Ocom_OSKIP,
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[14]) ).

thf(52,axiom,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ ( c_Option_Othe @ ( c_Com_Obody @ A ) @ tc_Com_Ocom ) @ B @ C )
      | ~ ( c_Natural_Oevalc @ ( c_Com_Ocom_OBODY @ A ) @ B @ C ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evalc__elim__cases_I6_J_0) ).

thf(188,plain,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ ( c_Option_Othe @ ( c_Com_Obody @ A ) @ tc_Com_Ocom ) @ B @ C )
      | ~ ( c_Natural_Oevalc @ ( c_Com_Ocom_OBODY @ A ) @ B @ C ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[52]) ).

thf(46,axiom,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ A @ B @ ( c_Natural_Osko__Natural__Xeval__eq__1__1 @ A @ B @ C ) @ C )
      | ~ ( c_Natural_Oevalc @ A @ B @ C ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_eval__eq_0) ).

thf(173,plain,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ A @ B @ ( c_Natural_Osko__Natural__Xeval__eq__1__1 @ A @ B @ C ) @ C )
      | ~ ( c_Natural_Oevalc @ A @ B @ C ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[46]) ).

thf(3,axiom,
    ! [B: $i,A: $i] :
      ( ( ( c_Suc @ A )
       != ( c_Suc @ B ) )
      | ( A = B ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_Suc__inject_0) ).

thf(59,plain,
    ! [B: $i,A: $i] :
      ( ( ( c_Suc @ A )
       != ( c_Suc @ B ) )
      | ( A = B ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[3]) ).

thf(18,axiom,
    ! [B: $i,A: $i] :
      ( ( c_Option_Ooption_OSome @ A @ B )
     != ( c_Option_Ooption_ONone @ B ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_option_Osimps_I3_J_0) ).

thf(98,plain,
    ! [B: $i,A: $i] :
      ( ( c_Option_Ooption_OSome @ A @ B )
     != ( c_Option_Ooption_ONone @ B ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[18]) ).

thf(47,axiom,
    ! [A: $i] :
      ( c_Com_Ocom_OSKIP
     != ( c_Com_Ocom_OBODY @ A ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_com_Osimps_I18_J_0) ).

thf(175,plain,
    ! [A: $i] :
      ( c_Com_Ocom_OSKIP
     != ( c_Com_Ocom_OBODY @ A ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[47]) ).

thf(10,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ A @ B @ ( c_Suc @ C ) @ D )
      | ~ ( c_Natural_Oevaln @ A @ B @ C @ D ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evaln__Suc_0) ).

thf(82,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ A @ B @ ( c_Suc @ C ) @ D )
      | ~ ( c_Natural_Oevaln @ A @ B @ C @ D ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[10]) ).

thf(45,axiom,
    ! [A: $i] :
      ( ( ( c_Com_Obody @ A )
        = ( c_Option_Ooption_OSome @ ( c_Com_Osko__Com__XWTs__elim__cases__7__1 @ A ) @ tc_Com_Ocom ) )
      | ~ ( c_Com_OWT @ ( c_Com_Ocom_OBODY @ A ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_WTs__elim__cases_I7_J_0) ).

thf(170,plain,
    ! [A: $i] :
      ( ( ( c_Com_Obody @ A )
        = ( c_Option_Ooption_OSome @ ( c_Com_Osko__Com__XWTs__elim__cases__7__1 @ A ) @ tc_Com_Ocom ) )
      | ~ ( c_Com_OWT @ ( c_Com_Ocom_OBODY @ A ) ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[45]) ).

thf(26,axiom,
    ! [B: $i,A: $i] :
      ( ( ( c_Suc @ A )
       != ( c_Suc @ B ) )
      | ( A = B ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_nat_Oinject_0) ).

thf(120,plain,
    ! [B: $i,A: $i] :
      ( ( ( c_Suc @ A )
       != ( c_Suc @ B ) )
      | ( A = B ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[26]) ).

thf(1,negated_conjecture,
    c_Natural_Oevalc @ ( c_Option_Othe @ ( c_Com_Obody @ v_pn ) @ tc_Com_Ocom ) @ v_x @ v_xa,
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_conjecture_0) ).

thf(56,plain,
    c_Natural_Oevalc @ ( c_Option_Othe @ ( c_Com_Obody @ v_pn ) @ tc_Com_Ocom ) @ v_x @ v_xa,
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[1]) ).

thf(34,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( A
        = ( c_Suc @ ( c_Natural_Osko__Natural__Xevaln__elim__cases__6__1 @ B @ A @ C @ D ) ) )
      | ~ ( c_Natural_Oevaln @ ( c_Com_Ocom_OBODY @ B ) @ C @ A @ D ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evaln__elim__cases_I6_J_0) ).

thf(142,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( A
        = ( c_Suc @ ( c_Natural_Osko__Natural__Xevaln__elim__cases__6__1 @ B @ A @ C @ D ) ) )
      | ~ ( c_Natural_Oevaln @ ( c_Com_Ocom_OBODY @ B ) @ C @ A @ D ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[34]) ).

thf(38,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ A @ ( c_Natural_Osko__Natural__Xevalc__elim__cases__4__1 @ B @ A @ C @ D ) @ D )
      | ~ ( c_Natural_Oevalc @ ( c_Com_Ocom_OSemi @ B @ A ) @ C @ D ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evalc__elim__cases_I4_J_1) ).

thf(153,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ A @ ( c_Natural_Osko__Natural__Xevalc__elim__cases__4__1 @ B @ A @ C @ D ) @ D )
      | ~ ( c_Natural_Oevalc @ ( c_Com_Ocom_OSemi @ B @ A ) @ C @ D ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[38]) ).

thf(50,axiom,
    ! [B: $i,A: $i] :
      ( ( c_Option_Othe @ ( c_Option_Ooption_OSome @ A @ B ) @ B )
      = A ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_the_Osimps_0) ).

thf(184,plain,
    ! [B: $i,A: $i] :
      ( ( c_Option_Othe @ ( c_Option_Ooption_OSome @ A @ B ) @ B )
      = A ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[50]) ).

thf(22,axiom,
    ! [B: $i,A: $i] :
      ( ( c_Com_OWT @ A )
      | ~ ( c_Com_OWT @ ( c_Com_Ocom_OSemi @ B @ A ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_WTs__elim__cases_I4_J_1) ).

thf(110,plain,
    ! [B: $i,A: $i] :
      ( ( c_Com_OWT @ A )
      | ~ ( c_Com_OWT @ ( c_Com_Ocom_OSemi @ B @ A ) ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[22]) ).

thf(15,axiom,
    ! [B: $i,A: $i] :
      ( ( c_Fun_Oid @ A @ B )
      = A ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_id__apply_0) ).

thf(93,plain,
    ! [B: $i,A: $i] :
      ( ( c_Fun_Oid @ A @ B )
      = A ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[15]) ).

thf(2,negated_conjecture,
    ~ ( c_Natural_Oevalc @ ( c_Com_Ocom_OBODY @ v_pn ) @ v_x @ v_xa ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_conjecture_1) ).

thf(57,plain,
    ~ ( c_Natural_Oevalc @ ( c_Com_Ocom_OBODY @ v_pn ) @ v_x @ v_xa ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[2]) ).

thf(9,axiom,
    ! [C: $i,B: $i,A: $i] :
      ( ( ( c_Option_Ooption_OSome @ A @ B )
       != ( c_Option_Ooption_OSome @ C @ B ) )
      | ( A = C ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_option_Oinject_0) ).

thf(78,plain,
    ! [C: $i,B: $i,A: $i] :
      ( ( ( c_Option_Ooption_OSome @ A @ B )
       != ( c_Option_Ooption_OSome @ C @ B ) )
      | ( A = C ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[9]) ).

thf(36,axiom,
    ! [B: $i,A: $i] :
      ( ( ( c_Com_Ocom_OBODY @ A )
       != ( c_Com_Ocom_OBODY @ B ) )
      | ( A = B ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_com_Osimps_I6_J_0) ).

thf(147,plain,
    ! [B: $i,A: $i] :
      ( ( ( c_Com_Ocom_OBODY @ A )
       != ( c_Com_Ocom_OBODY @ B ) )
      | ( A = B ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[36]) ).

thf(13,axiom,
    ! [B: $i,A: $i] :
      ( ( A
        = ( c_Option_Ooption_OSome @ ( c_ATP__Linkup_Osko__Option__Xnot__None__eq__1__1 @ A @ B ) @ B ) )
      | ( A
        = ( c_Option_Ooption_ONone @ B ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_not__None__eq_0) ).

thf(89,plain,
    ! [B: $i,A: $i] :
      ( ( A
        = ( c_Option_Ooption_OSome @ ( c_ATP__Linkup_Osko__Option__Xnot__None__eq__1__1 @ A @ B ) @ B ) )
      | ( A
        = ( c_Option_Ooption_ONone @ B ) ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[13]) ).

thf(8,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( ( c_Com_Ocom_OSemi @ A @ B )
       != ( c_Com_Ocom_OSemi @ C @ D ) )
      | ( A = C ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_com_Osimps_I3_J_0) ).

thf(74,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( ( c_Com_Ocom_OSemi @ A @ B )
       != ( c_Com_Ocom_OSemi @ C @ D ) )
      | ( A = C ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[8]) ).

thf(41,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ ( c_Option_Othe @ ( c_Com_Obody @ A ) @ tc_Com_Ocom ) @ B @ ( c_Natural_Osko__Natural__Xevaln__elim__cases__6__1 @ A @ C @ B @ D ) @ D )
      | ~ ( c_Natural_Oevaln @ ( c_Com_Ocom_OBODY @ A ) @ B @ C @ D ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evaln__elim__cases_I6_J_1) ).

thf(160,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ ( c_Option_Othe @ ( c_Com_Obody @ A ) @ tc_Com_Ocom ) @ B @ ( c_Natural_Osko__Natural__Xevaln__elim__cases__6__1 @ A @ C @ B @ D ) @ D )
      | ~ ( c_Natural_Oevaln @ ( c_Com_Ocom_OBODY @ A ) @ B @ C @ D ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[41]) ).

thf(32,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ ( c_Com_Ocom_OBODY @ A ) @ B @ ( c_Suc @ C ) @ D )
      | ~ ( c_Natural_Oevaln @ ( c_Option_Othe @ ( c_Com_Obody @ A ) @ tc_Com_Ocom ) @ B @ C @ D ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evaln_OBody_0) ).

thf(137,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ ( c_Com_Ocom_OBODY @ A ) @ B @ ( c_Suc @ C ) @ D )
      | ~ ( c_Natural_Oevaln @ ( c_Option_Othe @ ( c_Com_Obody @ A ) @ tc_Com_Ocom ) @ B @ C @ D ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[32]) ).

thf(43,axiom,
    ! [A: $i] :
      ( ( c_Com_Ocom_OBODY @ A )
     != c_Com_Ocom_OSKIP ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_com_Osimps_I19_J_0) ).

thf(165,plain,
    ! [A: $i] :
      ( ( c_Com_Ocom_OBODY @ A )
     != c_Com_Ocom_OSKIP ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[43]) ).

thf(27,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( ( c_Com_Ocom_OSemi @ A @ B )
       != ( c_Com_Ocom_OSemi @ C @ D ) )
      | ( B = D ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_com_Osimps_I3_J_1) ).

thf(124,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( ( c_Com_Ocom_OSemi @ A @ B )
       != ( c_Com_Ocom_OSemi @ C @ D ) )
      | ( B = D ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[27]) ).

thf(54,axiom,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ ( c_Com_Ocom_OBODY @ A ) @ B @ C )
      | ~ ( c_Natural_Oevalc @ ( c_Option_Othe @ ( c_Com_Obody @ A ) @ tc_Com_Ocom ) @ B @ C ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evalc_OBody_0) ).

thf(193,plain,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ ( c_Com_Ocom_OBODY @ A ) @ B @ C )
      | ~ ( c_Natural_Oevalc @ ( c_Option_Othe @ ( c_Com_Obody @ A ) @ tc_Com_Ocom ) @ B @ C ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[54]) ).

thf(17,axiom,
    ! [E: $i,D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ A @ ( c_Natural_Osko__Natural__Xevaln__elim__cases__4__1 @ B @ A @ C @ D @ E ) @ C @ E )
      | ~ ( c_Natural_Oevaln @ ( c_Com_Ocom_OSemi @ B @ A ) @ D @ C @ E ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evaln__elim__cases_I4_J_1) ).

thf(96,plain,
    ! [E: $i,D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ A @ ( c_Natural_Osko__Natural__Xevaln__elim__cases__4__1 @ B @ A @ C @ D @ E ) @ C @ E )
      | ~ ( c_Natural_Oevaln @ ( c_Com_Ocom_OSemi @ B @ A ) @ D @ C @ E ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[17]) ).

thf(30,axiom,
    ! [B: $i,A: $i] :
      ( ( c_Com_OWT @ A )
      | ~ ( c_Com_OWT @ ( c_Com_Ocom_OSemi @ A @ B ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_WTs__elim__cases_I4_J_0) ).

thf(134,plain,
    ! [B: $i,A: $i] :
      ( ( c_Com_OWT @ A )
      | ~ ( c_Com_OWT @ ( c_Com_Ocom_OSemi @ A @ B ) ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[30]) ).

thf(28,axiom,
    ! [B: $i,A: $i] :
      ( ( c_Option_Ooption_ONone @ A )
     != ( c_Option_Ooption_OSome @ B @ A ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_option_Osimps_I2_J_0) ).

thf(128,plain,
    ! [B: $i,A: $i] :
      ( ( c_Option_Ooption_ONone @ A )
     != ( c_Option_Ooption_OSome @ B @ A ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[28]) ).

thf(7,axiom,
    ! [A: $i] :
      ( ( c_Suc @ A )
     != A ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_Suc__n__not__n_0) ).

thf(71,plain,
    ! [A: $i] :
      ( ( c_Suc @ A )
     != A ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[7]) ).

thf(49,axiom,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Com_Ocom_OBODY @ A )
     != ( c_Com_Ocom_OSemi @ B @ C ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_com_Osimps_I49_J_0) ).

thf(181,plain,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Com_Ocom_OBODY @ A )
     != ( c_Com_Ocom_OSemi @ B @ C ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[49]) ).

thf(5,axiom,
    ! [E: $i,D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ A @ B @ C @ ( c_Natural_Osko__Natural__Xevaln__elim__cases__4__1 @ A @ D @ C @ B @ E ) )
      | ~ ( c_Natural_Oevaln @ ( c_Com_Ocom_OSemi @ A @ D ) @ B @ C @ E ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evaln__elim__cases_I4_J_0) ).

thf(66,plain,
    ! [E: $i,D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ A @ B @ C @ ( c_Natural_Osko__Natural__Xevaln__elim__cases__4__1 @ A @ D @ C @ B @ E ) )
      | ~ ( c_Natural_Oevaln @ ( c_Com_Ocom_OSemi @ A @ D ) @ B @ C @ E ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[5]) ).

thf(39,axiom,
    ! [B: $i,A: $i] :
      ( ( ( c_Com_Obody @ A )
       != ( c_Option_Ooption_OSome @ B @ tc_Com_Ocom ) )
      | ~ c_Com_OWT__bodies
      | ( c_Com_OWT @ B ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_WT__bodiesD_0) ).

thf(155,plain,
    ! [B: $i,A: $i] :
      ( ( ( c_Com_Obody @ A )
       != ( c_Option_Ooption_OSome @ B @ tc_Com_Ocom ) )
      | ~ c_Com_OWT__bodies
      | ( c_Com_OWT @ B ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[39]) ).

thf(42,axiom,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Com_Ocom_OSemi @ A @ B )
     != ( c_Com_Ocom_OBODY @ C ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_com_Osimps_I48_J_0) ).

thf(162,plain,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Com_Ocom_OSemi @ A @ B )
     != ( c_Com_Ocom_OBODY @ C ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[42]) ).

thf(23,axiom,
    ! [F: $i,E: $i,D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ ( c_Com_Ocom_OSemi @ A @ B ) @ C @ D @ E )
      | ~ ( c_Natural_Oevaln @ B @ F @ D @ E )
      | ~ ( c_Natural_Oevaln @ A @ C @ D @ F ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evaln_OSemi_0) ).

thf(112,plain,
    ! [F: $i,E: $i,D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ ( c_Com_Ocom_OSemi @ A @ B ) @ C @ D @ E )
      | ~ ( c_Natural_Oevaln @ B @ F @ D @ E )
      | ~ ( c_Natural_Oevaln @ A @ C @ D @ F ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[23]) ).

thf(35,axiom,
    ( ( c_Fun_Oid @ v_x @ t_a )
    = v_x ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_id__def_0) ).

thf(145,plain,
    ( ( c_Fun_Oid @ v_x @ t_a )
    = v_x ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[35]) ).

thf(4,axiom,
    ! [B: $i,A: $i] :
      ( ( A
        = ( c_Option_Ooption_OSome @ ( c_ATP__Linkup_Osko__Option__Xoption__Xexhaust__1__1 @ A @ B ) @ B ) )
      | ( A
        = ( c_Option_Ooption_ONone @ B ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_option_Oexhaust_0) ).

thf(63,plain,
    ! [B: $i,A: $i] :
      ( ( A
        = ( c_Option_Ooption_OSome @ ( c_ATP__Linkup_Osko__Option__Xoption__Xexhaust__1__1 @ A @ B ) @ B ) )
      | ( A
        = ( c_Option_Ooption_ONone @ B ) ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[4]) ).

thf(16,axiom,
    ! [B: $i,A: $i] : ( c_Natural_Oevaln @ c_Com_Ocom_OSKIP @ A @ B @ A ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evaln_OSkip_0) ).

thf(95,plain,
    ! [B: $i,A: $i] : ( c_Natural_Oevaln @ c_Com_Ocom_OSKIP @ A @ B @ A ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[16]) ).

thf(12,axiom,
    ! [B: $i,A: $i] :
      ( ( c_Com_OWT @ ( c_Com_Ocom_OSemi @ A @ B ) )
      | ~ ( c_Com_OWT @ B )
      | ~ ( c_Com_OWT @ A ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_WT_OSemi_0) ).

thf(87,plain,
    ! [B: $i,A: $i] :
      ( ( c_Com_OWT @ ( c_Com_Ocom_OSemi @ A @ B ) )
      | ~ ( c_Com_OWT @ B )
      | ~ ( c_Com_OWT @ A ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[12]) ).

thf(20,axiom,
    ! [B: $i,A: $i] :
      ( c_Com_Ocom_OSKIP
     != ( c_Com_Ocom_OSemi @ A @ B ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_com_Osimps_I12_J_0) ).

thf(104,plain,
    ! [B: $i,A: $i] :
      ( c_Com_Ocom_OSKIP
     != ( c_Com_Ocom_OSemi @ A @ B ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[20]) ).

thf(40,axiom,
    ! [E: $i,D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ ( c_Com_Ocom_OSemi @ A @ B ) @ C @ D )
      | ~ ( c_Natural_Oevalc @ B @ E @ D )
      | ~ ( c_Natural_Oevalc @ A @ C @ E ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evalc_OSemi_0) ).

thf(158,plain,
    ! [E: $i,D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ ( c_Com_Ocom_OSemi @ A @ B ) @ C @ D )
      | ~ ( c_Natural_Oevalc @ B @ E @ D )
      | ~ ( c_Natural_Oevalc @ A @ C @ E ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[40]) ).

thf(51,axiom,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ A @ B @ ( c_Natural_Osko__Natural__Xevalc__evaln__1__1 @ A @ B @ C ) @ C )
      | ~ ( c_Natural_Oevalc @ A @ B @ C ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evalc__evaln_0) ).

thf(186,plain,
    ! [C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevaln @ A @ B @ ( c_Natural_Osko__Natural__Xevalc__evaln__1__1 @ A @ B @ C ) @ C )
      | ~ ( c_Natural_Oevalc @ A @ B @ C ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[51]) ).

thf(24,axiom,
    ! [A: $i] :
      ( A
     != ( c_Suc @ A ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_n__not__Suc__n_0) ).

thf(114,plain,
    ! [A: $i] :
      ( A
     != ( c_Suc @ A ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[24]) ).

thf(33,axiom,
    ! [B: $i,A: $i] :
      ( ( A = B )
      | ~ ( c_Natural_Oevalc @ c_Com_Ocom_OSKIP @ B @ A ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evalc__elim__cases_I1_J_0) ).

thf(139,plain,
    ! [B: $i,A: $i] :
      ( ( A = B )
      | ~ ( c_Natural_Oevalc @ c_Com_Ocom_OSKIP @ B @ A ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[33]) ).

thf(37,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ A @ B @ C )
      | ~ ( c_Natural_Oevaln @ A @ B @ D @ C ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_eval__eq_1) ).

thf(151,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ A @ B @ C )
      | ~ ( c_Natural_Oevaln @ A @ B @ D @ C ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[37]) ).

thf(44,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ A @ B @ C )
      | ~ ( c_Natural_Oevaln @ A @ B @ D @ C ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evaln__evalc_0) ).

thf(168,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ A @ B @ C )
      | ~ ( c_Natural_Oevaln @ A @ B @ D @ C ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[44]) ).

thf(53,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( A = B )
      | ~ ( c_Natural_Oevalc @ C @ D @ A )
      | ~ ( c_Natural_Oevalc @ C @ D @ B ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_com__det_0) ).

thf(190,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( A = B )
      | ~ ( c_Natural_Oevalc @ C @ D @ A )
      | ~ ( c_Natural_Oevalc @ C @ D @ B ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[53]) ).

thf(21,axiom,
    ! [C: $i,B: $i,A: $i] :
      ( ( A = B )
      | ~ ( c_Natural_Oevaln @ c_Com_Ocom_OSKIP @ B @ C @ A ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evaln__elim__cases_I1_J_0) ).

thf(107,plain,
    ! [C: $i,B: $i,A: $i] :
      ( ( A = B )
      | ~ ( c_Natural_Oevaln @ c_Com_Ocom_OSKIP @ B @ C @ A ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[21]) ).

thf(31,axiom,
    ! [A: $i] : ( c_Natural_Oevalc @ c_Com_Ocom_OSKIP @ A @ A ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evalc_OSkip_0) ).

thf(136,plain,
    ! [A: $i] : ( c_Natural_Oevalc @ c_Com_Ocom_OSKIP @ A @ A ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[31]) ).

thf(55,axiom,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ A @ B @ ( c_Natural_Osko__Natural__Xevalc__elim__cases__4__1 @ A @ C @ B @ D ) )
      | ~ ( c_Natural_Oevalc @ ( c_Com_Ocom_OSemi @ A @ C ) @ B @ D ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_evalc__elim__cases_I4_J_0) ).

thf(195,plain,
    ! [D: $i,C: $i,B: $i,A: $i] :
      ( ( c_Natural_Oevalc @ A @ B @ ( c_Natural_Osko__Natural__Xevalc__elim__cases__4__1 @ A @ C @ B @ D ) )
      | ~ ( c_Natural_Oevalc @ ( c_Com_Ocom_OSemi @ A @ C ) @ B @ D ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[55]) ).

thf(29,axiom,
    ! [B: $i,A: $i] :
      ( ( c_Option_Ooption_OSome @ A @ B )
     != ( c_Option_Ooption_ONone @ B ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_not__None__eq_1) ).

thf(131,plain,
    ! [B: $i,A: $i] :
      ( ( c_Option_Ooption_OSome @ A @ B )
     != ( c_Option_Ooption_ONone @ B ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[29]) ).

thf(6,axiom,
    ! [B: $i,A: $i] :
      ( ( A
        = ( c_Option_Ooption_ONone @ B ) )
      | ( A
        = ( c_Option_Ooption_OSome @ ( c_ATP__Linkup_Osko__Option__Xnot__Some__eq__1__1 @ A @ B ) @ B ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_not__Some__eq_0) ).

thf(68,plain,
    ! [B: $i,A: $i] :
      ( ( A
        = ( c_Option_Ooption_ONone @ B ) )
      | ( A
        = ( c_Option_Ooption_OSome @ ( c_ATP__Linkup_Osko__Option__Xnot__Some__eq__1__1 @ A @ B ) @ B ) ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[6]) ).

thf(48,axiom,
    ! [A: $i] :
      ( ( c_Com_OWT @ ( c_Com_Ocom_OBODY @ A ) )
      | ( ( c_Com_Obody @ A )
        = ( c_Option_Ooption_ONone @ tc_Com_Ocom ) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',cls_WT_OBody_0) ).

thf(178,plain,
    ! [A: $i] :
      ( ( c_Com_OWT @ ( c_Com_Ocom_OBODY @ A ) )
      | ( ( c_Com_Obody @ A )
        = ( c_Option_Ooption_ONone @ tc_Com_Ocom ) ) ),
    inference(defexp_and_simp_and_etaexpand,[status(thm)],[48]) ).

thf(197,plain,
    $false,
    inference(e,[status(thm)],[101,84,117,92,188,173,59,98,175,82,170,120,56,142,153,184,110,93,57,78,147,89,74,160,137,165,124,193,96,134,128,71,181,66,155,162,112,145,63,95,87,104,158,186,114,139,151,168,190,107,136,195,131,68,178]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.10/0.12  % Problem  : SWV888-1 : TPTP v8.1.2. Released v4.1.0.
% 0.10/0.15  % Command  : run_Leo-III %s %d
% 0.15/0.36  % Computer : n006.cluster.edu
% 0.15/0.36  % Model    : x86_64 x86_64
% 0.15/0.36  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.15/0.36  % Memory   : 8042.1875MB
% 0.15/0.36  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.15/0.36  % CPULimit : 300
% 0.15/0.36  % WCLimit  : 300
% 0.15/0.36  % DateTime : Fri May 19 02:20:52 EDT 2023
% 0.15/0.36  % CPUTime  : 
% 0.99/0.89  % [INFO] 	 Parsing problem /export/starexec/sandbox/benchmark/theBenchmark.p ... 
% 1.39/1.04  % [INFO] 	 Parsing done (143ms). 
% 1.39/1.04  % [INFO] 	 Running in sequential loop mode. 
% 1.80/1.23  % [INFO] 	 eprover registered as external prover. 
% 1.80/1.23  % [INFO] 	 cvc4 registered as external prover. 
% 1.80/1.24  % [INFO] 	 Scanning for conjecture ... 
% 2.05/1.30  % [INFO] 	 Found a conjecture and 53 axioms. Running axiom selection ... 
% 2.05/1.35  % [INFO] 	 Axiom selection finished. Selected 53 axioms (removed 0 axioms). 
% 2.39/1.39  % [INFO] 	 Problem is propositional (TPTP CNF). 
% 2.39/1.39  % [INFO] 	 Type checking passed. 
% 2.39/1.40  % [CONFIG] 	 Using configuration: timeout(300) with strategy<name(default),share(1.0),primSubst(3),sos(false),unifierCount(4),uniDepth(8),boolExt(true),choice(true),renaming(true),funcspec(false), domConstr(0),specialInstances(39),restrictUniAttempts(true),termOrdering(CPO)>.  Searching for refutation ... 
% 3.55/1.87  % External prover 'e' found a proof!
% 3.55/1.87  % [INFO] 	 Killing All external provers ... 
% 3.55/1.87  % Time passed: 1347ms (effective reasoning time: 826ms)
% 3.55/1.87  % Solved by strategy<name(default),share(1.0),primSubst(3),sos(false),unifierCount(4),uniDepth(8),boolExt(true),choice(true),renaming(true),funcspec(false), domConstr(0),specialInstances(39),restrictUniAttempts(true),termOrdering(CPO)>
% 3.94/1.91  % Axioms used in derivation (53): cls_Suc__n__not__n_0, cls_id__apply_0, cls_evalc_OBody_0, cls_option_Oexhaust_0, cls_not__Some__eq_1, cls_evaln__evalc_0, cls_evaln__elim__cases_I1_J_0, cls_evalc__elim__cases_I4_J_1, cls_evaln__elim__cases_I4_J_0, cls_not__None__eq_0, cls_option_Oinject_0, cls_com_Osimps_I18_J_0, cls_com_Osimps_I3_J_0, cls_Suc__inject_0, cls_WT_OSemi_0, cls_WTs__elim__cases_I4_J_1, cls_WT_OSkip_0, cls_evalc_OSemi_0, cls_WTs__elim__cases_I7_J_0, cls_option_Osimps_I2_J_0, cls_evaln_OSkip_0, cls_option_Onchotomy_0, cls_evalc__elim__cases_I1_J_0, cls_evalc__elim__cases_I6_J_0, cls_evalc__evaln_0, cls_not__Some__eq_0, cls_WTs__elim__cases_I4_J_0, cls_WT__bodiesD_0, cls_com_Osimps_I6_J_0, cls_not__None__eq_1, cls_com_Osimps_I48_J_0, cls_evalc_OSkip_0, cls_evalc__elim__cases_I4_J_0, cls_evaln_OBody_0, cls_the_Osimps_0, cls_evaln__elim__cases_I6_J_0, cls_evaln_OSemi_0, cls_com__det_0, cls_com_Osimps_I19_J_0, cls_com_Osimps_I3_J_1, cls_eval__eq_0, cls_WT_OBody_0, cls_eval__eq_1, cls_id__def_0, cls_com_Osimps_I13_J_0, cls_evaln__elim__cases_I4_J_1, cls_nat_Oinject_0, cls_com_Osimps_I49_J_0, cls_evaln__Suc_0, cls_com_Osimps_I12_J_0, cls_evaln__elim__cases_I6_J_1, cls_n__not__Suc__n_0, cls_option_Osimps_I3_J_0
% 3.94/1.91  % No. of inferences in proof: 111
% 3.94/1.92  % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p : 1347 ms resp. 826 ms w/o parsing
% 4.30/1.99  % SZS output start Refutation for /export/starexec/sandbox/benchmark/theBenchmark.p
% See solution above
% 4.30/1.99  % [INFO] 	 Killing All external provers ... 
%------------------------------------------------------------------------------