%------------------------------------------------------------------------------
% File : DT2H2X---1.9.5
% Problem : DAT342^1 : TPTP v9.2.1. Released v9.2.0.
% Transfm : none
% Format : tptp:raw
% Command : /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% Computer : n022.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 : Wed Feb 25 08:45:31 AM UTC 2026
% Result : Theorem 1.84s 1.57s
% Output : Refutation 1.84s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12 % Problem : DAT342^1 : TPTP v9.2.1. Released v9.2.0.
% 0.12/0.13 % Command : /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.16/0.34 % Computer : n022.cluster.edu
% 0.16/0.34 % Model : x86_64 x86_64
% 0.16/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.16/0.34 % Memory : 8042.1875MB
% 0.16/0.34 % OS : Linux 3.10.0-693.el7.x86_64
% 0.16/0.34 % CPULimit : 300
% 0.16/0.34 % WCLimit : 300
% 0.16/0.34 % DateTime : Tue Feb 24 06:15:51 EST 2026
% 0.16/0.34 % CPUTime :
% 0.16/0.34 Running /export/starexec/sandbox/solver/bin/run_DT2H2X /export/starexec/sandbox/benchmark/theBenchmark.p 300
% 0.28/0.46 ---- Original DTF file ---
% 0.28/0.47 thf(spec,logic,$$dhol).
% 0.28/0.47 %------------------------------------------------------------------------------
% 0.28/0.47 % File : DAT342^1 : TPTP v9.2.1. Released v9.2.0.
% 0.28/0.47 % Domain : Data Structures
% 0.28/0.47 % Problem : Nil is a right-neutral element of app polymorphic, base case
% 0.28/0.47 % Version : Especial.
% 0.28/0.47 % English : Nil is a right-neutral element of app for polymorphic fixed-length
% 0.28/0.47 % lists. The proof is by induction with a separate problem file for
% 0.28/0.47 % the base and step case as well as the correct instantiation of the
% 0.28/0.47 % induction axiom for lists. The main file uses the conjectures of
% 0.28/0.47 % the other files as lemmas in order to prove the final result. To
% 0.28/0.47 % simplify proof search, the lemmas in the problem file for the
% 0.28/0.47 % induction step have been preselected.
% 0.28/0.47
% 0.28/0.47 % Refs : [RRB23] Rothgang et al. (2023), Theorem Proving in Dependently
% 0.28/0.47 % : [Rot25] Rothgang (2025), Email to Geoff Sutcliffe
% 0.28/0.47 % : [RK+25] Ranalter et al. (2025), The Dependently Typed Higher-O
% 0.28/0.47 % Source : [Rot25]
% 0.28/0.47 % Names : ListAppNil/list-app-nil-base.p [Rot25]
% 0.28/0.47
% 0.28/0.47 % Status : Theorem
% 0.28/0.47 % Rating : ? v9.2.0
% 0.28/0.47 % Syntax : Number of formulae : 18 ( 7 unt; 8 typ; 0 def)
% 0.28/0.47 % Number of atoms : 9 ( 9 equ; 0 cnn)
% 0.28/0.47 % Maximal formula atoms : 2 ( 0 avg)
% 0.28/0.47 % Number of connectives : 104 ( 3 ~; 0 |; 0 &; 94 @)
% 0.28/0.47 % ( 0 <=>; 7 =>; 0 <=; 0 <~>)
% 0.28/0.47 % Maximal formula depth : 14 ( 5 avg)
% 0.28/0.47 % Number of types : 2 ( 1 usr)
% 0.28/0.47 % Number of type decls : 8 ( 3 !>P; 3 !>D)
% 0.28/0.47 % Number of type conns : 11 ( 11 >; 0 *; 0 +; 0 <<)
% 0.28/0.47 % Number of symbols : 8 ( 7 usr; 1 con; 0-5 aty)
% 0.28/0.47 % Number of variables : 34 ( 0 ^; 27 !; 0 ?; 34 :)
% 0.28/0.47 % ( 7 !>; 0 ?*; 0 @-; 0 @+)
% 0.28/0.47 % SPC : DH1_THM_EQU_NAR
% 0.28/0.47
% 0.28/0.47 % Comments :
% 0.28/0.47 %------------------------------------------------------------------------------
% 0.28/0.47 thf(nat_type,type,
% 0.28/0.47 nat: $tType ).
% 0.28/0.47
% 0.28/0.47 thf(zero_type,type,
% 0.28/0.47 zero: nat ).
% 0.28/0.47
% 0.28/0.47 thf(suc_type,type,
% 0.28/0.47 suc: nat > nat ).
% 0.28/0.47
% 0.28/0.47 thf(plus_type,type,
% 0.28/0.47 plus: nat > nat > nat ).
% 0.28/0.47
% 0.28/0.47 thf(list_type,type,
% 0.28/0.47 list: $tType > nat > $tType ).
% 0.28/0.47
% 0.28/0.47 thf(nil_type,type,
% 0.28/0.47 nil:
% 0.28/0.47 !>[A: $tType] : ( list @ A @ zero ) ).
% 0.28/0.47
% 0.28/0.47 thf(cons_type,type,
% 0.28/0.47 cons:
% 0.28/0.47 !>[A: $tType,N: nat] : ( A > ( list @ A @ N ) > ( list @ A @ ( suc @ N ) ) ) ).
% 0.28/0.47
% 0.28/0.47 thf(app_type,type,
% 0.28/0.47 app:
% 0.28/0.47 !>[A: $tType,N: nat,M: nat] : ( ( list @ A @ N ) > ( list @ A @ M ) > ( list @ A @ ( plus @ N @ M ) ) ) ).
% 0.28/0.47
% 0.28/0.47 thf(peano1,axiom,
% 0.28/0.47 ! [N: nat] :
% 0.28/0.47 ( ( suc @ N )
% 0.28/0.47 != zero ) ).
% 0.28/0.47
% 0.28/0.47 thf(peano2,axiom,
% 0.28/0.47 ! [N: nat,M: nat] :
% 0.28/0.47 ( ( N != M )
% 0.28/0.47 => ( ( suc @ N )
% 0.28/0.47 != ( suc @ M ) ) ) ).
% 0.28/0.47
% 0.28/0.47 thf(peano3,axiom,
% 0.28/0.47 ! [P: nat > $o] :
% 0.28/0.47 ( ( P @ zero )
% 0.28/0.47 => ( ! [M: nat] :
% 0.28/0.47 ( ( P @ M )
% 0.28/0.47 => ( P @ ( suc @ M ) ) )
% 0.28/0.47 => ! [N: nat] : ( P @ N ) ) ) ).
% 0.28/0.47
% 0.28/0.47 thf(list_induct,axiom,
% 0.28/0.47 ! [A: $tType,
% 0.28/0.47 P: !>[N: nat] : ( ( list @ A @ N ) > $o )] :
% 0.28/0.47 ( ( P @ zero @ ( nil @ A ) )
% 0.28/0.47 => ( ! [M: nat,X: A,Y: list @ A @ M] :
% 0.28/0.47 ( ( P @ M @ Y )
% 0.28/0.47 => ( P @ ( suc @ M ) @ ( cons @ A @ M @ X @ Y ) ) )
% 0.28/0.47 => ! [N: nat,X: list @ A @ N] : ( P @ N @ X ) ) ) ).
% 0.28/0.47
% 0.28/0.47 thf(ax1,axiom,
% 0.28/0.47 ! [N: nat] :
% 0.28/0.47 ( ( plus @ zero @ N )
% 0.28/0.47 = N ) ).
% 0.28/0.47
% 0.28/0.47 thf(ax2,axiom,
% 0.28/0.47 ! [N: nat,M: nat] :
% 0.28/0.47 ( ( plus @ ( suc @ N ) @ M )
% 0.28/0.47 = ( suc @ ( plus @ N @ M ) ) ) ).
% 0.28/0.47
% 0.28/0.47 thf(ax3,axiom,
% 0.28/0.47 ! [A: $tType,N: nat,X: list @ A @ N] :
% 0.28/0.47 ( ( app @ A @ zero @ N @ ( nil @ A ) @ X )
% 0.28/0.47 = X ) ).
% 0.28/0.47
% 0.28/0.47 thf(ax4,axiom,
% 0.28/0.47 ! [A: $tType,N: nat,M: nat,X: A,Y: list @ A @ N,Z: list @ A @ M] :
% 0.28/0.47 ( ( app @ A @ ( suc @ N ) @ M @ ( cons @ A @ N @ X @ Y ) @ Z )
% 0.28/0.47 = ( cons @ A @ ( plus @ N @ M ) @ X @ ( app @ A @ N @ M @ Y @ Z ) ) ) ).
% 0.28/0.47
% 0.28/0.47 thf(plus_zero_r,axiom,
% 0.28/0.47 ! [M: nat] :
% 0.28/0.47 ( ( plus @ M @ zero )
% 0.28/0.47 = M ) ).
% 0.28/0.47
% 0.28/0.47 thf(list_app_nil_base,conjecture,
% 0.28/0.47 ! [A: $tType] :
% 0.28/0.47 ( ( app @ A @ zero @ zero @ ( nil @ A ) @ ( nil @ A ) )
% 0.28/0.47 = ( nil @ A ) ) ).
% 0.28/0.47
% 0.28/0.47 %------------------------------------------------------------------------------
% 0.28/0.47 ------------------------
% 1.71/1.36 ---- Embedded in THF ---
% 1.71/1.36 %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 1.71/1.36 %%% Generated on Tue Feb 24 06:15:52 EST 2026
% 1.71/1.36 %%% using '$$dhol' embedding, version 1.3.0.
% 1.71/1.36 %%% Logic specification used:
% 1.71/1.36 %%% thf(spec, logic, $$dhol).
% 1.71/1.36
% 1.71/1.36 % SZS output start ListOfTHF for /export/starexec/sandbox/tmp/tmp.8vkXCdtgML/DTF2DTF14096.p
% 1.71/1.36 thf(is_per_type, type, isPer: (!> [A:$tType]: (((A > (A > $o)) > $o)))).
% 1.71/1.36 thf(is_per, definition, (! [A:$tType,AStar:(A > (A > $o))]: ((((isPer @ A) @ AStar) <=> ((! [X:A,Y:A]: ((((AStar @ X) @ Y) => ((AStar @ Y) @ X)))) & (! [X:A,Y:A,Z:A]: ((((AStar @ X) @ Y) => (((AStar @ Y) @ Z) => ((AStar @ X) @ Z)))))))))).
% 1.71/1.36 thf(nat_type, type, nat: $tType).
% 1.71/1.36 thf(natStar, type, 'natStar': (nat > (nat > $o))).
% 1.71/1.36 thf(natStar_is_eq, axiom, (! [X:nat,Y:nat]: (((('natStar' @ X) @ Y) <=> (X = Y))))).
% 1.71/1.36 thf(zero_type, type, zero: nat).
% 1.71/1.36 thf(suc_type, type, suc: (nat > nat)).
% 1.71/1.36 thf(plus_type, type, plus: (nat > (nat > nat))).
% 1.71/1.36 thf(list_type, type, list: ($tType > $tType)).
% 1.71/1.36 thf(listStar, type, 'listStar': (!> [A:$tType]: (((A > (A > $o)) > (nat > ((list @ A) > ((list @ A) > $o))))))).
% 1.71/1.36 thf('\'listStar\'_is_per', axiom, (! [B:$tType,BStar:(B > (B > $o))]: ((((isPer @ B) @ BStar) => (! [C:nat]: (((isPer @ (list @ B)) @ (((listStar @ B) @ BStar) @ C)))))))).
% 1.71/1.36 thf(nil_type, type, nil: (!> [A:$tType]: ((list @ A)))).
% 1.71/1.36 thf(nil_tp_ax, axiom, (! [A:$tType,AStar:(A > (A > $o))]: ((((isPer @ A) @ AStar) => (((((listStar @ A) @ AStar) @ zero) @ (nil @ A)) @ (nil @ A)))))).
% 1.71/1.36 thf(cons_type, type, cons: (!> [A:$tType]: ((nat > (A > ((list @ A) > (list @ A))))))).
% 1.71/1.36 thf(cons_tp_ax, axiom, (! [A:$tType,AStar:(A > (A > $o))]: ((((isPer @ A) @ AStar) => (! [N:nat]: ((! [D:A,D_prime:A]: (((D = D_prime) => (! [D0:(list @ A),D0_prime:(list @ A)]: (((((((listStar @ A) @ AStar) @ N) @ D0) @ D0_prime) => (((((listStar @ A) @ AStar) @ (suc @ N)) @ ((((cons @ A) @ N) @ D) @ D0)) @ ((((cons @ A) @ N) @ D_prime) @ D0_prime)))))))))))))).
% 1.71/1.36 thf(app_type, type, app: (!> [A:$tType]: ((nat > (nat > ((list @ A) > ((list @ A) > (list @ A)))))))).
% 1.71/1.36 thf(app_tp_ax, axiom, (! [A:$tType,AStar:(A > (A > $o))]: ((((isPer @ A) @ AStar) => (! [N:nat]: ((! [M:nat]: ((! [D:(list @ A),D_prime:(list @ A)]: (((((((listStar @ A) @ AStar) @ N) @ D) @ D_prime) => (! [D0:(list @ A),D0_prime:(list @ A)]: (((((((listStar @ A) @ AStar) @ M) @ D0) @ D0_prime) => (((((listStar @ A) @ AStar) @ ((plus @ N) @ M)) @ (((((app @ A) @ N) @ M) @ D) @ D0)) @ (((((app @ A) @ N) @ M) @ D_prime) @ D0_prime)))))))))))))))).
% 1.71/1.36 thf(peano1, axiom, (! [N:nat]: (((suc @ N) != zero)))).
% 1.71/1.36 thf(peano2, axiom, (! [N:nat]: ((! [M:nat]: (((N != M) => ((suc @ N) != (suc @ M)))))))).
% 1.71/1.36 thf(peano3, axiom, (! [P:(nat > $o)]: (((P @ zero) => ((! [M:nat]: (((P @ M) => (P @ (suc @ M))))) => (! [N:nat]: ((P @ N)))))))).
% 1.71/1.36 thf(list_induct, axiom, (! [A:$tType,AStar:(A > (A > $o))]: ((((isPer @ A) @ AStar) => (! [P:(nat > ((list @ A) > $o))]: (((! [N:nat]: ((! [D:(list @ A),D_prime:(list @ A)]: (((((((listStar @ A) @ AStar) @ N) @ D) @ D_prime) => (((P @ N) @ D) = ((P @ N) @ D_prime))))))) => (((P @ zero) @ (nil @ A)) => ((! [M:nat]: ((! [X:A]: ((! [Y:(list @ A)]: (((((((listStar @ A) @ AStar) @ M) @ Y) @ Y) => (((P @ M) @ Y) => ((P @ (suc @ M)) @ ((((cons @ A) @ M) @ X) @ Y)))))))))) => (! [N:nat]: ((! [X:(list @ A)]: (((((((listStar @ A) @ AStar) @ N) @ X) @ X) => ((P @ N) @ X))))))))))))))).
% 1.71/1.36 thf(ax1, axiom, (! [N:nat]: ((((plus @ zero) @ N) = N)))).
% 1.71/1.36 thf(ax2, axiom, (! [N:nat]: ((! [M:nat]: ((((plus @ (suc @ N)) @ M) = (suc @ ((plus @ N) @ M)))))))).
% 1.71/1.36 thf(ax3, axiom, (! [A:$tType,AStar:(A > (A > $o))]: ((((isPer @ A) @ AStar) => (! [N:nat]: ((! [X:(list @ A)]: (((((((listStar @ A) @ AStar) @ N) @ X) @ X) => (((((listStar @ A) @ AStar) @ ((plus @ zero) @ N)) @ (((((app @ A) @ zero) @ N) @ (nil @ A)) @ X)) @ X)))))))))).
% 1.71/1.36 thf(ax4, axiom, (! [A:$tType,AStar:(A > (A > $o))]: ((((isPer @ A) @ AStar) => (! [N:nat]: ((! [M:nat]: ((! [X:A]: ((! [Y:(list @ A),Z:(list @ A)]: (((((((listStar @ A) @ AStar) @ N) @ Y) @ Y) => ((((((listStar @ A) @ AStar) @ M) @ Z) @ Z) => (((((listStar @ A) @ AStar) @ ((plus @ (suc @ N)) @ M)) @ (((((app @ A) @ (suc @ N)) @ M) @ ((((cons @ A) @ N) @ X) @ Y)) @ Z)) @ ((((cons @ A) @ ((plus @ N) @ M)) @ X) @ (((((app @ A) @ N) @ M) @ Y) @ Z))))))))))))))))).
% 1.71/1.36 thf(plus_zero_r, axiom, (! [M:nat]: ((((plus @ M) @ zero) = M)))).
% 1.71/1.36 thf(list_app_nil_base, conjecture, (! [A:$tType,AStar:(A > (A > $o))]: ((((isPer @ A) @ AStar) => (((((listStar @ A) @ AStar) @ ((plus @ zero) @ zero)) @ (((((app @ A) @ zero) @ zero) @ (nil @ A)) @ (nil @ A))) @ (nil @ A)))))).
% 1.71/1.36 % SZS output end ListOfTHF for /export/starexec/sandbox/tmp/tmp.8vkXCdtgML/DTF2DTF14096.p
% 1.71/1.36 ------------------------
% 1.71/1.37 ---- Cleaned THF ---
% 1.71/1.37 thf(is_per_type,type,
% 1.71/1.37 isPer:
% 1.71/1.37 !>[A: $tType] : ( ( A > A > $o ) > $o ) ).
% 1.71/1.37
% 1.71/1.37 thf(is_per,definition,
% 1.71/1.37 ! [A: $tType,AStar: A > A > $o] :
% 1.71/1.37 ( ( isPer @ A @ AStar )
% 1.71/1.37 <=> ( ! [X: A,Y: A] :
% 1.71/1.37 ( ( AStar @ X @ Y )
% 1.71/1.37 => ( AStar @ Y @ X ) )
% 1.71/1.37 & ! [X: A,Y: A,Z: A] :
% 1.71/1.37 ( ( AStar @ X @ Y )
% 1.71/1.37 => ( ( AStar @ Y @ Z )
% 1.71/1.37 => ( AStar @ X @ Z ) ) ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(nat_type,type,
% 1.71/1.37 nat: $tType ).
% 1.71/1.37
% 1.71/1.37 thf(natStar,type,
% 1.71/1.37 natStar: nat > nat > $o ).
% 1.71/1.37
% 1.71/1.37 thf(natStar_is_eq,axiom,
% 1.71/1.37 ! [X: nat,Y: nat] :
% 1.71/1.37 ( ( natStar @ X @ Y )
% 1.71/1.37 <=> ( X = Y ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(zero_type,type,
% 1.71/1.37 zero: nat ).
% 1.71/1.37
% 1.71/1.37 thf(suc_type,type,
% 1.71/1.37 suc: nat > nat ).
% 1.71/1.37
% 1.71/1.37 thf(plus_type,type,
% 1.71/1.37 plus: nat > nat > nat ).
% 1.71/1.37
% 1.71/1.37 thf(list_type,type,
% 1.71/1.37 list: $tType > $tType ).
% 1.71/1.37
% 1.71/1.37 thf(listStar,type,
% 1.71/1.37 listStar:
% 1.71/1.37 !>[A: $tType] : ( ( A > A > $o ) > nat > ( list @ A ) > ( list @ A ) > $o ) ).
% 1.71/1.37
% 1.71/1.37 thf('\'listStar\'_is_per',axiom,
% 1.71/1.37 ! [B: $tType,BStar: B > B > $o] :
% 1.71/1.37 ( ( isPer @ B @ BStar )
% 1.71/1.37 => ! [C: nat] : ( isPer @ ( list @ B ) @ ( listStar @ B @ BStar @ C ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(nil_type,type,
% 1.71/1.37 nil:
% 1.71/1.37 !>[A: $tType] : ( list @ A ) ).
% 1.71/1.37
% 1.71/1.37 thf(nil_tp_ax,axiom,
% 1.71/1.37 ! [A: $tType,AStar: A > A > $o] :
% 1.71/1.37 ( ( isPer @ A @ AStar )
% 1.71/1.37 => ( listStar @ A @ AStar @ zero @ ( nil @ A ) @ ( nil @ A ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(cons_type,type,
% 1.71/1.37 cons:
% 1.71/1.37 !>[A: $tType] : ( nat > A > ( list @ A ) > ( list @ A ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(cons_tp_ax,axiom,
% 1.71/1.37 ! [A: $tType,AStar: A > A > $o] :
% 1.71/1.37 ( ( isPer @ A @ AStar )
% 1.71/1.37 => ! [N: nat,D: A,D_prime: A] :
% 1.71/1.37 ( ( D = D_prime )
% 1.71/1.37 => ! [D0: list @ A,D0_prime: list @ A] :
% 1.71/1.37 ( ( listStar @ A @ AStar @ N @ D0 @ D0_prime )
% 1.71/1.37 => ( listStar @ A @ AStar @ ( suc @ N ) @ ( cons @ A @ N @ D @ D0 ) @ ( cons @ A @ N @ D_prime @ D0_prime ) ) ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(app_type,type,
% 1.71/1.37 app:
% 1.71/1.37 !>[A: $tType] : ( nat > nat > ( list @ A ) > ( list @ A ) > ( list @ A ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(app_tp_ax,axiom,
% 1.71/1.37 ! [A: $tType,AStar: A > A > $o] :
% 1.71/1.37 ( ( isPer @ A @ AStar )
% 1.71/1.37 => ! [N: nat,M: nat,D: list @ A,D_prime: list @ A] :
% 1.71/1.37 ( ( listStar @ A @ AStar @ N @ D @ D_prime )
% 1.71/1.37 => ! [D0: list @ A,D0_prime: list @ A] :
% 1.71/1.37 ( ( listStar @ A @ AStar @ M @ D0 @ D0_prime )
% 1.71/1.37 => ( listStar @ A @ AStar @ ( plus @ N @ M ) @ ( app @ A @ N @ M @ D @ D0 ) @ ( app @ A @ N @ M @ D_prime @ D0_prime ) ) ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(peano1,axiom,
% 1.71/1.37 ! [N: nat] :
% 1.71/1.37 ( ( suc @ N )
% 1.71/1.37 != zero ) ).
% 1.71/1.37
% 1.71/1.37 thf(peano2,axiom,
% 1.71/1.37 ! [N: nat,M: nat] :
% 1.71/1.37 ( ( N != M )
% 1.71/1.37 => ( ( suc @ N )
% 1.71/1.37 != ( suc @ M ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(peano3,axiom,
% 1.71/1.37 ! [P: nat > $o] :
% 1.71/1.37 ( ( P @ zero )
% 1.71/1.37 => ( ! [M: nat] :
% 1.71/1.37 ( ( P @ M )
% 1.71/1.37 => ( P @ ( suc @ M ) ) )
% 1.71/1.37 => ! [N: nat] : ( P @ N ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(list_induct,axiom,
% 1.71/1.37 ! [A: $tType,AStar: A > A > $o] :
% 1.71/1.37 ( ( isPer @ A @ AStar )
% 1.71/1.37 => ! [P: nat > ( list @ A ) > $o] :
% 1.71/1.37 ( ! [N: nat,D: list @ A,D_prime: list @ A] :
% 1.71/1.37 ( ( listStar @ A @ AStar @ N @ D @ D_prime )
% 1.71/1.37 => ( ( P @ N @ D )
% 1.71/1.37 = ( P @ N @ D_prime ) ) )
% 1.71/1.37 => ( ( P @ zero @ ( nil @ A ) )
% 1.71/1.37 => ( ! [M: nat,X: A,Y: list @ A] :
% 1.71/1.37 ( ( listStar @ A @ AStar @ M @ Y @ Y )
% 1.71/1.37 => ( ( P @ M @ Y )
% 1.71/1.37 => ( P @ ( suc @ M ) @ ( cons @ A @ M @ X @ Y ) ) ) )
% 1.71/1.37 => ! [N: nat,X: list @ A] :
% 1.71/1.37 ( ( listStar @ A @ AStar @ N @ X @ X )
% 1.71/1.37 => ( P @ N @ X ) ) ) ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(ax1,axiom,
% 1.71/1.37 ! [N: nat] :
% 1.71/1.37 ( ( plus @ zero @ N )
% 1.71/1.37 = N ) ).
% 1.71/1.37
% 1.71/1.37 thf(ax2,axiom,
% 1.71/1.37 ! [N: nat,M: nat] :
% 1.71/1.37 ( ( plus @ ( suc @ N ) @ M )
% 1.71/1.37 = ( suc @ ( plus @ N @ M ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(ax3,axiom,
% 1.71/1.37 ! [A: $tType,AStar: A > A > $o] :
% 1.71/1.37 ( ( isPer @ A @ AStar )
% 1.71/1.37 => ! [N: nat,X: list @ A] :
% 1.71/1.37 ( ( listStar @ A @ AStar @ N @ X @ X )
% 1.71/1.37 => ( listStar @ A @ AStar @ ( plus @ zero @ N ) @ ( app @ A @ zero @ N @ ( nil @ A ) @ X ) @ X ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(ax4,axiom,
% 1.71/1.37 ! [A: $tType,AStar: A > A > $o] :
% 1.71/1.37 ( ( isPer @ A @ AStar )
% 1.71/1.37 => ! [N: nat,M: nat,X: A,Y: list @ A,Z: list @ A] :
% 1.71/1.37 ( ( listStar @ A @ AStar @ N @ Y @ Y )
% 1.71/1.37 => ( ( listStar @ A @ AStar @ M @ Z @ Z )
% 1.71/1.37 => ( listStar @ A @ AStar @ ( plus @ ( suc @ N ) @ M ) @ ( app @ A @ ( suc @ N ) @ M @ ( cons @ A @ N @ X @ Y ) @ Z ) @ ( cons @ A @ ( plus @ N @ M ) @ X @ ( app @ A @ N @ M @ Y @ Z ) ) ) ) ) ) ).
% 1.71/1.37
% 1.71/1.37 thf(plus_zero_r,axiom,
% 1.71/1.37 ! [M: nat] :
% 1.71/1.37 ( ( plus @ M @ zero )
% 1.71/1.37 = M ) ).
% 1.71/1.37
% 1.71/1.37 thf(list_app_nil_base,conjecture,
% 1.71/1.37 ! [A: $tType,AStar: A > A > $o] :
% 1.71/1.37 ( ( isPer @ A @ AStar )
% 1.71/1.37 => ( listStar @ A @ AStar @ ( plus @ zero @ zero ) @ ( app @ A @ zero @ zero @ ( nil @ A ) @ ( nil @ A ) ) @ ( nil @ A ) ) ) ).
% 1.71/1.37 ------------------------
% 1.71/1.39 % (14382)lrs+10_1:1_c=on:cnfonf=conj_eager:fd=off:fe=off:kws=frequency:spb=intro:i=4:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/4Mi)
% 1.71/1.39 % (14382)Instruction limit reached!
% 1.71/1.39 % (14382)------------------------------
% 1.71/1.39 % (14382)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.71/1.39 % (14382)Termination reason: Unknown
% 1.71/1.39 % (14382)Termination phase: Property scanning
% 1.71/1.39
% 1.71/1.39 % (14382)Memory used [KB]: 1023
% 1.71/1.39 % (14382)Time elapsed: 0.003 s
% 1.71/1.39 % (14382)Instructions burned: 6 (million)
% 1.71/1.39 % (14382)------------------------------
% 1.71/1.39 % (14382)------------------------------
% 1.71/1.40 % (14381)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/183Mi)
% 1.71/1.40 % (14383)dis+1010_1:1_au=on:cbe=off:chr=on:fsr=off:hfsq=on:nm=64:sos=theory:sp=weighted_frequency:i=27:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/27Mi)
% 1.71/1.40 % (14385)lrs+1002_1:128_aac=none:au=on:cnfonf=lazy_not_gen_be_off:sos=all:i=2:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/2Mi)
% 1.71/1.40 % (14387)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/18Mi)
% 1.71/1.40 % (14386)lrs+1002_1:1_au=on:bd=off:e2e=on:sd=2:sos=on:ss=axioms:i=275:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/275Mi)
% 1.71/1.40 % (14384)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/2Mi)
% 1.84/1.40 % (14385)Instruction limit reached!
% 1.84/1.40 % (14385)------------------------------
% 1.84/1.40 % (14385)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.40 % (14385)Termination reason: Unknown
% 1.84/1.40 % (14385)Termination phase: shuffling
% 1.84/1.40
% 1.84/1.40 % (14385)Memory used [KB]: 1023
% 1.84/1.40 % (14385)Time elapsed: 0.003 s
% 1.84/1.40 % (14385)Instructions burned: 2 (million)
% 1.84/1.40 % (14385)------------------------------
% 1.84/1.40 % (14385)------------------------------
% 1.84/1.40 % (14384)Instruction limit reached!
% 1.84/1.40 % (14384)------------------------------
% 1.84/1.40 % (14384)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.40 % (14384)Termination reason: Unknown
% 1.84/1.40 % (14384)Termination phase: shuffling
% 1.84/1.40
% 1.84/1.40 % (14384)Memory used [KB]: 1023
% 1.84/1.40 % (14384)Time elapsed: 0.003 s
% 1.84/1.40 % (14384)Instructions burned: 3 (million)
% 1.84/1.40 % (14384)------------------------------
% 1.84/1.40 % (14384)------------------------------
% 1.84/1.40 % (14388)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/3Mi)
% 1.84/1.40 % (14388)Instruction limit reached!
% 1.84/1.40 % (14388)------------------------------
% 1.84/1.40 % (14388)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.40 % (14388)Termination reason: Unknown
% 1.84/1.40 % (14388)Termination phase: Property scanning
% 1.84/1.40
% 1.84/1.40 % (14388)Memory used [KB]: 1023
% 1.84/1.40 % (14388)Time elapsed: 0.002 s
% 1.84/1.40 % (14388)Instructions burned: 4 (million)
% 1.84/1.40 % (14388)------------------------------
% 1.84/1.40 % (14388)------------------------------
% 1.84/1.41 % (14387)Instruction limit reached!
% 1.84/1.41 % (14387)------------------------------
% 1.84/1.41 % (14387)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.41 % (14387)Termination reason: Unknown
% 1.84/1.41 % (14387)Termination phase: Saturation
% 1.84/1.41
% 1.84/1.41 % (14387)Memory used [KB]: 5628
% 1.84/1.41 % (14387)Time elapsed: 0.013 s
% 1.84/1.41 % (14387)Instructions burned: 19 (million)
% 1.84/1.41 % (14387)------------------------------
% 1.84/1.41 % (14387)------------------------------
% 1.84/1.41 % (14391)dis+21_1:1_cbe=off:cnfonf=off:fs=off:fsr=off:hud=1:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/3Mi)
% 1.84/1.41 % (14391)Instruction limit reached!
% 1.84/1.41 % (14391)------------------------------
% 1.84/1.41 % (14391)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.41 % (14391)Termination reason: Unknown
% 1.84/1.41 % (14391)Termination phase: shuffling
% 1.84/1.41
% 1.84/1.41 % (14391)Memory used [KB]: 1023
% 1.84/1.41 % (14391)Time elapsed: 0.002 s
% 1.84/1.41 % (14391)Instructions burned: 3 (million)
% 1.84/1.41 % (14391)------------------------------
% 1.84/1.41 % (14391)------------------------------
% 1.84/1.41 % (14383)Instruction limit reached!
% 1.84/1.41 % (14383)------------------------------
% 1.84/1.41 % (14383)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.41 % (14383)Termination reason: Unknown
% 1.84/1.41 % (14383)Termination phase: Saturation
% 1.84/1.41
% 1.84/1.41 % (14383)Memory used [KB]: 5756
% 1.84/1.41 % (14383)Time elapsed: 0.020 s
% 1.84/1.41 % (14383)Instructions burned: 27 (million)
% 1.84/1.41 % (14383)------------------------------
% 1.84/1.41 % (14383)------------------------------
% 1.84/1.41 % (14389)lrs+1002_1:1_cnfonf=lazy_not_be_gen:hud=14:prag=on:sp=weighted_frequency:tnu=1:i=37:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/37Mi)
% 1.84/1.42 % (14390)lrs+2_16:1_acc=model:au=on:bd=off:c=on:e2e=on:nm=2:sos=all:i=15:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/15Mi)
% 1.84/1.42 % Exception at run slice level
% 1.84/1.42 User error: Vampire does not support full TH1. This benchmark is either outside of the TH1 fragment, or outside of the fragment supported by Vampire
% 1.84/1.42 % (14393)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/7Mi)
% 1.84/1.42 % (14393)Instruction limit reached!
% 1.84/1.42 % (14393)------------------------------
% 1.84/1.42 % (14393)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.42 % (14393)Termination reason: Unknown
% 1.84/1.42 % (14393)Termination phase: Property scanning
% 1.84/1.42
% 1.84/1.42 % (14393)Memory used [KB]: 1023
% 1.84/1.42 % (14393)Time elapsed: 0.003 s
% 1.84/1.42 % (14393)Instructions burned: 7 (million)
% 1.84/1.42 % (14393)------------------------------
% 1.84/1.42 % (14393)------------------------------
% 1.84/1.42 % (14392)lrs+1002_1:1_aac=none:au=on:cnfonf=lazy_gen:plsq=on:plsqc=1:plsqr=4203469,65536:i=1041:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/1041Mi)
% 1.84/1.42 % (14390)Instruction limit reached!
% 1.84/1.42 % (14390)------------------------------
% 1.84/1.42 % (14390)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.42 % (14390)Termination reason: Unknown
% 1.84/1.42 % (14390)Termination phase: Saturation
% 1.84/1.42
% 1.84/1.42 % (14390)Memory used [KB]: 5756
% 1.84/1.42 % (14390)Time elapsed: 0.011 s
% 1.84/1.42 % (14390)Instructions burned: 15 (million)
% 1.84/1.42 % (14390)------------------------------
% 1.84/1.42 % (14390)------------------------------
% 1.84/1.43 % Exception at run slice level
% 1.84/1.43 User error: Vampire does not support full TH1. This benchmark is either outside of the TH1 fragment, or outside of the fragment supported by Vampire
% 1.84/1.43 % (14396)lrs+2_1:1_apa=on:au=on:bd=preordered:cnfonf=off:cs=on:ixr=off:sos=on:i=3:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/3Mi)
% 1.84/1.43 % (14394)lrs+10_1:1_acc=on:amm=sco:cs=on:tgt=full:i=16:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/16Mi)
% 1.84/1.43 % (14396)Instruction limit reached!
% 1.84/1.43 % (14396)------------------------------
% 1.84/1.43 % (14396)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.43 % (14396)Termination reason: Unknown
% 1.84/1.43 % (14396)Termination phase: Property scanning
% 1.84/1.43
% 1.84/1.43 % (14396)Memory used [KB]: 1023
% 1.84/1.43 % (14396)Time elapsed: 0.002 s
% 1.84/1.43 % (14396)Instructions burned: 4 (million)
% 1.84/1.43 % (14396)------------------------------
% 1.84/1.43 % (14396)------------------------------
% 1.84/1.43 % (14395)lrs+21_1:1_au=on:cnfonf=off:fd=preordered:fe=off:fsr=off:hud=11:inj=on:kws=precedence:s2pl=no:sp=weighted_frequency:tgt=full:i=3:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/3Mi)
% 1.84/1.44 % (14395)Instruction limit reached!
% 1.84/1.44 % (14395)------------------------------
% 1.84/1.44 % (14395)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.44 % (14395)Termination reason: Unknown
% 1.84/1.44 % (14395)Termination phase: Property scanning
% 1.84/1.44
% 1.84/1.44 % (14395)Memory used [KB]: 1023
% 1.84/1.44 % (14395)Time elapsed: 0.004 s
% 1.84/1.44 % (14395)Instructions burned: 4 (million)
% 1.84/1.44 % (14395)------------------------------
% 1.84/1.44 % (14395)------------------------------
% 1.84/1.44 % (14398)dis+1002_1:1_add=large:cnfonf=lazy_pi_sigma_gen:fe=off:prag=on:i=3:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/3Mi)
% 1.84/1.44 % Exception at run slice level
% 1.84/1.44 User error: Vampire does not support full TH1. This benchmark is either outside of the TH1 fragment, or outside of the fragment supported by Vampire
% 1.84/1.44 % (14394)Instruction limit reached!
% 1.84/1.44 % (14394)------------------------------
% 1.84/1.44 % (14394)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.44 % (14394)Termination reason: Unknown
% 1.84/1.44 % (14394)Termination phase: Saturation
% 1.84/1.44
% 1.84/1.44 % (14394)Memory used [KB]: 5628
% 1.84/1.44 % (14394)Time elapsed: 0.011 s
% 1.84/1.44 % (14394)Instructions burned: 16 (million)
% 1.84/1.44 % (14394)------------------------------
% 1.84/1.44 % (14394)------------------------------
% 1.84/1.44 % (14399)dis+1004_1:1_cha=on:cs=on:fe=off:hud=1:i=4:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/4Mi)
% 1.84/1.44 % (14397)lrs+10_1:1_cnfonf=off:cs=on:hud=3:prag=on:sup=off:i=7:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/7Mi)
% 1.84/1.44 % (14399)Instruction limit reached!
% 1.84/1.44 % (14399)------------------------------
% 1.84/1.44 % (14399)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.44 % (14399)Termination reason: Unknown
% 1.84/1.44 % (14399)Termination phase: Property scanning
% 1.84/1.44
% 1.84/1.44 % (14399)Memory used [KB]: 1023
% 1.84/1.44 % (14399)Time elapsed: 0.002 s
% 1.84/1.44 % (14399)Instructions burned: 4 (million)
% 1.84/1.44 % (14399)------------------------------
% 1.84/1.44 % (14399)------------------------------
% 1.84/1.45 % (14397)Instruction limit reached!
% 1.84/1.45 % (14397)------------------------------
% 1.84/1.45 % (14397)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.45 % (14397)Termination reason: Unknown
% 1.84/1.45 % (14397)Termination phase: Property scanning
% 1.84/1.45
% 1.84/1.45 % (14397)Memory used [KB]: 1023
% 1.84/1.45 % (14397)Time elapsed: 0.006 s
% 1.84/1.45 % (14397)Instructions burned: 7 (million)
% 1.84/1.45 % (14397)------------------------------
% 1.84/1.45 % (14397)------------------------------
% 1.84/1.45 % (14401)lrs+10_1:1_e2e=on:sd=1:sgt=8:ss=axioms:i=710:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/710Mi)
% 1.84/1.45 % (14403)dis+1002_5:1_au=on:bd=off:e2e=on:fde=none:fs=off:fsr=off:sos=on:i=902:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/902Mi)
% 1.84/1.45 % (14400)lrs+1002_1:1_anc=all_dependent:au=on:cbe=off:fde=unused:ntd=on:i=18:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/18Mi)
% 1.84/1.46 % (14402)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/6Mi)
% 1.84/1.46 % (14402)Instruction limit reached!
% 1.84/1.46 % (14402)------------------------------
% 1.84/1.46 % (14402)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.46 % (14402)Termination reason: Unknown
% 1.84/1.46 % (14402)Termination phase: Preprocessing 3
% 1.84/1.46
% 1.84/1.46 % (14402)Memory used [KB]: 1023
% 1.84/1.46 % (14402)Time elapsed: 0.005 s
% 1.84/1.46 % (14402)Instructions burned: 6 (million)
% 1.84/1.46 % (14402)------------------------------
% 1.84/1.46 % (14402)------------------------------
% 1.84/1.46 % (14404)dis+21_1:8_apa=on:cnfonf=off:fd=off:fsr=off:hud=0:ins=1:kws=inv_frequency:nwc=10.0:ss=axioms:st=5.0:i=21:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/21Mi)
% 1.84/1.46 % (14400)Instruction limit reached!
% 1.84/1.46 % (14400)------------------------------
% 1.84/1.46 % (14400)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.46 % (14400)Termination reason: Unknown
% 1.84/1.46 % (14400)Termination phase: Saturation
% 1.84/1.46
% 1.84/1.46 % (14400)Memory used [KB]: 5628
% 1.84/1.46 % (14400)Time elapsed: 0.012 s
% 1.84/1.46 % (14400)Instructions burned: 18 (million)
% 1.84/1.46 % (14400)------------------------------
% 1.84/1.46 % (14400)------------------------------
% 1.84/1.48 % (14404)Instruction limit reached!
% 1.84/1.48 % (14404)------------------------------
% 1.84/1.48 % (14404)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.48 % (14404)Termination reason: Unknown
% 1.84/1.48 % (14404)Termination phase: Saturation
% 1.84/1.48
% 1.84/1.48 % (14404)Memory used [KB]: 5628
% 1.84/1.48 % (14404)Time elapsed: 0.014 s
% 1.84/1.48 % (14404)Instructions burned: 21 (million)
% 1.84/1.48 % (14404)------------------------------
% 1.84/1.48 % (14404)------------------------------
% 1.84/1.48 % (14405)dis+10_1:1_cnfonf=lazy_gen:fe=off:i=5:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/5Mi)
% 1.84/1.48 % Exception at run slice level
% 1.84/1.48 User error: Vampire does not support full TH1. This benchmark is either outside of the TH1 fragment, or outside of the fragment supported by Vampire
% 1.84/1.48 % (14406)lrs+2_1:1_cnfonf=lazy_not_gen_be_off:cs=on:fe=off:hud=10:inj=on:ins=3:plsq=on:plsqc=1:sd=10:ss=axioms:tnu=1:i=6:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/6Mi)
% 1.84/1.48 % Exception at run slice level
% 1.84/1.48 User error: Vampire does not support full TH1. This benchmark is either outside of the TH1 fragment, or outside of the fragment supported by Vampire
% 1.84/1.49 % (14407)lrs+1002_1:128_au=on:c=on:fsr=off:piset=equals:i=377:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/377Mi)
% 1.84/1.50 % (14381)Instruction limit reached!
% 1.84/1.50 % (14381)------------------------------
% 1.84/1.50 % (14381)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.50 % (14381)Termination reason: Unknown
% 1.84/1.50 % (14381)Termination phase: Saturation
% 1.84/1.50
% 1.84/1.50 % (14381)Memory used [KB]: 6268
% 1.84/1.50 % (14381)Time elapsed: 0.102 s
% 1.84/1.50 % (14381)Instructions burned: 185 (million)
% 1.84/1.50 % (14381)------------------------------
% 1.84/1.50 % (14381)------------------------------
% 1.84/1.50 % (14408)dis+1010_1:4_atotf=0.2:c=on:cbe=off:cnfonf=lazy_simp:fe=off:ins=2:ntd=on:s2a=on:s2at=5.0:sgt=5:ss=axioms:st=1.5:i=779:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/779Mi)
% 1.84/1.50 % Exception at run slice level
% 1.84/1.50 User error: Vampire does not support full TH1. This benchmark is either outside of the TH1 fragment, or outside of the fragment supported by Vampire
% 1.84/1.50 % (14409)lrs+10_1:1_cnfonf=lazy_not_be_gen:ntd=on:sp=const_min:ss=axioms:sup=off:i=19:si=on:rtra=on_0 on DTF2THF_14096 for (2999ds/19Mi)
% 1.84/1.50 % (14386)Instruction limit reached!
% 1.84/1.50 % (14386)------------------------------
% 1.84/1.50 % (14386)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.50 % (14386)Termination reason: Unknown
% 1.84/1.50 % (14386)Termination phase: Saturation
% 1.84/1.50
% 1.84/1.50 % (14386)Memory used [KB]: 5756
% 1.84/1.50 % (14386)Time elapsed: 0.108 s
% 1.84/1.50 % (14386)Instructions burned: 278 (million)
% 1.84/1.50 % (14386)------------------------------
% 1.84/1.50 % (14386)------------------------------
% 1.84/1.50 % Exception at run slice level
% 1.84/1.50 User error: Vampire does not support full TH1. This benchmark is either outside of the TH1 fragment, or outside of the fragment supported by Vampire
% 1.84/1.51 % (14410)lrs+1010_1:1_au=on:s2a=on:sd=1:sgt=50:ss=axioms:i=879:si=on:rtra=on_0 on DTF2THF_14096 for (2998ds/879Mi)
% 1.84/1.51 % (14412)ott+21_1:1_apa=on:au=on:cnfonf=off:sos=on:i=3:si=on:rtra=on_0 on DTF2THF_14096 for (2998ds/3Mi)
% 1.84/1.51 % (14412)Instruction limit reached!
% 1.84/1.51 % (14412)------------------------------
% 1.84/1.51 % (14412)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.51 % (14412)Termination reason: Unknown
% 1.84/1.51 % (14412)Termination phase: Property scanning
% 1.84/1.51
% 1.84/1.51 % (14412)Memory used [KB]: 1023
% 1.84/1.51 % (14412)Time elapsed: 0.003 s
% 1.84/1.51 % (14412)Instructions burned: 4 (million)
% 1.84/1.51 % (14412)------------------------------
% 1.84/1.51 % (14412)------------------------------
% 1.84/1.52 % (14411)dis+1002_1:128_acc=on:er=filter:i=17:si=on:rtra=on_0 on DTF2THF_14096 for (2998ds/17Mi)
% 1.84/1.52 % (14413)lrs+1010_1:8_cnfonf=off:hud=1:inj=on:tnu=5:i=30:si=on:rtra=on_0 on DTF2THF_14096 for (2998ds/30Mi)
% 1.84/1.52 % (14414)dis+10_1:1_ixr=off:plsq=on:plsqc=1:plsqr=32,1:s2a=on:i=127:si=on:rtra=on_0 on DTF2THF_14096 for (2998ds/127Mi)
% 1.84/1.53 % (14411)Instruction limit reached!
% 1.84/1.53 % (14411)------------------------------
% 1.84/1.53 % (14411)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.53 % (14411)Termination reason: Unknown
% 1.84/1.53 % (14411)Termination phase: Saturation
% 1.84/1.53
% 1.84/1.53 % (14411)Memory used [KB]: 5756
% 1.84/1.53 % (14411)Time elapsed: 0.012 s
% 1.84/1.53 % (14411)Instructions burned: 18 (million)
% 1.84/1.53 % (14411)------------------------------
% 1.84/1.53 % (14411)------------------------------
% 1.84/1.53 % (14413)Instruction limit reached!
% 1.84/1.53 % (14413)------------------------------
% 1.84/1.53 % (14413)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.53 % (14413)Termination reason: Unknown
% 1.84/1.53 % (14413)Termination phase: Saturation
% 1.84/1.53
% 1.84/1.53 % (14413)Memory used [KB]: 5756
% 1.84/1.53 % (14413)Time elapsed: 0.017 s
% 1.84/1.53 % (14413)Instructions burned: 30 (million)
% 1.84/1.53 % (14413)------------------------------
% 1.84/1.53 % (14413)------------------------------
% 1.84/1.54 % (14415)lrs+1002_1:1_au=on:cbe=off:cnfonf=conj_eager:cond=on:hi=on:i=100:si=on:rtra=on_0 on DTF2THF_14096 for (2998ds/100Mi)
% 1.84/1.55 % (14416)dis+10_1:1_anc=none:cnfonf=lazy_gen:fd=preordered:fe=off:hud=10:ins=3:ixr=off:nwc=5.0:plsq=on:plsqc=1:plsqr=32,1:sp=const_frequency:uhcvi=on:i=3:si=on:rtra=on_0 on DTF2THF_14096 for (2998ds/3Mi)
% 1.84/1.55 % (14416)Instruction limit reached!
% 1.84/1.55 % (14416)------------------------------
% 1.84/1.55 % (14416)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.55 % (14416)Termination reason: Unknown
% 1.84/1.55 % (14416)Termination phase: shuffling
% 1.84/1.55
% 1.84/1.55 % (14416)Memory used [KB]: 1023
% 1.84/1.55 % (14416)Time elapsed: 0.002 s
% 1.84/1.55 % (14416)Instructions burned: 3 (million)
% 1.84/1.55 % (14416)------------------------------
% 1.84/1.55 % (14416)------------------------------
% 1.84/1.56 % (14417)lrs+10_8:1_au=on:avsq=on:e2e=on:ins=3:s2a=on:s2at=3.0:ss=axioms:i=20:si=on:rtra=on_0 on DTF2THF_14096 for (2998ds/20Mi)
% 1.84/1.56 % (14414)Instruction limit reached!
% 1.84/1.56 % (14414)------------------------------
% 1.84/1.56 % (14414)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.56 % (14414)Termination reason: Unknown
% 1.84/1.56 % (14414)Termination phase: Saturation
% 1.84/1.56
% 1.84/1.56 % (14414)Memory used [KB]: 6268
% 1.84/1.56 % (14414)Time elapsed: 0.064 s
% 1.84/1.56 % (14414)Instructions burned: 129 (million)
% 1.84/1.56 % (14414)------------------------------
% 1.84/1.56 % (14414)------------------------------
% 1.84/1.57 % (14417)Instruction limit reached!
% 1.84/1.57 % (14417)------------------------------
% 1.84/1.57 % (14417)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.57 % (14417)Termination reason: Unknown
% 1.84/1.57 % (14417)Termination phase: Saturation
% 1.84/1.57
% 1.84/1.57 % (14417)Memory used [KB]: 5628
% 1.84/1.57 % (14417)Time elapsed: 0.009 s
% 1.84/1.57 % (14417)Instructions burned: 21 (million)
% 1.84/1.57 % (14417)------------------------------
% 1.84/1.57 % (14417)------------------------------
% 1.84/1.57 % (14410)First to succeed.
% 1.84/1.57 % (14410)Refutation found. Thanks to Tanya!
% 1.84/1.57 % SZS status Theorem for DTF2THF_14096
% 1.84/1.57 % SZS output start Proof for DTF2THF_14096
% 1.84/1.57 thf(type_def_6, type, nat: $tType).
% 1.84/1.57 thf(type_def_7, type, list: ($tType) > $tType).
% 1.84/1.57 thf(type_def_8, type, sK5: $tType).
% 1.84/1.57 thf(func_def_0, type, isPer: !>[X0: $tType]:((X0 > X0 > $o) > $o)).
% 1.84/1.57 thf(func_def_2, type, nat: $tType).
% 1.84/1.57 thf(func_def_3, type, natStar: nat > nat > $o).
% 1.84/1.57 thf(func_def_4, type, zero: nat).
% 1.84/1.57 thf(func_def_5, type, suc: nat > nat).
% 1.84/1.57 thf(func_def_6, type, plus: nat > nat > nat).
% 1.84/1.57 thf(func_def_7, type, list: ($tType) > $tType).
% 1.84/1.57 thf(func_def_8, type, listStar: !>[X0: $tType]:((X0 > X0 > $o) > nat > list @ X0 > list @ X0 > $o)).
% 1.84/1.57 thf(func_def_9, type, nil: !>[X0: $tType]:(list @ X0)).
% 1.84/1.57 thf(func_def_10, type, cons: !>[X0: $tType]:(nat > X0 > list @ X0 > list @ X0)).
% 1.84/1.57 thf(func_def_11, type, app: !>[X0: $tType]:(nat > nat > list @ X0 > list @ X0 > list @ X0)).
% 1.84/1.57 thf(func_def_14, type, sK0: !>[X0: $tType]:((X0 > X0 > $o) > X0)).
% 1.84/1.57 thf(func_def_15, type, sK1: !>[X0: $tType]:((X0 > X0 > $o) > X0)).
% 1.84/1.57 thf(func_def_16, type, sK2: !>[X0: $tType]:((X0 > X0 > $o) > X0)).
% 1.84/1.57 thf(func_def_17, type, sK3: !>[X0: $tType]:((X0 > X0 > $o) > X0)).
% 1.84/1.57 thf(func_def_18, type, sK4: !>[X0: $tType]:((X0 > X0 > $o) > X0)).
% 1.84/1.57 thf(func_def_19, type, sK6: sK5 > sK5 > $o).
% 1.84/1.57 thf(func_def_20, type, sK7: (nat > $o) > nat).
% 1.84/1.57 thf(func_def_21, type, sK8: !>[X0: $tType]:((nat > list @ X0 > $o) > (X0 > X0 > $o) > nat)).
% 1.84/1.57 thf(func_def_22, type, sK9: !>[X0: $tType]:((nat > list @ X0 > $o) > (X0 > X0 > $o) > list @ X0)).
% 1.84/1.57 thf(func_def_23, type, sK10: !>[X0: $tType]:((nat > list @ X0 > $o) > (X0 > X0 > $o) > list @ X0)).
% 1.84/1.57 thf(func_def_24, type, sK11: !>[X0: $tType]:((nat > list @ X0 > $o) > (X0 > X0 > $o) > nat)).
% 1.84/1.57 thf(func_def_25, type, sK12: !>[X0: $tType]:((nat > list @ X0 > $o) > (X0 > X0 > $o) > X0)).
% 1.84/1.57 thf(func_def_26, type, sK13: !>[X0: $tType]:((nat > list @ X0 > $o) > (X0 > X0 > $o) > list @ X0)).
% 1.84/1.57 thf(func_def_29, type, ph15: !>[X0: $tType]:(X0)).
% 1.84/1.57 thf(f528,plain,(
% 1.84/1.57 $false),
% 1.84/1.57 inference(subsumption_resolution,[status(thm)],[f527,f115])).
% 1.84/1.57 thf(f115,plain,(
% 1.84/1.57 ((listStar @ sK5 @ sK6 @ zero @ (app @ sK5 @ zero @ zero @ nil @ sK5 @ nil @ sK5) @ nil @ sK5) != $true)),
% 1.84/1.57 inference(forward_demodulation,[status(thm)],[f89,f104])).
% 1.84/1.57 thf(f104,plain,(
% 1.84/1.57 ( ! [X0 : nat] : (((plus @ X0 @ zero) = X0)) )),
% 1.84/1.57 inference(cnf_transformation,[status(thm)],[f42])).
% 1.84/1.57 thf(f42,plain,(
% 1.84/1.57 ! [X0 : nat] : ((plus @ X0 @ zero) = X0)),
% 1.84/1.57 inference(rectify,[status(thm)],[f15])).
% 1.84/1.57 thf(f15,axiom,(
% 1.84/1.57 ! [X13 : nat] : ((plus @ X13 @ zero) = X13)),
% 1.84/1.57 file('/export/starexec/sandbox/tmp/tmp.8vkXCdtgML/DTF2THF_14096.p',plus_zero_r)).
% 1.84/1.57 thf(f89,plain,(
% 1.84/1.57 ((listStar @ sK5 @ sK6 @ (plus @ zero @ zero) @ (app @ sK5 @ zero @ zero @ nil @ sK5 @ nil @ sK5) @ nil @ sK5) != $true)),
% 1.84/1.57 inference(cnf_transformation,[status(thm)],[f69])).
% 1.84/1.57 thf(f69,plain,(
% 1.84/1.57 ((isPer @ sK5 @ sK6) = $true) & ((listStar @ sK5 @ sK6 @ (plus @ zero @ zero) @ (app @ sK5 @ zero @ zero @ nil @ sK5 @ nil @ sK5) @ nil @ sK5) != $true)),
% 1.84/1.57 inference(skolemisation,[status(esa),new_symbols(skolem,[sK5,sK6])],[f58,f68])).
% 1.84/1.57 thf(f68,plain,(
% 1.84/1.57 ? [X0 : $tType,X1 : X0 > X0 > $o] : (((isPer @ X0 @ X1) = $true) & ((listStar @ X0 @ X1 @ (plus @ zero @ zero) @ (app @ X0 @ zero @ zero @ nil @ X0 @ nil @ X0) @ nil @ X0) != $true)) => (((isPer @ sK5 @ sK6) = $true) & ((listStar @ sK5 @ sK6 @ (plus @ zero @ zero) @ (app @ sK5 @ zero @ zero @ nil @ sK5 @ nil @ sK5) @ nil @ sK5) != $true))),
% 1.84/1.57 introduced(definition,[],[choice_axiom])).
% 1.84/1.57 thf(f58,plain,(
% 1.84/1.57 ? [X0 : $tType,X1 : X0 > X0 > $o] : (((isPer @ X0 @ X1) = $true) & ((listStar @ X0 @ X1 @ (plus @ zero @ zero) @ (app @ X0 @ zero @ zero @ nil @ X0 @ nil @ X0) @ nil @ X0) != $true))),
% 1.84/1.57 inference(ennf_transformation,[status(thm)],[f36])).
% 1.84/1.57 thf(f36,plain,(
% 1.84/1.57 ~! [X0 : $tType,X1 : X0 > X0 > $o] : (((isPer @ X0 @ X1) = $true) => ((listStar @ X0 @ X1 @ (plus @ zero @ zero) @ (app @ X0 @ zero @ zero @ nil @ X0 @ nil @ X0) @ nil @ X0) = $true))),
% 1.84/1.57 inference(fool_elimination,[status(thm)],[f35])).
% 1.84/1.57 thf(f35,plain,(
% 1.84/1.57 ~! [X0 : $tType,X1 : X0 > X0 > $o] : ((isPer @ X0 @ X1) => (listStar @ X0 @ X1 @ (plus @ zero @ zero) @ (app @ X0 @ zero @ zero @ nil @ X0 @ nil @ X0) @ nil @ X0))),
% 1.84/1.57 inference(rectify,[status(thm)],[f17])).
% 1.84/1.57 thf(f17,negated_conjecture,(
% 1.84/1.57 ~! [X0 : $tType,X1 : X0 > X0 > $o] : ((isPer @ X0 @ X1) => (listStar @ X0 @ X1 @ (plus @ zero @ zero) @ (app @ X0 @ zero @ zero @ nil @ X0 @ nil @ X0) @ nil @ X0))),
% 1.84/1.57 inference(negated_conjecture,[status(cth)],[f16])).
% 1.84/1.57 thf(f16,conjecture,(
% 1.84/1.57 ! [X0 : $tType,X1 : X0 > X0 > $o] : ((isPer @ X0 @ X1) => (listStar @ X0 @ X1 @ (plus @ zero @ zero) @ (app @ X0 @ zero @ zero @ nil @ X0 @ nil @ X0) @ nil @ X0))),
% 1.84/1.57 file('/export/starexec/sandbox/tmp/tmp.8vkXCdtgML/DTF2THF_14096.p',list_app_nil_base)).
% 1.84/1.57 thf(f527,plain,(
% 1.84/1.57 ((listStar @ sK5 @ sK6 @ zero @ (app @ sK5 @ zero @ zero @ nil @ sK5 @ nil @ sK5) @ nil @ sK5) = $true)),
% 1.84/1.57 inference(subsumption_resolution,[status(thm)],[f526,f90])).
% 1.84/1.57 thf(f90,plain,(
% 1.84/1.57 ((isPer @ sK5 @ sK6) = $true)),
% 1.84/1.57 inference(cnf_transformation,[status(thm)],[f69])).
% 1.84/1.57 thf(f526,plain,(
% 1.84/1.57 ((isPer @ sK5 @ sK6) != $true) | ((listStar @ sK5 @ sK6 @ zero @ (app @ sK5 @ zero @ zero @ nil @ sK5 @ nil @ sK5) @ nil @ sK5) = $true)),
% 1.84/1.57 inference(trivial_inequality_removal,[status(thm)],[f521])).
% 1.84/1.57 thf(f521,plain,(
% 1.84/1.57 ($true != $true) | ((isPer @ sK5 @ sK6) != $true) | ((listStar @ sK5 @ sK6 @ zero @ (app @ sK5 @ zero @ zero @ nil @ sK5 @ nil @ sK5) @ nil @ sK5) = $true)),
% 1.84/1.57 inference(superposition,[status(thm)],[f116,f260])).
% 1.84/1.57 thf(f260,plain,(
% 1.84/1.57 ((listStar @ sK5 @ sK6 @ zero @ nil @ sK5 @ nil @ sK5) = $true)),
% 1.84/1.57 inference(trivial_inequality_removal,[status(thm)],[f259])).
% 1.84/1.57 thf(f259,plain,(
% 1.84/1.57 ($true != $true) | ((listStar @ sK5 @ sK6 @ zero @ nil @ sK5 @ nil @ sK5) = $true)),
% 1.84/1.57 inference(superposition,[status(thm)],[f92,f90])).
% 1.84/1.57 thf(f92,plain,(
% 1.84/1.57 ( ! [X0 : $tType,X1 : X0 > X0 > $o] : (((isPer @ X0 @ X1) != $true) | ((listStar @ X0 @ X1 @ zero @ nil @ X0 @ nil @ X0) = $true)) )),
% 1.84/1.57 inference(cnf_transformation,[status(thm)],[f52])).
% 1.84/1.57 thf(f52,plain,(
% 1.84/1.57 ! [X0 : $tType,X1 : X0 > X0 > $o] : (((listStar @ X0 @ X1 @ zero @ nil @ X0 @ nil @ X0) = $true) | ((isPer @ X0 @ X1) != $true))),
% 1.84/1.57 inference(ennf_transformation,[status(thm)],[f32])).
% 1.84/1.57 thf(f32,plain,(
% 1.84/1.57 ! [X0 : $tType,X1 : X0 > X0 > $o] : (((isPer @ X0 @ X1) = $true) => ((listStar @ X0 @ X1 @ zero @ nil @ X0 @ nil @ X0) = $true))),
% 1.84/1.57 inference(fool_elimination,[status(thm)],[f31])).
% 1.84/1.57 thf(f31,plain,(
% 1.84/1.57 ! [X0 : $tType,X1 : X0 > X0 > $o] : ((isPer @ X0 @ X1) => (listStar @ X0 @ X1 @ zero @ nil @ X0 @ nil @ X0))),
% 1.84/1.57 inference(rectify,[status(thm)],[f4])).
% 1.84/1.57 thf(f4,axiom,(
% 1.84/1.57 ! [X0 : $tType,X1 : X0 > X0 > $o] : ((isPer @ X0 @ X1) => (listStar @ X0 @ X1 @ zero @ nil @ X0 @ nil @ X0))),
% 1.84/1.57 file('/export/starexec/sandbox/tmp/tmp.8vkXCdtgML/DTF2THF_14096.p',nil_tp_ax)).
% 1.84/1.57 thf(f116,plain,(
% 1.84/1.57 ( ! [X0 : $tType,X2 : nat,X3 : list @ X0,X1 : X0 > X0 > $o] : (((listStar @ X0 @ X1 @ X2 @ X3 @ X3) != $true) | ((isPer @ X0 @ X1) != $true) | ((listStar @ X0 @ X1 @ X2 @ (app @ X0 @ zero @ X2 @ nil @ X0 @ X3) @ X3) = $true)) )),
% 1.84/1.57 inference(backward_demodulation,[status(thm)],[f91,f77])).
% 1.84/1.57 thf(f77,plain,(
% 1.84/1.57 ( ! [X0 : nat] : (((plus @ zero @ X0) = X0)) )),
% 1.84/1.57 inference(cnf_transformation,[status(thm)],[f43])).
% 1.84/1.57 thf(f43,plain,(
% 1.84/1.57 ! [X0 : nat] : ((plus @ zero @ X0) = X0)),
% 1.84/1.57 inference(rectify,[status(thm)],[f11])).
% 1.84/1.57 thf(f11,axiom,(
% 1.84/1.57 ! [X8 : nat] : ((plus @ zero @ X8) = X8)),
% 1.84/1.57 file('/export/starexec/sandbox/tmp/tmp.8vkXCdtgML/DTF2THF_14096.p',ax1)).
% 1.84/1.57 thf(f91,plain,(
% 1.84/1.57 ( ! [X0 : $tType,X2 : nat,X3 : list @ X0,X1 : X0 > X0 > $o] : (((listStar @ X0 @ X1 @ (plus @ zero @ X2) @ (app @ X0 @ zero @ X2 @ nil @ X0 @ X3) @ X3) = $true) | ((listStar @ X0 @ X1 @ X2 @ X3 @ X3) != $true) | ((isPer @ X0 @ X1) != $true)) )),
% 1.84/1.57 inference(cnf_transformation,[status(thm)],[f48])).
% 1.84/1.57 thf(f48,plain,(
% 1.84/1.57 ! [X0 : $tType,X1 : X0 > X0 > $o] : (((isPer @ X0 @ X1) != $true) | ! [X2 : nat,X3 : list @ X0] : (((listStar @ X0 @ X1 @ X2 @ X3 @ X3) != $true) | ((listStar @ X0 @ X1 @ (plus @ zero @ X2) @ (app @ X0 @ zero @ X2 @ nil @ X0 @ X3) @ X3) = $true)))),
% 1.84/1.57 inference(ennf_transformation,[status(thm)],[f34])).
% 1.84/1.57 thf(f34,plain,(
% 1.84/1.57 ! [X0 : $tType,X1 : X0 > X0 > $o] : (((isPer @ X0 @ X1) = $true) => ! [X2 : nat,X3 : list @ X0] : (((listStar @ X0 @ X1 @ X2 @ X3 @ X3) = $true) => ((listStar @ X0 @ X1 @ (plus @ zero @ X2) @ (app @ X0 @ zero @ X2 @ nil @ X0 @ X3) @ X3) = $true)))),
% 1.84/1.57 inference(fool_elimination,[status(thm)],[f33])).
% 1.84/1.57 thf(f33,plain,(
% 1.84/1.57 ! [X0 : $tType,X1 : X0 > X0 > $o] : ((isPer @ X0 @ X1) => ! [X2 : nat,X3 : list @ X0] : ((listStar @ X0 @ X1 @ X2 @ X3 @ X3) => (listStar @ X0 @ X1 @ (plus @ zero @ X2) @ (app @ X0 @ zero @ X2 @ nil @ X0 @ X3) @ X3)))),
% 1.84/1.57 inference(rectify,[status(thm)],[f13])).
% 1.84/1.57 thf(f13,axiom,(
% 1.84/1.57 ! [X0 : $tType,X1 : X0 > X0 > $o] : ((isPer @ X0 @ X1) => ! [X8 : nat,X2 : list @ X0] : ((listStar @ X0 @ X1 @ X8 @ X2 @ X2) => (listStar @ X0 @ X1 @ (plus @ zero @ X8) @ (app @ X0 @ zero @ X8 @ nil @ X0 @ X2) @ X2)))),
% 1.84/1.57 file('/export/starexec/sandbox/tmp/tmp.8vkXCdtgML/DTF2THF_14096.p',ax3)).
% 1.84/1.57 % SZS output end Proof for DTF2THF_14096
% 1.84/1.57 % (14410)------------------------------
% 1.84/1.57 % (14410)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 1.84/1.57 % (14410)Termination reason: Refutation
% 1.84/1.57
% 1.84/1.57 % (14410)Memory used [KB]: 6012
% 1.84/1.57 % (14410)Time elapsed: 0.064 s
% 1.84/1.57 % (14410)Instructions burned: 183 (million)
% 1.84/1.57 % (14410)------------------------------
% 1.84/1.57 % (14410)------------------------------
% 1.84/1.57 % (14380)Success in time 0.174 s
%------------------------------------------------------------------------------