TSTP Solution File: CAT003-3 by Otter---3.3

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Otter---3.3
% Problem  : CAT003-3 : TPTP v8.1.0. Released v1.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : otter-tptp-script %s

% Computer : n005.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 Jul 27 12:47:45 EDT 2022

% Result   : Unsatisfiable 20.06s 20.23s
% Output   : Refutation 20.06s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :    7
%            Number of leaves      :    9
% Syntax   : Number of clauses     :   20 (  13 unt;   0 nHn;  15 RR)
%            Number of literals    :   31 (  20 equ;  13 neg)
%            Maximal clause size   :    3 (   1 avg)
%            Maximal term depth    :    3 (   1 avg)
%            Number of predicates  :    4 (   2 usr;   1 prp; 0-2 aty)
%            Number of functors    :    6 (   6 usr;   4 con; 0-2 aty)
%            Number of variables   :   23 (   1 sgn)

% Comments : 
%------------------------------------------------------------------------------
cnf(2,axiom,
    ( ~ e_quivalent(A,B)
    | A = B ),
    file('CAT003-3.p',unknown),
    [] ).

cnf(3,axiom,
    ( ~ there_exists(A)
    | A != B
    | e_quivalent(A,B) ),
    file('CAT003-3.p',unknown),
    [] ).

cnf(13,axiom,
    ( compose(A,compose(a,b)) != B
    | compose(C,compose(a,b)) != B
    | A = C ),
    file('CAT003-3.p',unknown),
    [] ).

cnf(14,axiom,
    g != h,
    file('CAT003-3.p',unknown),
    [] ).

cnf(15,plain,
    h != g,
    inference(flip,[status(thm),theory(equality)],[inference(copy,[status(thm)],[14])]),
    [iquote('copy,14,flip.1')] ).

cnf(18,axiom,
    A = A,
    file('CAT003-3.p',unknown),
    [] ).

cnf(19,axiom,
    compose(A,compose(B,C)) = compose(compose(A,B),C),
    file('CAT003-3.p',unknown),
    [] ).

cnf(21,plain,
    compose(compose(A,B),C) = compose(A,compose(B,C)),
    inference(flip,[status(thm),theory(equality)],[inference(copy,[status(thm)],[19])]),
    [iquote('copy,19,flip.1')] ).

cnf(23,axiom,
    compose(A,domain(A)) = A,
    file('CAT003-3.p',unknown),
    [] ).

cnf(30,axiom,
    there_exists(h),
    file('CAT003-3.p',unknown),
    [] ).

cnf(31,axiom,
    compose(h,a) = compose(g,a),
    file('CAT003-3.p',unknown),
    [] ).

cnf(33,plain,
    e_quivalent(h,h),
    inference(hyper,[status(thm)],[30,3,18]),
    [iquote('hyper,30,3,18')] ).

cnf(39,plain,
    ( e_quivalent(h,A)
    | compose(h,compose(a,b)) != B
    | compose(A,compose(a,b)) != B ),
    inference(para_into,[status(thm),theory(equality)],[33,13]),
    [iquote('para_into,33.1.2,13.3.1')] ).

cnf(98,plain,
    ( A = B
    | ~ e_quivalent(B,A) ),
    inference(demod,[status(thm),theory(equality)],[inference(para_into,[status(thm),theory(equality)],[23,2]),23]),
    [iquote('para_into,22.1.1,2.2.1,demod,23')] ).

cnf(513,plain,
    compose(h,compose(a,A)) = compose(g,compose(a,A)),
    inference(flip,[status(thm),theory(equality)],[inference(demod,[status(thm),theory(equality)],[inference(para_from,[status(thm),theory(equality)],[31,21]),21])]),
    [iquote('para_from,31.1.1,20.1.1.1,demod,21,flip.1')] ).

cnf(521,plain,
    ( e_quivalent(h,A)
    | compose(g,compose(a,b)) != B
    | compose(A,compose(a,b)) != B ),
    inference(demod,[status(thm),theory(equality)],[inference(back_demod,[status(thm)],[39]),513]),
    [iquote('back_demod,39,demod,513')] ).

cnf(528,plain,
    ( e_quivalent(h,g)
    | compose(g,compose(a,b)) != A ),
    inference(factor,[status(thm)],[521]),
    [iquote('factor,521.2.3')] ).

