TSTP Solution File: SET600+3 by Otter---3.3

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Otter---3.3
% Problem  : SET600+3 : TPTP v8.1.0. Released v2.2.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : otter-tptp-script %s

% Computer : n026.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 13:13:48 EDT 2022

% Result   : Theorem 1.98s 2.16s
% Output   : Refutation 1.98s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   12
%            Number of leaves      :   11
% Syntax   : Number of clauses     :   33 (  10 unt;  13 nHn;  22 RR)
%            Number of literals    :   61 (  30 equ;  21 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;   3 con; 0-2 aty)
%            Number of variables   :   30 (   9 sgn)

% Comments : 
%------------------------------------------------------------------------------
cnf(1,axiom,
    ( ~ member(A,union(B,C))
    | member(A,B)
    | member(A,C) ),
    file('SET600+3.p',unknown),
    [] ).

cnf(2,axiom,
    ( member(A,union(B,C))
    | ~ member(A,B) ),
    file('SET600+3.p',unknown),
    [] ).

cnf(3,axiom,
    ( member(A,union(B,C))
    | ~ member(A,C) ),
    file('SET600+3.p',unknown),
    [] ).

cnf(4,axiom,
    ~ member(A,empty_set),
    file('SET600+3.p',unknown),
    [] ).

cnf(10,axiom,
    ( ~ empty(A)
    | ~ member(B,A) ),
    file('SET600+3.p',unknown),
    [] ).

cnf(14,axiom,
    ( union(dollar_c2,dollar_c1) != empty_set
    | dollar_c2 != empty_set
    | dollar_c1 != empty_set ),
    file('SET600+3.p',unknown),
    [] ).

cnf(15,plain,
    ( union(dollar_c2,dollar_c1) != empty_set
    | empty_set != dollar_c2
    | empty_set != dollar_c1 ),
    inference(flip,[status(thm),theory(equality)],[inference(flip,[status(thm),theory(equality)],[inference(copy,[status(thm)],[14])])]),
    [iquote('copy,14,flip.2,flip.3')] ).

cnf(16,plain,
    ( ~ member(A,union(B,B))
    | member(A,B) ),
    inference(factor,[status(thm)],[1]),
    [iquote('factor,1.2.3')] ).

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

cnf(23,axiom,
    ( empty(A)
    | member(dollar_f2(A),A) ),
    file('SET600+3.p',unknown),
    [] ).

cnf(24,axiom,
    ( A = B
    | member(dollar_f3(A,B),A)
    | member(dollar_f3(A,B),B) ),
    file('SET600+3.p',unknown),
    [] ).

cnf(25,axiom,
    ( union(dollar_c2,dollar_c1) = empty_set
    | dollar_c2 = empty_set ),
    file('SET600+3.p',unknown),
    [] ).

cnf(26,plain,
    ( union(dollar_c2,dollar_c1) = empty_set
    | empty_set = dollar_c2 ),
    inference(flip,[status(thm),theory(equality)],[inference(copy,[status(thm)],[25])]),
    [iquote('copy,25,flip.2')] ).

cnf(27,axiom,
    ( union(dollar_c2,dollar_c1) = empty_set
    | dollar_c1 = empty_set ),
    file('SET600+3.p',unknown),
    [] ).

cnf(28,plain,
    ( union(dollar_c2,dollar_c1) = empty_set
    | empty_set = dollar_c1 ),
    inference(flip,[status(thm),theory(equality)],[inference(copy,[status(thm)],[27])]),
    [iquote('copy,27,flip.2')] ).

cnf(57,plain,
    ( ~ member(A,dollar_c2)
    | empty_set = dollar_c2 ),
    inference(unit_del,[status(thm)],[inference(para_from,[status(thm),theory(equality)],[26,2]),4]),
    [iquote('para_from,26.1.1,2.1.2,unit_del,4')] ).

