TSTP Solution File: GRP702+1 by Otter---3.3

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Otter---3.3
% Problem  : GRP702+1 : TPTP v8.1.0. Released v4.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : otter-tptp-script %s

% 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 Jul 27 12:57:41 EDT 2022

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

% Comments : 
%------------------------------------------------------------------------------
cnf(1,axiom,
    ( mult(op_d,mult(dollar_c2,dollar_c1)) != mult(mult(op_d,dollar_c2),dollar_c1)
    | mult(dollar_c2,mult(dollar_c1,op_d)) != mult(mult(dollar_c2,dollar_c1),op_d)
    | mult(dollar_c2,mult(op_d,dollar_c1)) != mult(mult(dollar_c2,op_d),dollar_c1) ),
    file('GRP702+1.p',unknown),
    [] ).

cnf(2,plain,
    ( mult(mult(op_d,dollar_c2),dollar_c1) != mult(op_d,mult(dollar_c2,dollar_c1))
    | mult(mult(dollar_c2,dollar_c1),op_d) != mult(dollar_c2,mult(dollar_c1,op_d))
    | mult(mult(dollar_c2,op_d),dollar_c1) != mult(dollar_c2,mult(op_d,dollar_c1)) ),
    inference(flip,[status(thm),theory(equality)],[inference(flip,[status(thm),theory(equality)],[inference(flip,[status(thm),theory(equality)],[inference(copy,[status(thm)],[1])])])]),
    [iquote('copy,1,flip.1,flip.2,flip.3')] ).

cnf(3,axiom,
    A = A,
    file('GRP702+1.p',unknown),
    [] ).

cnf(4,axiom,
    mult(A,ld(A,B)) = B,
    file('GRP702+1.p',unknown),
    [] ).

cnf(12,axiom,
    mult(A,unit) = A,
    file('GRP702+1.p',unknown),
    [] ).

cnf(14,axiom,
    mult(unit,A) = A,
    file('GRP702+1.p',unknown),
    [] ).

cnf(19,axiom,
    mult(op_c,mult(A,B)) = mult(mult(op_c,A),B),
    file('GRP702+1.p',unknown),
    [] ).

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

cnf(22,axiom,
    mult(A,mult(B,op_c)) = mult(mult(A,B),op_c),
    file('GRP702+1.p',unknown),
    [] ).

cnf(24,plain,
    mult(mult(A,B),op_c) = mult(A,mult(B,op_c)),
    inference(flip,[status(thm),theory(equality)],[inference(copy,[status(thm)],[22])]),
    [iquote('copy,22,flip.1')] ).

cnf(25,axiom,
    mult(A,mult(op_c,B)) = mult(mult(A,op_c),B),
    file('GRP702+1.p',unknown),
    [] ).

cnf(27,plain,
    mult(mult(A,op_c),B) = mult(A,mult(op_c,B)),
    inference(flip,[status(thm),theory(equality)],[inference(copy,[status(thm)],[25])]),
    [iquote('copy,25,flip.1')] ).

cnf(28,axiom,
    op_d = ld(A,mult(op_c,A)),
    file('GRP702+1.p',unknown),
    [] ).

cnf(29,plain,
    ld(A,mult(op_c,A)) = op_d,
    inference(flip,[status(thm),theory(equality)],[inference(copy,[status(thm)],[28])]),
    [iquote('copy,28,flip.1')] ).

cnf(38,plain,
    ld(unit,A) = A,
    inference(para_into,[status(thm),theory(equality)],[4,14]),
    [iquote('para_into,4.1.1,14.1.1')] ).

cnf(66,plain,
    op_d = op_c,
    inference(flip,[status(thm),theory(equality)],[inference(demod,[status(thm),theory(equality)],[inference(para_into,[status(thm),theory(equality)],[29,12]),38])]),
    [iquote('para_into,29.1.1.2,12.1.1,demod,38,flip.1')] ).

cnf(71,plain,
    ( mult(op_c,mult(dollar_c2,dollar_c1)) != mult(op_c,mult(dollar_c2,dollar_c1))
    | mult(dollar_c2,mult(dollar_c1,op_c)) != mult(dollar_c2,mult(dollar_c1,op_c))
    | mult(dollar_c2,mult(op_c,dollar_c1)) != mult(dollar_c2,mult(op_c,dollar_c1)) ),
    inference(demod,[status(thm),theory(equality)],[inference(back_demod,[status(thm)],[2]),66,21,66,66,24,66,66,27,66]),
    [iquote('back_demod,2,demod,66,21,66,66,24,66,66,27,66')] ).