cnf(2122,plain,
    e_quivalent(h,g),
    inference(hyper,[status(thm)],[528,18]),
    [iquote('hyper,528,18')] ).

cnf(2130,plain,
    h = g,
    inference(flip,[status(thm),theory(equality)],[inference(hyper,[status(thm)],[2122,98])]),
    [iquote('hyper,2122,98,flip.1')] ).

cnf(2132,plain,
    $false,
    inference(binary,[status(thm)],[2130,15]),
    [iquote('binary,2130.1,15.1')] ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem  : CAT003-3 : TPTP v8.1.0. Released v1.0.0.
% 0.07/0.13  % Command  : otter-tptp-script %s
% 0.14/0.34  % Computer : n005.cluster.edu
% 0.14/0.34  % Model    : x86_64 x86_64
% 0.14/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.34  % Memory   : 8042.1875MB
% 0.14/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.34  % CPULimit : 300
% 0.14/0.34  % WCLimit  : 300
% 0.14/0.34  % DateTime : Wed Jul 27 01:54:05 EDT 2022
% 0.14/0.34  % CPUTime  : 
% 1.69/1.83  ----- Otter 3.3f, August 2004 -----
% 1.69/1.83  The process was started by sandbox on n005.cluster.edu,
% 1.69/1.83  Wed Jul 27 01:54:05 2022
% 1.69/1.83  The command was "./otter".  The process ID is 22744.
% 1.69/1.83  
% 1.69/1.83  set(prolog_style_variables).
% 1.69/1.83  set(auto).
% 1.69/1.83     dependent: set(auto1).
% 1.69/1.83     dependent: set(process_input).
% 1.69/1.83     dependent: clear(print_kept).
% 1.69/1.83     dependent: clear(print_new_demod).
% 1.69/1.83     dependent: clear(print_back_demod).
% 1.69/1.83     dependent: clear(print_back_sub).
% 1.69/1.83     dependent: set(control_memory).
% 1.69/1.83     dependent: assign(max_mem, 12000).
% 1.69/1.83     dependent: assign(pick_given_ratio, 4).
% 1.69/1.83     dependent: assign(stats_level, 1).
% 1.69/1.83     dependent: assign(max_seconds, 10800).
% 1.69/1.83  clear(print_given).
% 1.69/1.83  
% 1.69/1.83  list(usable).
% 1.69/1.83  0 [] A=A.
% 1.69/1.83  0 [] -e_quivalent(X,Y)|there_exists(X).
% 1.69/1.83  0 [] -e_quivalent(X,Y)|X=Y.
% 1.69/1.83  0 [] -there_exists(X)|X!=Y|e_quivalent(X,Y).
% 1.69/1.83  0 [] -there_exists(domain(X))|there_exists(X).
% 1.69/1.83  0 [] -there_exists(codomain(X))|there_exists(X).
% 1.69/1.83  0 [] -there_exists(compose(X,Y))|there_exists(domain(X)).
% 1.69/1.83  0 [] -there_exists(compose(X,Y))|domain(X)=codomain(Y).
% 1.69/1.83  0 [] -there_exists(domain(X))|domain(X)!=codomain(Y)|there_exists(compose(X,Y)).
% 1.69/1.83  0 [] compose(X,compose(Y,Z))=compose(compose(X,Y),Z).
% 1.69/1.83  0 [] compose(X,domain(X))=X.
% 1.69/1.83  0 [] compose(codomain(X),X)=X.
% 1.69/1.83  0 [] -e_quivalent(X,Y)|there_exists(Y).
% 1.69/1.83  0 [] -there_exists(X)| -there_exists(Y)|X!=Y|e_quivalent(X,Y).
% 1.69/1.83  0 [] -there_exists(compose(X,Y))|there_exists(codomain(X)).
% 1.69/1.83  0 [] there_exists(f1(X,Y))|X=Y.
% 1.69/1.83  0 [] X=f1(X,Y)|Y=f1(X,Y)|X=Y.
% 1.69/1.83  0 [] X!=f1(X,Y)|Y!=f1(X,Y)|X=Y.
% 1.69/1.83  0 [] there_exists(compose(a,b)).
% 1.69/1.83  0 [] compose(X,compose(a,b))!=Y|compose(Z,compose(a,b))!=Y|X=Z.
% 1.69/1.83  0 [] there_exists(h).
% 1.69/1.83  0 [] compose(h,a)=compose(g,a).
% 1.69/1.83  0 [] g!=h.
% 1.69/1.83  end_of_list.
% 1.69/1.83  
% 1.69/1.83  SCAN INPUT: prop=0, horn=0, equality=1, symmetry=0, max_lits=4.
% 1.69/1.83  
% 1.69/1.83  This ia a non-Horn set with equality.  The strategy will be
% 1.69/1.83  Knuth-Bendix, ordered hyper_res, factoring, and unit
% 1.69/1.83  deletion, with positive clauses in sos and nonpositive
% 1.69/1.83  clauses in usable.
% 1.69/1.83  
% 1.69/1.83     dependent: set(knuth_bendix).
% 1.69/1.83     dependent: set(anl_eq).
% 1.69/1.83     dependent: set(para_from).
% 1.69/1.83     dependent: set(para_into).
% 1.69/1.83     dependent: clear(para_from_right).
% 1.69/1.83     dependent: clear(para_into_right).
% 1.69/1.83     dependent: set(para_from_vars).
% 1.69/1.83     dependent: set(eq_units_both_ways).
% 1.69/1.83     dependent: set(dynamic_demod_all).
% 1.69/1.83     dependent: set(dynamic_demod).
% 1.69/1.83     dependent: set(order_eq).
% 1.69/1.83     dependent: set(back_demod).
% 1.69/1.83     dependent: set(lrpo).
% 1.69/1.83     dependent: set(hyper_res).
% 1.69/1.83     dependent: set(unit_deletion).
% 1.69/1.83     dependent: set(factor).
% 1.69/1.83  
% 1.69/1.83  ------------> process usable:
% 1.69/1.83  ** KEPT (pick-wt=5): 1 [] -e_quivalent(A,B)|there_exists(A).
% 1.69/1.83  ** KEPT (pick-wt=6): 2 [] -e_quivalent(A,B)|A=B.
% 1.69/1.83  ** KEPT (pick-wt=8): 3 [] -there_exists(A)|A!=B|e_quivalent(A,B).
% 1.69/1.83  ** KEPT (pick-wt=5): 4 [] -there_exists(domain(A))|there_exists(A).
% 1.69/1.83  ** KEPT (pick-wt=5): 5 [] -there_exists(codomain(A))|there_exists(A).
% 1.69/1.83  ** KEPT (pick-wt=7): 6 [] -there_exists(compose(A,B))|there_exists(domain(A)).
% 1.69/1.83  ** KEPT (pick-wt=9): 7 [] -there_exists(compose(A,B))|domain(A)=codomain(B).
% 1.69/1.83  ** KEPT (pick-wt=12): 8 [] -there_exists(domain(A))|domain(A)!=codomain(B)|there_exists(compose(A,B)).
% 1.69/1.83  ** KEPT (pick-wt=5): 9 [] -e_quivalent(A,B)|there_exists(B).
% 1.69/1.83    Following clause subsumed by 3 during input processing: 0 [] -there_exists(A)| -there_exists(B)|A!=B|e_quivalent(A,B).
% 1.69/1.83  ** KEPT (pick-wt=7): 10 [] -there_exists(compose(A,B))|there_exists(codomain(A)).
% 1.69/1.83  ** KEPT (pick-wt=13): 12 [copy,11,flip.1,flip.2] f1(A,B)!=A|f1(A,B)!=B|A=B.
% 1.69/1.83  ** KEPT (pick-wt=17): 13 [] compose(A,compose(a,b))!=B|compose(C,compose(a,b))!=B|A=C.
% 1.69/1.83  ** KEPT (pick-wt=3): 15 [copy,14,flip.1] h!=g.
% 1.69/1.83  
% 1.69/1.83  ------------> process sos:
% 1.69/1.83  ** KEPT (pick-wt=3): 18 [] A=A.
% 1.69/1.83  ** KEPT (pick-wt=11): 20 [copy,19,flip.1] compose(compose(A,B),C)=compose(A,compose(B,C)).
% 1.69/1.83  ---> New Demodulator: 21 [new_demod,20] compose(compose(A,B),C)=compose(A,compose(B,C)).
% 1.69/1.83  ** KEPT (pick-wt=6): 22 [] compose(A,domain(A))=A.
% 1.69/1.83  ---> New Demodulator: 23 [new_demod,22] compose(A,domain(A))=A.
% 1.69/1.83  ** KEPT (pick-wt=6): 24 [] compose(codomain(A),A)=A.
% 1.69/1.83  ---> New Demodulator: 25 [new_demod,24] compose(codomain(A),A)=A.
% 1.69/1.83  ** KEPT (pick-wt=7): 26 [] there_exists(f1(A,B))|A=B.
% 1.69/1.83  ** KEPT (pick-wt=13): 28 [copy,27,flip.1,flip.2] f1(A,B)=A|f1(A,B)=B|A=B.
% 1.69/1.83  ** KEPT (pick-wt=4): 29 [] there_exists(compose(a,b)).
% 20.06/20.23  ** KEPT (pick-wt=2): 30 [] there_exists(h).
% 20.06/20.23  ** KEPT (pick-wt=7): 31 [] compose(h,a)=compose(g,a).
% 20.06/20.23  ---> New Demodulator: 32 [new_demod,31] compose(h,a)=compose(g,a).
% 20.06/20.23    Following clause subsumed by 18 during input processing: 0 [copy,18,flip.1] A=A.
% 20.06/20.23  18 back subsumes 17.
% 20.06/20.23  18 back subsumes 16.
% 20.06/20.23  >>>> Starting back demodulation with 21.
% 20.06/20.23  >>>> Starting back demodulation with 23.
% 20.06/20.23  >>>> Starting back demodulation with 25.
% 20.06/20.23  >>>> Starting back demodulation with 32.
% 20.06/20.23  
% 20.06/20.23  ======= end of input processing =======
% 20.06/20.23  
% 20.06/20.23  =========== start of search ===========
% 20.06/20.23  
% 20.06/20.23  
% 20.06/20.23  Resetting weight limit to 7.
% 20.06/20.23  
% 20.06/20.23  
% 20.06/20.23  Resetting weight limit to 7.
% 20.06/20.23  
% 20.06/20.23  sos_size=1712
% 20.06/20.23  
% 20.06/20.23  -- HEY sandbox, WE HAVE A PROOF!! -- 
% 20.06/20.23  
% 20.06/20.23  ----> UNIT CONFLICT at  18.39 sec ----> 2132 [binary,2130.1,15.1] $F.
% 20.06/20.23  
% 20.06/20.23  Length of proof is 10.  Level of proof is 6.
% 20.06/20.23  
% 20.06/20.23  ---------------- PROOF ----------------
% 20.06/20.23  % SZS status Unsatisfiable
% 20.06/20.23  % SZS output start Refutation
% See solution above
% 20.06/20.23  ------------ end of proof -------------
% 20.06/20.23  
% 20.06/20.23  
% 20.06/20.23  Search stopped by max_proofs option.
% 20.06/20.23  
% 20.06/20.23  
% 20.06/20.23  Search stopped by max_proofs option.
% 20.06/20.23  
% 20.06/20.23  ============ end of search ============
% 20.06/20.23  
% 20.06/20.23  -------------- statistics -------------
% 20.06/20.23  clauses given                899
% 20.06/20.23  clauses generated         498881
% 20.06/20.23  clauses kept                2096
% 20.06/20.23  clauses forward subsumed    6438
% 20.06/20.23  clauses back subsumed         46
% 20.06/20.23  Kbytes malloced             5859
% 20.06/20.23  
% 20.06/20.23  ----------- times (seconds) -----------
% 20.06/20.23  user CPU time         18.39          (0 hr, 0 min, 18 sec)
% 20.06/20.23  system CPU time        0.01          (0 hr, 0 min, 0 sec)
% 20.06/20.23  wall-clock time       20             (0 hr, 0 min, 20 sec)
% 20.06/20.23  
% 20.06/20.23  That finishes the proof of the theorem.
% 20.06/20.23  
% 20.06/20.23  Process 22744 finished Wed Jul 27 01:54:25 2022
% 20.06/20.23  Otter interrupted
% 20.06/20.23  PROOF FOUND
%------------------------------------------------------------------------------