cnf(68,plain,
    ~ member(A,dollar_c2),
    inference(factor_simp,[status(thm)],[inference(para_from,[status(thm),theory(equality)],[57,4])]),
    [iquote('para_from,57.2.1,4.1.2,factor_simp')] ).

cnf(70,plain,
    ( dollar_c2 = A
    | member(dollar_f3(dollar_c2,A),A) ),
    inference(hyper,[status(thm)],[24,68]),
    [iquote('hyper,24,68')] ).

cnf(92,plain,
    ( A = empty_set
    | member(dollar_f3(A,empty_set),A) ),
    inference(hyper,[status(thm)],[24,4]),
    [iquote('hyper,24,4')] ).

cnf(163,plain,
    ( ~ member(A,dollar_c1)
    | empty_set = dollar_c1 ),
    inference(unit_del,[status(thm)],[inference(para_from,[status(thm),theory(equality)],[28,3]),4]),
    [iquote('para_from,28.1.1,3.1.2,unit_del,4')] ).

cnf(165,plain,
    ( empty_set = dollar_c1
    | A = dollar_c1
    | member(dollar_f3(A,dollar_c1),A) ),
    inference(hyper,[status(thm)],[163,24]),
    [iquote('hyper,163,24')] ).

cnf(168,plain,
    empty_set = dollar_c1,
    inference(unit_del,[status(thm)],[inference(factor,[status(thm)],[165]),4]),
    [iquote('factor,165.1.2,unit_del,4')] ).

cnf(186,plain,
    ( A = dollar_c1
    | member(dollar_f3(A,dollar_c1),A) ),
    inference(demod,[status(thm),theory(equality)],[inference(back_demod,[status(thm)],[92]),168,168]),
    [iquote('back_demod,92,demod,168,168')] ).

cnf(207,plain,
    ( union(dollar_c2,dollar_c1) != dollar_c1
    | dollar_c2 != dollar_c1 ),
    inference(flip,[status(thm),theory(equality)],[inference(unit_del,[status(thm)],[inference(demod,[status(thm),theory(equality)],[inference(back_demod,[status(thm)],[15]),168,168,168]),19])]),
    [iquote('back_demod,15,demod,168,168,168,unit_del,19,flip.2')] ).

cnf(208,plain,
    ~ member(A,dollar_c1),
    inference(demod,[status(thm),theory(equality)],[inference(back_demod,[status(thm)],[4]),168]),
    [iquote('back_demod,4,demod,168')] ).

cnf(233,plain,
    dollar_c2 = dollar_c1,
    inference(hyper,[status(thm)],[70,208]),
    [iquote('hyper,70,208')] ).

cnf(236,plain,
    ( dollar_c1 = A
    | member(dollar_f2(A),A) ),
    inference(demod,[status(thm),theory(equality)],[inference(hyper,[status(thm)],[70,10,23]),233]),
    [iquote('hyper,70,10,23,demod,233')] ).

cnf(242,plain,
    union(dollar_c1,dollar_c1) != dollar_c1,
    inference(unit_del,[status(thm)],[inference(demod,[status(thm),theory(equality)],[inference(back_demod,[status(thm)],[207]),233,233]),19]),
    [iquote('back_demod,207,demod,233,233,unit_del,19')] ).

cnf(264,plain,
    ( ~ member(A,B)
    | member(dollar_f2(B),B) ),
    inference(para_from,[status(thm),theory(equality)],[236,208]),
    [iquote('para_from,236.1.1,208.1.2')] ).

cnf(287,plain,
    ( A = dollar_c1
    | member(dollar_f2(A),A) ),
    inference(hyper,[status(thm)],[186,264]),
    [iquote('hyper,186,264')] ).

cnf(330,plain,
    member(dollar_f2(union(dollar_c1,dollar_c1)),union(dollar_c1,dollar_c1)),
    inference(unit_del,[status(thm)],[inference(para_from,[status(thm),theory(equality)],[287,242]),19]),
    [iquote('para_from,287.1.1,242.1.1,unit_del,19')] ).

