%------------------------------------------------------------------------------
% File : Otter---3.3
% Problem : ALG030+1 : TPTP v8.1.0. Released v2.7.0.
% Transfm : none
% Format : tptp:raw
% Command : otter-tptp-script %s
% Computer : n011.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:45:56 EDT 2022
% Result : Theorem 2.01s 2.19s
% Output : Refutation 2.01s
% Verified :
% SZS Type : Refutation
% Derivation depth : 4
% Number of leaves : 7
% Syntax : Number of clauses : 16 ( 12 unt; 0 nHn; 16 RR)
% Number of literals : 22 ( 10 equ; 7 neg)
% Maximal clause size : 3 ( 1 avg)
% Maximal term depth : 4 ( 2 avg)
% Number of predicates : 4 ( 2 usr; 1 prp; 0-2 aty)
% Number of functors : 6 ( 6 usr; 2 con; 0-2 aty)
% Number of variables : 6 ( 0 sgn)
% Comments :
%------------------------------------------------------------------------------
cnf(3,axiom,
op1(dollar_c2,dollar_c1) != op1(dollar_c1,dollar_c2),
file('ALG030+1.p',unknown),
[] ).
cnf(4,axiom,
( ~ sorti2(A)
| ~ sorti2(B)
| op2(A,B) = op2(B,A) ),
file('ALG030+1.p',unknown),
[] ).
cnf(5,axiom,
( ~ sorti1(A)
| sorti2(h(A)) ),
file('ALG030+1.p',unknown),
[] ).
cnf(8,axiom,
( ~ sorti2(A)
| ~ sorti2(B)
| j(op2(A,B)) = op1(j(A),j(B)) ),
file('ALG030+1.p',unknown),
[] ).
cnf(10,axiom,
( ~ sorti1(A)
| j(h(A)) = A ),
file('ALG030+1.p',unknown),
[] ).
cnf(12,axiom,
sorti1(dollar_c2),
file('ALG030+1.p',unknown),
[] ).
cnf(13,axiom,
sorti1(dollar_c1),
file('ALG030+1.p',unknown),
[] ).
cnf(15,plain,
j(h(dollar_c2)) = dollar_c2,
inference(hyper,[status(thm)],[12,10]),
[iquote('hyper,12,10')] ).
cnf(18,plain,
sorti2(h(dollar_c2)),
inference(hyper,[status(thm)],[12,5]),
[iquote('hyper,12,5')] ).
cnf(21,plain,
j(h(dollar_c1)) = dollar_c1,
inference(hyper,[status(thm)],[13,10]),
[iquote('hyper,13,10')] ).
cnf(28,plain,
sorti2(h(dollar_c1)),
inference(hyper,[status(thm)],[13,5]),
[iquote('hyper,13,5')] ).
cnf(37,plain,
j(op2(h(dollar_c2),h(dollar_c1))) = op1(dollar_c2,dollar_c1),
inference(demod,[status(thm),theory(equality)],[inference(hyper,[status(thm)],[28,8,18]),15,21]),
[iquote('hyper,28,8,18,demod,15,21')] ).
cnf(40,plain,
j(op2(h(dollar_c1),h(dollar_c2))) = op1(dollar_c1,dollar_c2),
inference(demod,[status(thm),theory(equality)],[inference(hyper,[status(thm)],[28,8,18]),21,15]),
[iquote('hyper,28,8,18,demod,21,15')] ).
cnf(42,plain,
op2(h(dollar_c2),h(dollar_c1)) = op2(h(dollar_c1),h(dollar_c2)),
inference(hyper,[status(thm)],[28,4,18]),
[iquote('hyper,28,4,18')] ).
cnf(45,plain,
op1(dollar_c2,dollar_c1) = op1(dollar_c1,dollar_c2),
inference(flip,[status(thm),theory(equality)],[inference(demod,[status(thm),theory(equality)],[inference(back_demod,[status(thm)],[37]),42,40])]),
[iquote('back_demod,37,demod,42,40,flip.1')] ).
cnf(47,plain,
$false,
inference(binary,[status(thm)],[45,3]),
[iquote('binary,45.1,3.1')] ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12 % Problem : ALG030+1 : TPTP v8.1.0. Released v2.7.0.
% 0.07/0.13 % Command : otter-tptp-script %s
% 0.13/0.34 % Computer : n011.cluster.edu
% 0.13/0.34 % Model : x86_64 x86_64
% 0.13/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.34 % Memory : 8042.1875MB
% 0.13/0.34 % OS : Linux 3.10.0-693.el7.x86_64
% 0.13/0.34 % CPULimit : 300
% 0.13/0.34 % WCLimit : 300
% 0.13/0.34 % DateTime : Wed Jul 27 03:50:40 EDT 2022
% 0.13/0.34 % CPUTime :
% 2.01/2.19 ----- Otter 3.3f, August 2004 -----
% 2.01/2.19 The process was started by sandbox2 on n011.cluster.edu,
% 2.01/2.19 Wed Jul 27 03:50:40 2022
% 2.01/2.19 The command was "./otter". The process ID is 13925.
% 2.01/2.19
% 2.01/2.19 set(prolog_style_variables).
% 2.01/2.19 set(auto).
% 2.01/2.19 dependent: set(auto1).
% 2.01/2.19 dependent: set(process_input).
% 2.01/2.19 dependent: clear(print_kept).
% 2.01/2.19 dependent: clear(print_new_demod).
% 2.01/2.19 dependent: clear(print_back_demod).
% 2.01/2.19 dependent: clear(print_back_sub).
% 2.01/2.19 dependent: set(control_memory).
% 2.01/2.19 dependent: assign(max_mem, 12000).
% 2.01/2.19 dependent: assign(pick_given_ratio, 4).
% 2.01/2.19 dependent: assign(stats_level, 1).
% 2.01/2.19 dependent: assign(max_seconds, 10800).
% 2.01/2.19 clear(print_given).
% 2.01/2.19
% 2.01/2.19 formula_list(usable).
% 2.01/2.19 all A (A=A).
% 2.01/2.19 all U (sorti1(U)-> (all V (sorti1(V)->sorti1(op1(U,V))))).
% 2.01/2.19 all U (sorti2(U)-> (all V (sorti2(V)->sorti2(op2(U,V))))).
% 2.01/2.19 -(all U (sorti1(U)-> (all V (sorti1(V)->op1(U,V)=op1(V,U))))).
% 2.01/2.19 -(-(all U (sorti2(U)-> (all V (sorti2(V)->op2(U,V)=op2(V,U)))))).
% 2.01/2.19 -((all U (sorti1(U)->sorti2(h(U))))& (all V (sorti2(V)->sorti1(j(V))))-> -((all W (sorti1(W)-> (all X (sorti1(X)->h(op1(W,X))=op2(h(W),h(X))))))& (all Y (sorti2(Y)-> (all Z (sorti2(Z)->j(op2(Y,Z))=op1(j(Y),j(Z))))))& (all X1 (sorti2(X1)->h(j(X1))=X1))& (all X2 (sorti1(X2)->j(h(X2))=X2)))).
% 2.01/2.19 end_of_list.
% 2.01/2.19
% 2.01/2.19 -------> usable clausifies to:
% 2.01/2.19
% 2.01/2.19 list(usable).
% 2.01/2.19 0 [] A=A.
% 2.01/2.19 0 [] -sorti1(U)| -sorti1(V)|sorti1(op1(U,V)).
% 2.01/2.19 0 [] -sorti2(U)| -sorti2(V)|sorti2(op2(U,V)).
% 2.01/2.19 0 [] sorti1($c2).
% 2.01/2.19 0 [] sorti1($c1).
% 2.01/2.19 0 [] op1($c2,$c1)!=op1($c1,$c2).
% 2.01/2.19 0 [] -sorti2(U)| -sorti2(V)|op2(U,V)=op2(V,U).
% 2.01/2.19 0 [] -sorti1(U)|sorti2(h(U)).
% 2.01/2.19 0 [] -sorti2(V)|sorti1(j(V)).
% 2.01/2.19 0 [] -sorti1(W)| -sorti1(X)|h(op1(W,X))=op2(h(W),h(X)).
% 2.01/2.19 0 [] -sorti2(Y)| -sorti2(Z)|j(op2(Y,Z))=op1(j(Y),j(Z)).
% 2.01/2.19 0 [] -sorti2(X1)|h(j(X1))=X1.
% 2.01/2.19 0 [] -sorti1(X2)|j(h(X2))=X2.
% 2.01/2.19 end_of_list.
% 2.01/2.19
% 2.01/2.19 SCAN INPUT: prop=0, horn=1, equality=1, symmetry=0, max_lits=3.
% 2.01/2.19
% 2.01/2.19 This is a Horn set with equality. The strategy will be
% 2.01/2.19 Knuth-Bendix and hyper_res, with positive clauses in
% 2.01/2.19 sos and nonpositive clauses in usable.
% 2.01/2.19
% 2.01/2.19 dependent: set(knuth_bendix).
% 2.01/2.19 dependent: set(anl_eq).
% 2.01/2.19 dependent: set(para_from).
% 2.01/2.19 dependent: set(para_into).
% 2.01/2.19 dependent: clear(para_from_right).
% 2.01/2.19 dependent: clear(para_into_right).
% 2.01/2.19 dependent: set(para_from_vars).
% 2.01/2.19 dependent: set(eq_units_both_ways).
% 2.01/2.19 dependent: set(dynamic_demod_all).
% 2.01/2.19 dependent: set(dynamic_demod).
% 2.01/2.19 dependent: set(order_eq).
% 2.01/2.19 dependent: set(back_demod).
% 2.01/2.19 dependent: set(lrpo).
% 2.01/2.19 dependent: set(hyper_res).
% 2.01/2.19 dependent: clear(order_hyper).
% 2.01/2.19
% 2.01/2.19 ------------> process usable:
% 2.01/2.19 ** KEPT (pick-wt=8): 1 [] -sorti1(A)| -sorti1(B)|sorti1(op1(A,B)).
% 2.01/2.19 ** KEPT (pick-wt=8): 2 [] -sorti2(A)| -sorti2(B)|sorti2(op2(A,B)).
% 2.01/2.19 ** KEPT (pick-wt=7): 3 [] op1($c2,$c1)!=op1($c1,$c2).
% 2.01/2.19 ** KEPT (pick-wt=11): 4 [] -sorti2(A)| -sorti2(B)|op2(A,B)=op2(B,A).
% 2.01/2.19 ** KEPT (pick-wt=5): 5 [] -sorti1(A)|sorti2(h(A)).
% 2.01/2.19 ** KEPT (pick-wt=5): 6 [] -sorti2(A)|sorti1(j(A)).
% 2.01/2.19 ** KEPT (pick-wt=14): 7 [] -sorti1(A)| -sorti1(B)|h(op1(A,B))=op2(h(A),h(B)).
% 2.01/2.19 ** KEPT (pick-wt=14): 8 [] -sorti2(A)| -sorti2(B)|j(op2(A,B))=op1(j(A),j(B)).
% 2.01/2.19 ** KEPT (pick-wt=7): 9 [] -sorti2(A)|h(j(A))=A.
% 2.01/2.19 ** KEPT (pick-wt=7): 10 [] -sorti1(A)|j(h(A))=A.
% 2.01/2.19
% 2.01/2.19 ------------> process sos:
% 2.01/2.19 ** KEPT (pick-wt=3): 11 [] A=A.
% 2.01/2.19 ** KEPT (pick-wt=2): 12 [] sorti1($c2).
% 2.01/2.19 ** KEPT (pick-wt=2): 13 [] sorti1($c1).
% 2.01/2.19 Following clause subsumed by 11 during input processing: 0 [copy,11,flip.1] A=A.
% 2.01/2.19
% 2.01/2.19 ======= end of input processing =======
% 2.01/2.19
% 2.01/2.19 =========== start of search ===========
% 2.01/2.19
% 2.01/2.19 -------- PROOF --------
% 2.01/2.19
% 2.01/2.19 ----> UNIT CONFLICT at 0.00 sec ----> 47 [binary,45.1,3.1] $F.
% 2.01/2.19
% 2.01/2.19 Length of proof is 8. Level of proof is 3.
% 2.01/2.19
% 2.01/2.19 ---------------- PROOF ----------------
% 2.01/2.19 % SZS status Theorem
% 2.01/2.19 % SZS output start Refutation
% See solution above
% 2.01/2.19 ------------ end of proof -------------
% 2.01/2.19
% 2.01/2.19
% 2.01/2.19 Search stopped by max_proofs option.
% 2.01/2.19
% 2.01/2.19
% 2.01/2.19 Search stopped by max_proofs option.
% 2.01/2.19
% 2.01/2.19 ============ end of search ============
% 2.01/2.19
% 2.01/2.19 -------------- statistics -------------
% 2.01/2.19 clauses given 5
% 2.01/2.19 clauses generated 38
% 2.01/2.19 clauses kept 34
% 2.01/2.19 clauses forward subsumed 19
% 2.01/2.19 clauses back subsumed 0
% 2.01/2.19 Kbytes malloced 976
% 2.01/2.19
% 2.01/2.19 ----------- times (seconds) -----------
% 2.01/2.19 user CPU time 0.00 (0 hr, 0 min, 0 sec)
% 2.01/2.19 system CPU time 0.00 (0 hr, 0 min, 0 sec)
% 2.01/2.19 wall-clock time 2 (0 hr, 0 min, 2 sec)
% 2.01/2.19
% 2.01/2.19 That finishes the proof of the theorem.
% 2.01/2.19
% 2.01/2.19 Process 13925 finished Wed Jul 27 03:50:42 2022
% 2.01/2.19 Otter interrupted
% 2.01/2.19 PROOF FOUND
%------------------------------------------------------------------------------