cnf(914,plain,
    $false,
    inference(hyper,[status(thm)],[71,3,3,3]),
    [iquote('hyper,71,3,3,3')] ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.12/0.13  % Problem  : GRP702+1 : TPTP v8.1.0. Released v4.0.0.
% 0.12/0.13  % Command  : otter-tptp-script %s
% 0.13/0.34  % Computer : n022.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.35  % DateTime : Wed Jul 27 05:06:35 EDT 2022
% 0.13/0.35  % CPUTime  : 
% 1.78/1.97  ----- Otter 3.3f, August 2004 -----
% 1.78/1.97  The process was started by sandbox2 on n022.cluster.edu,
% 1.78/1.97  Wed Jul 27 05:06:35 2022
% 1.78/1.97  The command was "./otter".  The process ID is 27677.
% 1.78/1.97  
% 1.78/1.97  set(prolog_style_variables).
% 1.78/1.97  set(auto).
% 1.78/1.97     dependent: set(auto1).
% 1.78/1.97     dependent: set(process_input).
% 1.78/1.97     dependent: clear(print_kept).
% 1.78/1.97     dependent: clear(print_new_demod).
% 1.78/1.97     dependent: clear(print_back_demod).
% 1.78/1.97     dependent: clear(print_back_sub).
% 1.78/1.97     dependent: set(control_memory).
% 1.78/1.97     dependent: assign(max_mem, 12000).
% 1.78/1.97     dependent: assign(pick_given_ratio, 4).
% 1.78/1.97     dependent: assign(stats_level, 1).
% 1.78/1.97     dependent: assign(max_seconds, 10800).
% 1.78/1.97  clear(print_given).
% 1.78/1.97  
% 1.78/1.97  formula_list(usable).
% 1.78/1.97  all A (A=A).
% 1.78/1.97  all B A (mult(A,ld(A,B))=B).
% 1.78/1.97  all B A (ld(A,mult(A,B))=B).
% 1.78/1.97  all B A (mult(rd(A,B),B)=A).
% 1.78/1.97  all B A (rd(mult(A,B),B)=A).
% 1.78/1.97  all A (mult(A,unit)=A).
% 1.78/1.97  all A (mult(unit,A)=A).
% 1.78/1.97  all C B A (mult(A,mult(B,mult(B,C)))=mult(mult(mult(A,B),B),C)).
% 1.78/1.97  all B A (mult(op_c,mult(A,B))=mult(mult(op_c,A),B)).
% 1.78/1.97  all B A (mult(A,mult(B,op_c))=mult(mult(A,B),op_c)).
% 1.78/1.97  all B A (mult(A,mult(op_c,B))=mult(mult(A,op_c),B)).
% 1.78/1.97  all A (op_d=ld(A,mult(op_c,A))).
% 1.78/1.97  all B A (op_e=mult(mult(rd(op_c,mult(A,B)),B),A)).
% 1.78/1.97  all B A (op_f=mult(A,mult(B,ld(mult(A,B),op_c)))).
% 1.78/1.97  -(all X0 X1 (mult(op_d,mult(X0,X1))=mult(mult(op_d,X0),X1)&mult(X0,mult(X1,op_d))=mult(mult(X0,X1),op_d)&mult(X0,mult(op_d,X1))=mult(mult(X0,op_d),X1))).
% 1.78/1.97  end_of_list.
% 1.78/1.97  
% 1.78/1.97  -------> usable clausifies to:
% 1.78/1.97  
% 1.78/1.97  list(usable).
% 1.78/1.97  0 [] A=A.
% 1.78/1.97  0 [] mult(A,ld(A,B))=B.
% 1.78/1.97  0 [] ld(A,mult(A,B))=B.
% 1.78/1.97  0 [] mult(rd(A,B),B)=A.
% 1.78/1.97  0 [] rd(mult(A,B),B)=A.
% 1.78/1.97  0 [] mult(A,unit)=A.
% 1.78/1.97  0 [] mult(unit,A)=A.
% 1.78/1.97  0 [] mult(A,mult(B,mult(B,C)))=mult(mult(mult(A,B),B),C).
% 1.78/1.97  0 [] mult(op_c,mult(A,B))=mult(mult(op_c,A),B).
% 1.78/1.97  0 [] mult(A,mult(B,op_c))=mult(mult(A,B),op_c).
% 1.78/1.97  0 [] mult(A,mult(op_c,B))=mult(mult(A,op_c),B).
% 1.78/1.97  0 [] op_d=ld(A,mult(op_c,A)).
% 1.78/1.97  0 [] op_e=mult(mult(rd(op_c,mult(A,B)),B),A).
% 1.78/1.97  0 [] op_f=mult(A,mult(B,ld(mult(A,B),op_c))).
% 1.78/1.97  0 [] mult(op_d,mult($c2,$c1))!=mult(mult(op_d,$c2),$c1)|mult($c2,mult($c1,op_d))!=mult(mult($c2,$c1),op_d)|mult($c2,mult(op_d,$c1))!=mult(mult($c2,op_d),$c1).
% 1.78/1.97  end_of_list.
% 1.78/1.97  
% 1.78/1.97  SCAN INPUT: prop=0, horn=1, equality=1, symmetry=0, max_lits=3.
% 1.78/1.97  
% 1.78/1.97  This is a Horn set with equality.  The strategy will be
% 1.78/1.97  Knuth-Bendix and hyper_res, with positive clauses in
% 1.78/1.97  sos and nonpositive clauses in usable.
% 1.78/1.97  
% 1.78/1.97     dependent: set(knuth_bendix).
% 1.78/1.97     dependent: set(anl_eq).
% 1.78/1.97     dependent: set(para_from).
% 1.78/1.97     dependent: set(para_into).
% 1.78/1.97     dependent: clear(para_from_right).
% 1.78/1.97     dependent: clear(para_into_right).
% 1.78/1.97     dependent: set(para_from_vars).
% 1.78/1.97     dependent: set(eq_units_both_ways).
% 1.78/1.97     dependent: set(dynamic_demod_all).
% 1.78/1.97     dependent: set(dynamic_demod).
% 1.78/1.97     dependent: set(order_eq).
% 1.78/1.97     dependent: set(back_demod).
% 1.78/1.97     dependent: set(lrpo).
% 1.78/1.97     dependent: set(hyper_res).
% 1.78/1.97     dependent: clear(order_hyper).
% 1.78/1.97  
% 1.78/1.97  ------------> process usable:
% 1.78/1.97  ** KEPT (pick-wt=33): 2 [copy,1,flip.1,flip.2,flip.3] mult(mult(op_d,$c2),$c1)!=mult(op_d,mult($c2,$c1))|mult(mult($c2,$c1),op_d)!=mult($c2,mult($c1,op_d))|mult(mult($c2,op_d),$c1)!=mult($c2,mult(op_d,$c1)).
% 1.78/1.97  
% 1.78/1.97  ------------> process sos:
% 1.78/1.97  ** KEPT (pick-wt=3): 3 [] A=A.
% 1.78/1.97  ** KEPT (pick-wt=7): 4 [] mult(A,ld(A,B))=B.
% 1.78/1.97  ---> New Demodulator: 5 [new_demod,4] mult(A,ld(A,B))=B.
% 1.78/1.97  ** KEPT (pick-wt=7): 6 [] ld(A,mult(A,B))=B.
% 1.78/1.97  ---> New Demodulator: 7 [new_demod,6] ld(A,mult(A,B))=B.
% 1.78/1.97  ** KEPT (pick-wt=7): 8 [] mult(rd(A,B),B)=A.
% 1.78/1.97  ---> New Demodulator: 9 [new_demod,8] mult(rd(A,B),B)=A.
% 1.78/1.97  ** KEPT (pick-wt=7): 10 [] rd(mult(A,B),B)=A.
% 1.78/1.97  ---> New Demodulator: 11 [new_demod,10] rd(mult(A,B),B)=A.
% 1.78/1.97  ** KEPT (pick-wt=5): 12 [] mult(A,unit)=A.
% 1.78/1.97  ---> New Demodulator: 13 [new_demod,12] mult(A,unit)=A.
% 1.78/1.97  ** KEPT (pick-wt=5): 14 [] mult(unit,A)=A.
% 1.78/1.97  ---> New Demodulator: 15 [new_demod,14] mult(unit,A)=A.
% 1.78/1.97  ** KEPT (pick-wt=15): 17 [copy,16,flip.1] mult(mult(mult(A,B),B),C)=mult(A,mult(B,mult(B,C))).
% 1.78/1.97  ---> New Demodulator: 18 [new_demod,17] mult(mult(mult(A,B),B),C)=mult(A,mult(B,mult(B,C))).
% 1.78/1.97  ** KEPT (pick-wt=11): 20 [copy,19,flip.1] mult(mult(op_c,A),B)=mult(op_c,mult(A,B)).
% 1.78/1.97  ---> New Demodulator: 21 [new_demod,20] mult(mult(op_c,A),B)=mult(op_c,mult(A,B)).
% 1.78/1.97  ** KEPT (pick-wt=11): 23 [copy,22,flip.1] mult(mult(A,B),op_c)=mult(A,mult(B,op_c)).
% 1.83/2.01  ---> New Demodulator: 24 [new_demod,23] mult(mult(A,B),op_c)=mult(A,mult(B,op_c)).
% 1.83/2.01  ** KEPT (pick-wt=11): 26 [copy,25,flip.1] mult(mult(A,op_c),B)=mult(A,mult(op_c,B)).
% 1.83/2.01  ---> New Demodulator: 27 [new_demod,26] mult(mult(A,op_c),B)=mult(A,mult(op_c,B)).
% 1.83/2.01  ** KEPT (pick-wt=7): 29 [copy,28,flip.1] ld(A,mult(op_c,A))=op_d.
% 1.83/2.01  ---> New Demodulator: 30 [new_demod,29] ld(A,mult(op_c,A))=op_d.
% 1.83/2.01  ** KEPT (pick-wt=11): 32 [copy,31,flip.1] mult(mult(rd(op_c,mult(A,B)),B),A)=op_e.
% 1.83/2.01  ---> New Demodulator: 33 [new_demod,32] mult(mult(rd(op_c,mult(A,B)),B),A)=op_e.
% 1.83/2.01  ** KEPT (pick-wt=11): 35 [copy,34,flip.1] mult(A,mult(B,ld(mult(A,B),op_c)))=op_f.
% 1.83/2.01  ---> New Demodulator: 36 [new_demod,35] mult(A,mult(B,ld(mult(A,B),op_c)))=op_f.
% 1.83/2.01    Following clause subsumed by 3 during input processing: 0 [copy,3,flip.1] A=A.
% 1.83/2.01  >>>> Starting back demodulation with 5.
% 1.83/2.01  >>>> Starting back demodulation with 7.
% 1.83/2.01  >>>> Starting back demodulation with 9.
% 1.83/2.01  >>>> Starting back demodulation with 11.
% 1.83/2.01  >>>> Starting back demodulation with 13.
% 1.83/2.01  >>>> Starting back demodulation with 15.
% 1.83/2.01  >>>> Starting back demodulation with 18.
% 1.83/2.01  >>>> Starting back demodulation with 21.
% 1.83/2.01  >>>> Starting back demodulation with 24.
% 1.83/2.01  >>>> Starting back demodulation with 27.
% 1.83/2.01  >>>> Starting back demodulation with 30.
% 1.83/2.01  >>>> Starting back demodulation with 33.
% 1.83/2.01  >>>> Starting back demodulation with 36.
% 1.83/2.01  
% 1.83/2.01  ======= end of input processing =======
% 1.83/2.01  
% 1.83/2.01  =========== start of search ===========
% 1.83/2.01  
% 1.83/2.01  -------- PROOF -------- 
% 1.83/2.01  
% 1.83/2.01  -----> EMPTY CLAUSE at   0.04 sec ----> 914 [hyper,71,3,3,3] $F.
% 1.83/2.01  
% 1.83/2.01  Length of proof is 8.  Level of proof is 3.
% 1.83/2.01  
% 1.83/2.01  ---------------- PROOF ----------------
% 1.83/2.01  % SZS status Theorem
% 1.83/2.01  % SZS output start Refutation
% See solution above
% 1.83/2.01  ------------ end of proof -------------
% 1.83/2.01  
% 1.83/2.01  
% 1.83/2.01  Search stopped by max_proofs option.
% 1.83/2.01  
% 1.83/2.01  
% 1.83/2.01  Search stopped by max_proofs option.
% 1.83/2.01  
% 1.83/2.01  ============ end of search ============
% 1.83/2.01  
% 1.83/2.01  -------------- statistics -------------
% 1.83/2.01  clauses given                 61
% 1.83/2.01  clauses generated           1315
% 1.83/2.01  clauses kept                 488
% 1.83/2.01  clauses forward subsumed    1091
% 1.83/2.01  clauses back subsumed         18
% 1.83/2.01  Kbytes malloced             3906
% 1.83/2.01  
% 1.83/2.01  ----------- times (seconds) -----------
% 1.83/2.01  user CPU time          0.04          (0 hr, 0 min, 0 sec)
% 1.83/2.01  system CPU time        0.00          (0 hr, 0 min, 0 sec)
% 1.83/2.01  wall-clock time        2             (0 hr, 0 min, 2 sec)
% 1.83/2.01  
% 1.83/2.01  That finishes the proof of the theorem.
% 1.83/2.01  
% 1.83/2.01  Process 27677 finished Wed Jul 27 05:06:37 2022
% 1.83/2.01  Otter interrupted
% 1.83/2.01  PROOF FOUND
%------------------------------------------------------------------------------