cnf(462,plain,
    member(dollar_f2(union(dollar_c1,dollar_c1)),dollar_c1),
    inference(hyper,[status(thm)],[330,16]),
    [iquote('hyper,330,16')] ).

cnf(463,plain,
    $false,
    inference(binary,[status(thm)],[462,208]),
    [iquote('binary,462.1,208.1')] ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.08/0.12  % Problem  : SET600+3 : TPTP v8.1.0. Released v2.2.0.
% 0.08/0.13  % Command  : otter-tptp-script %s
% 0.13/0.34  % Computer : n026.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 10:43:24 EDT 2022
% 0.13/0.34  % CPUTime  : 
% 1.90/2.11  ----- Otter 3.3f, August 2004 -----
% 1.90/2.11  The process was started by sandbox2 on n026.cluster.edu,
% 1.90/2.11  Wed Jul 27 10:43:24 2022
% 1.90/2.11  The command was "./otter".  The process ID is 23106.
% 1.90/2.11  
% 1.90/2.11  set(prolog_style_variables).
% 1.90/2.11  set(auto).
% 1.90/2.11     dependent: set(auto1).
% 1.90/2.11     dependent: set(process_input).
% 1.90/2.11     dependent: clear(print_kept).
% 1.90/2.11     dependent: clear(print_new_demod).
% 1.90/2.11     dependent: clear(print_back_demod).
% 1.90/2.11     dependent: clear(print_back_sub).
% 1.90/2.11     dependent: set(control_memory).
% 1.90/2.11     dependent: assign(max_mem, 12000).
% 1.90/2.11     dependent: assign(pick_given_ratio, 4).
% 1.90/2.11     dependent: assign(stats_level, 1).
% 1.90/2.11     dependent: assign(max_seconds, 10800).
% 1.90/2.11  clear(print_given).
% 1.90/2.11  
% 1.90/2.11  formula_list(usable).
% 1.90/2.11  all A (A=A).
% 1.90/2.11  all B C D (member(D,union(B,C))<->member(D,B)|member(D,C)).
% 1.90/2.11  all B (-member(B,empty_set)).
% 1.90/2.11  all B C (B=C<->subset(B,C)&subset(C,B)).
% 1.90/2.11  all B C (union(B,C)=union(C,B)).
% 1.90/2.11  all B C (subset(B,C)<-> (all D (member(D,B)->member(D,C)))).
% 1.90/2.11  all B subset(B,B).
% 1.90/2.11  all B (empty(B)<-> (all C (-member(C,B)))).
% 1.90/2.11  all B C (B=C<-> (all D (member(D,B)<->member(D,C)))).
% 1.90/2.11  -(all B C (union(B,C)=empty_set<->B=empty_set&C=empty_set)).
% 1.90/2.11  end_of_list.
% 1.90/2.11  
% 1.90/2.11  -------> usable clausifies to:
% 1.90/2.11  
% 1.90/2.11  list(usable).
% 1.90/2.11  0 [] A=A.
% 1.90/2.11  0 [] -member(D,union(B,C))|member(D,B)|member(D,C).
% 1.90/2.11  0 [] member(D,union(B,C))| -member(D,B).
% 1.90/2.11  0 [] member(D,union(B,C))| -member(D,C).
% 1.90/2.11  0 [] -member(B,empty_set).
% 1.90/2.11  0 [] B!=C|subset(B,C).
% 1.90/2.11  0 [] B!=C|subset(C,B).
% 1.90/2.11  0 [] B=C| -subset(B,C)| -subset(C,B).
% 1.90/2.11  0 [] union(B,C)=union(C,B).
% 1.90/2.11  0 [] -subset(B,C)| -member(D,B)|member(D,C).
% 1.90/2.11  0 [] subset(B,C)|member($f1(B,C),B).
% 1.90/2.11  0 [] subset(B,C)| -member($f1(B,C),C).
% 1.90/2.11  0 [] subset(B,B).
% 1.90/2.11  0 [] -empty(B)| -member(C,B).
% 1.90/2.11  0 [] empty(B)|member($f2(B),B).
% 1.90/2.11  0 [] B!=C| -member(D,B)|member(D,C).
% 1.90/2.11  0 [] B!=C|member(D,B)| -member(D,C).
% 1.90/2.11  0 [] B=C|member($f3(B,C),B)|member($f3(B,C),C).
% 1.90/2.11  0 [] B=C| -member($f3(B,C),B)| -member($f3(B,C),C).
% 1.90/2.11  0 [] union($c2,$c1)=empty_set|$c2=empty_set.
% 1.90/2.11  0 [] union($c2,$c1)=empty_set|$c1=empty_set.
% 1.90/2.11  0 [] union($c2,$c1)!=empty_set|$c2!=empty_set|$c1!=empty_set.
% 1.90/2.11  end_of_list.
% 1.90/2.11  
% 1.90/2.11  SCAN INPUT: prop=0, horn=0, equality=1, symmetry=0, max_lits=3.
% 1.90/2.11  
% 1.90/2.11  This ia a non-Horn set with equality.  The strategy will be
% 1.90/2.11  Knuth-Bendix, ordered hyper_res, factoring, and unit
% 1.90/2.11  deletion, with positive clauses in sos and nonpositive
% 1.90/2.11  clauses in usable.
% 1.90/2.11  
% 1.90/2.11     dependent: set(knuth_bendix).
% 1.90/2.11     dependent: set(anl_eq).
% 1.90/2.11     dependent: set(para_from).
% 1.90/2.11     dependent: set(para_into).
% 1.90/2.11     dependent: clear(para_from_right).
% 1.90/2.11     dependent: clear(para_into_right).
% 1.90/2.11     dependent: set(para_from_vars).
% 1.90/2.11     dependent: set(eq_units_both_ways).
% 1.90/2.11     dependent: set(dynamic_demod_all).
% 1.90/2.11     dependent: set(dynamic_demod).
% 1.90/2.11     dependent: set(order_eq).
% 1.90/2.11     dependent: set(back_demod).
% 1.90/2.11     dependent: set(lrpo).
% 1.90/2.11     dependent: set(hyper_res).
% 1.90/2.11     dependent: set(unit_deletion).
% 1.90/2.11     dependent: set(factor).
% 1.90/2.11  
% 1.90/2.11  ------------> process usable:
% 1.90/2.11  ** KEPT (pick-wt=11): 1 [] -member(A,union(B,C))|member(A,B)|member(A,C).
% 1.90/2.11  ** KEPT (pick-wt=8): 2 [] member(A,union(B,C))| -member(A,B).
% 1.90/2.11  ** KEPT (pick-wt=8): 3 [] member(A,union(B,C))| -member(A,C).
% 1.90/2.11  ** KEPT (pick-wt=3): 4 [] -member(A,empty_set).
% 1.90/2.11  ** KEPT (pick-wt=6): 5 [] A!=B|subset(A,B).
% 1.90/2.11  ** KEPT (pick-wt=6): 6 [] A!=B|subset(B,A).
% 1.90/2.11  ** KEPT (pick-wt=9): 7 [] A=B| -subset(A,B)| -subset(B,A).
% 1.90/2.11  ** KEPT (pick-wt=9): 8 [] -subset(A,B)| -member(C,A)|member(C,B).
% 1.90/2.11  ** KEPT (pick-wt=8): 9 [] subset(A,B)| -member($f1(A,B),B).
% 1.90/2.11  ** KEPT (pick-wt=5): 10 [] -empty(A)| -member(B,A).
% 1.90/2.11  ** KEPT (pick-wt=9): 11 [] A!=B| -member(C,A)|member(C,B).
% 1.90/2.11  ** KEPT (pick-wt=9): 12 [] A!=B|member(C,A)| -member(C,B).
% 1.90/2.11  ** KEPT (pick-wt=13): 13 [] A=B| -member($f3(A,B),A)| -member($f3(A,B),B).
% 1.90/2.11  ** KEPT (pick-wt=11): 15 [copy,14,flip.2,flip.3] union($c2,$c1)!=empty_set|empty_set!=$c2|empty_set!=$c1.
% 1.90/2.11  
% 1.90/2.11  ------------> process sos:
% 1.90/2.11  ** KEPT (pick-wt=3): 19 [] A=A.
% 1.90/2.11  ** KEPT (pick-wt=7): 20 [] union(A,B)=union(B,A).
% 1.90/2.11  ** KEPT (pick-wt=8): 21 [] subset(A,B)|member($f1(A,B),A).
% 1.90/2.11  ** KEPT (pick-wt=3): 22 [] subset(A,A).
% 1.90/2.11  ** KEPT (pick-wt=6): 23 [] empty(A)|member($f2(A),A).
% 1.90/2.11  ** KEPT (pick-wt=13): 24 [] A=B|member($f3(A,B),A)|member($f3(A,B),B).
% 1.90/2.11  ** KEPT (pick-wt=8): 26 [copy,25,flip.2] union($c2,$c1)=empty_set|empty_set=$c2.
% 1.90/2.11  ** KEPT (pick-wt=8): 28 [copy,27,flip.2] union($c2,$c1)=empty_set|empty_set=$c1.
% 1.98/2.16    Following clause subsumed by 19 during input processing: 0 [copy,19,flip.1] A=A.
% 1.98/2.16  19 back subsumes 18.
% 1.98/2.16  19 back subsumes 17.
% 1.98/2.16    Following clause subsumed by 20 during input processing: 0 [copy,20,flip.1] union(A,B)=union(B,A).
% 1.98/2.16  
% 1.98/2.16  ======= end of input processing =======
% 1.98/2.16  
% 1.98/2.16  =========== start of search ===========
% 1.98/2.16  
% 1.98/2.16  -------- PROOF -------- 
% 1.98/2.16  
% 1.98/2.16  ----> UNIT CONFLICT at   0.05 sec ----> 463 [binary,462.1,208.1] $F.
% 1.98/2.16  
% 1.98/2.16  Length of proof is 21.  Level of proof is 11.
% 1.98/2.16  
% 1.98/2.16  ---------------- PROOF ----------------
% 1.98/2.16  % SZS status Theorem
% 1.98/2.16  % SZS output start Refutation
% See solution above
% 1.98/2.16  ------------ end of proof -------------
% 1.98/2.16  
% 1.98/2.16  
% 1.98/2.16  Search stopped by max_proofs option.
% 1.98/2.16  
% 1.98/2.16  
% 1.98/2.16  Search stopped by max_proofs option.
% 1.98/2.16  
% 1.98/2.16  ============ end of search ============
% 1.98/2.16  
% 1.98/2.16  -------------- statistics -------------
% 1.98/2.16  clauses given                 29
% 1.98/2.16  clauses generated           1023
% 1.98/2.16  clauses kept                 457
% 1.98/2.16  clauses forward subsumed     675
% 1.98/2.16  clauses back subsumed         28
% 1.98/2.16  Kbytes malloced             1953
% 1.98/2.16  
% 1.98/2.16  ----------- times (seconds) -----------
% 1.98/2.16  user CPU time          0.05          (0 hr, 0 min, 0 sec)
% 1.98/2.16  system CPU time        0.00          (0 hr, 0 min, 0 sec)
% 1.98/2.16  wall-clock time        2             (0 hr, 0 min, 2 sec)
% 1.98/2.16  
% 1.98/2.16  That finishes the proof of the theorem.
% 1.98/2.16  
% 1.98/2.16  Process 23106 finished Wed Jul 27 10:43:26 2022
% 1.98/2.16  Otter interrupted
% 1.98/2.16  PROOF FOUND
%------------------------------------------------------------------------------