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

View Problem - Process Solution

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

% Computer : n023.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:56 EDT 2022

% Result   : Theorem 1.64s 2.23s
% Output   : Refutation 1.64s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :    3
%            Number of leaves      :    7
% Syntax   : Number of clauses     :   13 (  12 unt;   0 nHn;   4 RR)
%            Number of literals    :   14 (  11 equ;   3 neg)
%            Maximal clause size   :    2 (   1 avg)
%            Maximal term depth    :    3 (   2 avg)
%            Number of predicates  :    3 (   1 usr;   1 prp; 0-2 aty)
%            Number of functors    :    7 (   7 usr;   4 con; 0-2 aty)
%            Number of variables   :   22 (   2 sgn)

% Comments : 
%------------------------------------------------------------------------------
cnf(2,axiom,
    ( difference(A,B) = empty_set
    | ~ subset(A,B) ),
    file('SET635+3.p',unknown),
    [] ).

cnf(19,axiom,
    intersection(dollar_c3,difference(dollar_c2,dollar_c1)) != difference(intersection(dollar_c3,dollar_c2),intersection(dollar_c3,dollar_c1)),
    file('SET635+3.p',unknown),
    [] ).

cnf(24,axiom,
    subset(intersection(A,B),A),
    file('SET635+3.p',unknown),
    [] ).

cnf(25,axiom,
    union(A,empty_set) = A,
    file('SET635+3.p',unknown),
    [] ).

cnf(27,axiom,
    difference(A,intersection(B,C)) = union(difference(A,B),difference(A,C)),
    file('SET635+3.p',unknown),
    [] ).

cnf(28,plain,
    union(difference(A,B),difference(A,C)) = difference(A,intersection(B,C)),
    inference(flip,[status(thm),theory(equality)],[inference(copy,[status(thm)],[27])]),
    [iquote('copy,27,flip.1')] ).

cnf(31,axiom,
    intersection(A,difference(B,C)) = difference(intersection(A,B),C),
    file('SET635+3.p',unknown),
    [] ).

cnf(32,axiom,
    union(A,B) = union(B,A),
    file('SET635+3.p',unknown),
    [] ).

cnf(38,plain,
    difference(intersection(dollar_c3,dollar_c2),intersection(dollar_c3,dollar_c1)) != difference(intersection(dollar_c3,dollar_c2),dollar_c1),
    inference(flip,[status(thm),theory(equality)],[inference(demod,[status(thm),theory(equality)],[inference(back_demod,[status(thm)],[19]),31])]),
    [iquote('back_demod,19,demod,31,flip.1')] ).

cnf(41,plain,
    difference(intersection(A,B),A) = empty_set,
    inference(hyper,[status(thm)],[24,2]),
    [iquote('hyper,24,2')] ).

cnf(62,plain,
    union(empty_set,A) = A,
    inference(flip,[status(thm),theory(equality)],[inference(para_into,[status(thm),theory(equality)],[32,25])]),
    [iquote('para_into,32.1.1,25.1.1,flip.1')] ).

cnf(227,plain,
    difference(intersection(A,B),intersection(A,C)) = difference(intersection(A,B),C),
    inference(flip,[status(thm),theory(equality)],[inference(demod,[status(thm),theory(equality)],[inference(para_from,[status(thm),theory(equality)],[41,28]),62])]),
    [iquote('para_from,41.1.1,28.1.1.1,demod,62,flip.1')] ).

cnf(229,plain,
    $false,
    inference(binary,[status(thm)],[227,38]),
    [iquote('binary,227.1,38.1')] ).

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