TSTP Solution File: SCT121+1 by SOS---2.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : SOS---2.0
% Problem  : SCT121+1 : TPTP v8.1.0. Released v5.2.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : sos-script %s

% Computer : n013.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  : 600s
% DateTime : Mon Jul 18 22:12:12 EDT 2022

% Result   : Unknown 0.19s 0.50s
% Output   : None 
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----No solution output by system
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.06/0.11  % Problem  : SCT121+1 : TPTP v8.1.0. Released v5.2.0.
% 0.06/0.12  % Command  : sos-script %s
% 0.12/0.33  % Computer : n013.cluster.edu
% 0.12/0.33  % Model    : x86_64 x86_64
% 0.12/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.33  % Memory   : 8042.1875MB
% 0.12/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.33  % CPULimit : 300
% 0.12/0.33  % WCLimit  : 600
% 0.12/0.33  % DateTime : Fri Jul  1 23:14:44 EDT 2022
% 0.12/0.33  % CPUTime  : 
% 0.19/0.44  ----- Otter 3.2, August 2001 -----
% 0.19/0.44  The process was started by sandbox on n013.cluster.edu,
% 0.19/0.44  Fri Jul  1 23:14:44 2022
% 0.19/0.44  The command was "./sos".  The process ID is 9252.
% 0.19/0.44  
% 0.19/0.44  set(prolog_style_variables).
% 0.19/0.44  set(auto).
% 0.19/0.44     dependent: set(auto1).
% 0.19/0.44     dependent: set(process_input).
% 0.19/0.44     dependent: clear(print_kept).
% 0.19/0.44     dependent: clear(print_new_demod).
% 0.19/0.44     dependent: clear(print_back_demod).
% 0.19/0.44     dependent: clear(print_back_sub).
% 0.19/0.44     dependent: set(control_memory).
% 0.19/0.44     dependent: assign(max_mem, 12000).
% 0.19/0.44     dependent: assign(pick_given_ratio, 4).
% 0.19/0.44     dependent: assign(stats_level, 1).
% 0.19/0.44     dependent: assign(pick_semantic_ratio, 3).
% 0.19/0.44     dependent: assign(sos_limit, 5000).
% 0.19/0.44     dependent: assign(max_weight, 60).
% 0.19/0.44  clear(print_given).
% 0.19/0.44  
% 0.19/0.44  formula_list(usable).
% 0.19/0.44  
% 0.19/0.44  SCAN INPUT: prop=0, horn=0, equality=1, symmetry=0, max_lits=7.
% 0.19/0.44  
% 0.19/0.44  This ia a non-Horn set with equality.  The strategy will be
% 0.19/0.44  Knuth-Bendix, ordered hyper_res, ur_res, factoring, and
% 0.19/0.44  unit deletion, with positive clauses in sos and nonpositive
% 0.19/0.44  clauses in usable.
% 0.19/0.44  
% 0.19/0.44     dependent: set(knuth_bendix).
% 0.19/0.44     dependent: set(para_from).
% 0.19/0.44     dependent: set(para_into).
% 0.19/0.44     dependent: clear(para_from_right).
% 0.19/0.44     dependent: clear(para_into_right).
% 0.19/0.44     dependent: set(para_from_vars).
% 0.19/0.44     dependent: set(eq_units_both_ways).
% 0.19/0.44     dependent: set(dynamic_demod_all).
% 0.19/0.44     dependent: set(dynamic_demod).
% 0.19/0.44     dependent: set(order_eq).
% 0.19/0.44     dependent: set(back_demod).
% 0.19/0.44     dependent: set(lrpo).
% 0.19/0.44     dependent: set(hyper_res).
% 0.19/0.44     dependent: set(unit_deletion).
% 0.19/0.44     dependent: set(factor).
% 0.19/0.44  
% 0.19/0.44  ------------> process usable:
% 0.19/0.44    Following clause subsumed by 7 during input processing: 0 [] {-} -c_Relation_Otrans(A,B)| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,C,D),B)| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,D,E),B)|c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,C,E),B).
% 0.19/0.44    Following clause subsumed by 28 during input processing: 0 [] {-} A!=B|c_member(C,A,D)| -c_member(C,B,D).
% 0.19/0.44    Following clause subsumed by 10 during input processing: 0 [] {-} A!=B| -c_member(C,D,A)|c_member(C,D,B).
% 0.19/0.44    Following clause subsumed by 9 during input processing: 0 [] {-} A!=B|c_member(C,D,A)| -c_member(C,D,B).
% 0.19/0.44    Following clause subsumed by 38 during input processing: 0 [] {-} c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,B,C),c_Relation_OId__on(A,D))|B!=C| -c_member(A,B,D).
% 0.19/0.44    Following clause subsumed by 45 during input processing: 0 [] {-} -c_member(tc_fun(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),tc_HOL_Obool),A,c_Arrow__Order__Mirabelle_OLin)|B=C| -c_member(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),c_Product__Type_OPair(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt,B,C),A)| -c_member(tc_prod(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt),c_Product__Type_OPair(tc_Arrow__Order__Mirabelle_Oalt,tc_Arrow__Order__Mirabelle_Oalt,C,B),A).
% 0.19/0.44    Following clause subsumed by 41 during input processing: 0 [] {-} c_member(A,B,c_Relation_ODomain(A,C,D))| -c_member(tc_prod(A,C),c_Product__Type_OPair(A,C,B,E),D).
% 0.19/0.44    Following clause subsumed by 37 during input processing: 0 [] {-} c_member(A,B,c_Relation_ORange(C,A,D))| -c_member(tc_prod(C,A),c_Product__Type_OPair(C,A,E,B),D).
% 0.19/0.44    Following clause subsumed by 102 during input processing: 0 [] {-} -c_member(A,B,c_Wellfounded_Oacc(A,C))| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,D,B),C)|c_member(A,D,c_Wellfounded_Oacc(A,C)).
% 0.19/0.44    Following clause subsumed by 109 during input processing: 0 [] {-} -c_Relation_Osingle__valued(A,B,C)| -c_member(tc_prod(A,B),c_Product__Type_OPair(A,B,D,E),C)| -c_member(tc_prod(A,B),c_Product__Type_OPair(A,B,D,F),C)|E=F.
% 0.19/0.44    Following clause subsumed by 111 during input processing: 0 [] {-} -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,B,C),D)|hAPP(c_Recdef_Ocut(A,E,F,D,C),B)=hAPP(F,B).
% 0.19/0.44    Following clause subsumed by 123 during input processing: 0 [] {-} -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,B,C),c_Transitive__Closure_Ortrancl(A,D))| -c_member(A,C,c_Wellfounded_Oacc(A,D))|c_member(A,B,c_Wellfounded_Oacc(A,D)).
% 0.19/0.44    Following clause subsumed by 158 during input processing: 0 [] {-} c_Product__Type_OPair(A,B,C,D)!=c_Product__Type_OPair(A,B,E,F)|C=E.
% 0.19/0.44    Following clause subsumed by 159 during input processing: 0 [] {-} c_Product__Type_OPair(A,B,C,D)!=c_Product__Type_OPair(A,B,E,F)|D=F.
% 0.19/0.44    Following clause subsumed by 163 during input processing: 0 [] {-} -c_Relation_Oantisym(A,B)| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,C,D),B)| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,D,C),B)|C=D.
% 0.19/0.44    Following clause subsumed by 167 during input processing: 0 [] {-} -hBOOL(hAPP(A,B))|hBOOL(hAPP(c_Lattices_Osemilattice__sup__class_Osup(tc_fun(C,tc_HOL_Obool),A,D),B)).
% 0.19/0.44    Following clause subsumed by 166 during input processing: 0 [] {-} -hBOOL(hAPP(A,B))|hBOOL(hAPP(c_Lattices_Osemilattice__sup__class_Osup(tc_fun(C,tc_HOL_Obool),D,A),B)).
% 0.19/0.44    Following clause subsumed by 168 during input processing: 0 [] {-} -c_member(A,B,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),C,D))|c_member(A,B,C)|c_member(A,B,D).
% 0.19/0.44    Following clause subsumed by 170 during input processing: 0 [] {-} c_member(A,B,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),C,D))| -c_member(A,B,C).
% 0.19/0.44    Following clause subsumed by 169 during input processing: 0 [] {-} c_member(A,B,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),C,D))| -c_member(A,B,D).
% 0.19/0.44    Following clause subsumed by 170 during input processing: 0 [] {-} -c_member(A,B,C)|c_member(A,B,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),C,D)).
% 0.19/0.44    Following clause subsumed by 169 during input processing: 0 [] {-} -c_member(A,B,C)|c_member(A,B,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),D,C)).
% 0.19/0.44    Following clause subsumed by 157 during input processing: 0 [] {-} c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,B,C),c_Transitive__Closure_Ortrancl(A,D))|B=C| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,B,C),c_Transitive__Closure_Otrancl(A,D)).
% 0.19/0.44    Following clause subsumed by 200 during input processing: 0 [] {-} -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,B,C),c_Transitive__Closure_Ortrancl(A,D))|B=C|c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,B,C),c_Transitive__Closure_Otrancl(A,D)).
% 0.19/0.44    Following clause subsumed by 219 during input processing: 0 [] {-} -class_Lattices_Osemilattice__sup(A)|c_Lattices_Osemilattice__sup__class_Osup(A,B,B)=B.
% 0.19/0.44    Following clause subsumed by 220 during input processing: 0 [] {-} -class_Lattices_Osemilattice__sup(A)|c_Lattices_Osemilattice__sup__class_Osup(A,B,C)=c_Lattices_Osemilattice__sup__class_Osup(A,C,B).
% 0.19/0.44    Following clause subsumed by 222 during input processing: 0 [] {-} -class_Lattices_Osemilattice__sup(A)|c_Lattices_Osemilattice__sup__class_Osup(A,B,c_Lattices_Osemilattice__sup__class_Osup(A,B,C))=c_Lattices_Osemilattice__sup__class_Osup(A,B,C).
% 0.19/0.44    Following clause subsumed by 224 during input processing: 0 [] {-} -class_Lattices_Osemilattice__sup(A)|c_Lattices_Osemilattice__sup__class_Osup(A,B,c_Lattices_Osemilattice__sup__class_Osup(A,C,D))=c_Lattices_Osemilattice__sup__class_Osup(A,C,c_Lattices_Osemilattice__sup__class_Osup(A,B,D)).
% 0.19/0.44    Following clause subsumed by 226 during input processing: 0 [] {-} -class_Lattices_Osemilattice__sup(A)|c_Lattices_Osemilattice__sup__class_Osup(A,c_Lattices_Osemilattice__sup__class_Osup(A,B,C),D)=c_Lattices_Osemilattice__sup__class_Osup(A,B,c_Lattices_Osemilattice__sup__class_Osup(A,C,D)).
% 0.19/0.44    Following clause subsumed by 246 during input processing: 0 [] {-} -c_member(A,B,c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),C,D))|c_member(A,B,C).
% 0.19/0.44    Following clause subsumed by 247 during input processing: 0 [] {-} -c_member(A,B,c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),C,D))| -c_member(A,B,D).
% 0.19/0.44    Following clause subsumed by 248 during input processing: 0 [] {-} c_member(A,B,c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),C,D))| -c_member(A,B,C)|c_member(A,B,D).
% 0.19/0.44    Following clause subsumed by 246 during input processing: 0 [] {-} -c_member(A,B,c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),C,D))|c_member(A,B,C).
% 0.19/0.44    Following clause subsumed by 247 during input processing: 0 [] {-} -c_member(A,B,c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),C,D))| -c_member(A,B,D).
% 0.19/0.44    Following clause subsumed by 245 during input processing: 0 [] {-} -c_member(A,B,c_Set_Oinsert(A,C,D))|B=C|c_member(A,B,D).
% 0.19/0.44    Following clause subsumed by 244 during input processing: 0 [] {-} c_member(A,B,c_Set_Oinsert(A,C,D))|B!=C.
% 0.19/0.44    Following clause subsumed by 243 during input processing: 0 [] {-} c_member(A,B,c_Set_Oinsert(A,C,D))| -c_member(A,B,D).
% 0.19/0.44    Following clause subsumed by 243 during input processing: 0 [] {-} -c_member(A,B,C)|c_member(A,B,c_Set_Oinsert(A,D,C)).
% 0.19/0.44    Following clause subsumed by 252 during input processing: 0 [] {-} -c_member(A,B,C)|c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),c_Set_Oinsert(A,B,D),C)=c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),D,C).
% 0.19/0.44    Following clause subsumed by 270 during input processing: 0 [] {-} -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),B,C)| -c_member(A,D,B)|c_member(A,D,C).
% 0.19/0.44    Following clause subsumed by 270 during input processing: 0 [] {-} -c_member(A,B,C)| -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),C,D)|c_member(A,B,D).
% 0.19/0.44    Following clause subsumed by 270 during input processing: 0 [] {-} -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),B,C)| -c_member(A,D,B)|c_member(A,D,C).
% 0.19/0.44    Following clause subsumed by 268 during input processing: 0 [] {-} A=B| -c_Orderings_Oord__class_Oless__eq(tc_fun(C,tc_HOL_Obool),A,B)| -c_Orderings_Oord__class_Oless__eq(tc_fun(C,tc_HOL_Obool),B,A).
% 0.19/0.44    Following clause subsumed by 288 during input processing: 0 [] {-} A!=B|c_Orderings_Oord__class_Oless__eq(tc_fun(C,tc_HOL_Obool),A,B).
% 0.19/0.44    Following clause subsumed by 289 during input processing: 0 [] {-} A!=B|c_Orderings_Oord__class_Oless__eq(tc_fun(C,tc_HOL_Obool),B,A).
% 0.19/0.44    Following clause subsumed by 285 during input processing: 0 [] {-} -class_Orderings_Oord(A)| -c_Orderings_Oord__class_Oless__eq(tc_fun(B,A),C,D)|c_Orderings_Oord__class_Oless__eq(A,hAPP(C,E),hAPP(D,E)).
% 0.19/0.44    Following clause subsumed by 292 during input processing: 0 [] {-} -class_Orderings_Oorder(A)| -c_Orderings_Oord__class_Oless__eq(A,B,C)| -c_Orderings_Oord__class_Oless__eq(A,C,B)|C=B.
% 0.19/0.44    Following clause subsumed by 290 during input processing: 0 [] {-} -class_Orderings_Oorder(A)| -c_Orderings_Oord__class_Oless__eq(A,B,C)|c_Orderings_Oord__class_Oless__eq(A,C,B)|C!=B.
% 0.19/0.44    Following clause subsumed by 293 during input processing: 0 [] {-} -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),B,C)| -hBOOL(hAPP(B,D))|hBOOL(hAPP(C,D)).
% 0.19/0.44    Following clause subsumed by 292 during input processing: 0 [] {-} -class_Orderings_Oorder(A)| -c_Orderings_Oord__class_Oless__eq(A,B,C)| -c_Orderings_Oord__class_Oless__eq(A,C,B)|B=C.
% 0.19/0.44    Following clause subsumed by 292 during input processing: 0 [] {-} -class_Orderings_Oorder(A)| -c_Orderings_Oord__class_Oless__eq(A,B,C)| -c_Orderings_Oord__class_Oless__eq(A,C,B)|C=B.
% 0.19/0.44    Following clause subsumed by 288 during input processing: 0 [] {-} A!=B|c_Orderings_Oord__class_Oless__eq(tc_fun(C,tc_HOL_Obool),A,B).
% 0.19/0.44    Following clause subsumed by 289 during input processing: 0 [] {-} A!=B|c_Orderings_Oord__class_Oless__eq(tc_fun(C,tc_HOL_Obool),B,A).
% 0.19/0.44    Following clause subsumed by 285 during input processing: 0 [] {-} -class_Orderings_Oord(A)| -c_Orderings_Oord__class_Oless__eq(tc_fun(B,A),C,D)|c_Orderings_Oord__class_Oless__eq(A,hAPP(C,E),hAPP(D,E)).
% 0.19/0.44    Following clause subsumed by 287 during input processing: 0 [] {-} -class_Orderings_Olinorder(A)|c_Orderings_Oord__class_Oless__eq(A,B,C)|c_Orderings_Oord__class_Oless__eq(A,C,B).
% 0.19/0.44    Following clause subsumed by 307 during input processing: 0 [] {-} -class_Lattices_Osemilattice__sup(A)| -c_Orderings_Oord__class_Oless__eq(A,B,C)|c_Lattices_Osemilattice__sup__class_Osup(A,B,C)=C.
% 0.19/0.44    Following clause subsumed by 311 during input processing: 0 [] {-} -class_Lattices_Osemilattice__sup(A)| -c_Orderings_Oord__class_Oless__eq(A,B,C)| -c_Orderings_Oord__class_Oless__eq(A,D,C)|c_Orderings_Oord__class_Oless__eq(A,c_Lattices_Osemilattice__sup__class_Osup(A,B,D),C).
% 0.19/0.45    Following clause subsumed by 311 during input processing: 0 [] {-} -class_Lattices_Osemilattice__sup(A)| -c_Orderings_Oord__class_Oless__eq(A,B,C)| -c_Orderings_Oord__class_Oless__eq(A,D,C)|c_Orderings_Oord__class_Oless__eq(A,c_Lattices_Osemilattice__sup__class_Osup(A,B,D),C).
% 0.19/0.45    Following clause subsumed by 309 during input processing: 0 [] {-} -class_Lattices_Osemilattice__sup(A)| -c_Orderings_Oord__class_Oless__eq(A,c_Lattices_Osemilattice__sup__class_Osup(A,B,C),D)|c_Orderings_Oord__class_Oless__eq(A,B,D).
% 0.19/0.45    Following clause subsumed by 310 during input processing: 0 [] {-} -class_Lattices_Osemilattice__sup(A)| -c_Orderings_Oord__class_Oless__eq(A,c_Lattices_Osemilattice__sup__class_Osup(A,B,C),D)|c_Orderings_Oord__class_Oless__eq(A,C,D).
% 0.19/0.45    Following clause subsumed by 316 during input processing: 0 [] {-} -c_member(A,B,C)|C!=c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)).
% 0.19/0.45    Following clause subsumed by 269 during input processing: 0 [] {-} -c_member(A,B,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))).
% 0.19/0.45    Following clause subsumed by 316 during input processing: 0 [] {-} A!=c_Orderings_Obot__class_Obot(tc_fun(B,tc_HOL_Obool))| -c_member(B,C,A).
% 0.19/0.45    Following clause subsumed by 320 during input processing: 0 [] {-} -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),B,C)|c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),B,C)=C.
% 0.19/0.45    Following clause subsumed by 318 during input processing: 0 [] {-} c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),B,c_Set_Oinsert(A,C,D))|c_member(A,C,B)| -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),B,D).
% 0.19/0.45    Following clause subsumed by 348 during input processing: 0 [] {-} c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),B,c_Set_Oinsert(A,C,D))| -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,c_Set_Oinsert(A,C,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)))),D)| -c_member(A,C,B).
% 0.19/0.45    Following clause subsumed by 318 during input processing: 0 [] {-} c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),B,c_Set_Oinsert(A,C,D))| -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,c_Set_Oinsert(A,C,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)))),D)| -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),B,D).
% 0.19/0.45    Following clause subsumed by 357 during input processing: 0 [] {-} -c_Wellfounded_Owf(A,B)| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,C,D),B)| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,D,C),B).
% 0.19/0.45    Following clause subsumed by 356 during input processing: 0 [] {-} -c_Wellfounded_Owf(A,B)| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,C,C),B).
% 0.19/0.45    Following clause subsumed by 350 during input processing: 0 [] {-} c_member(A,B,C)| -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),C,c_Set_Oinsert(A,B,D))|c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),C,D).
% 0.19/0.45    Following clause subsumed by 318 during input processing: 0 [] {-} c_member(A,B,C)|c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),C,c_Set_Oinsert(A,B,D))| -c_Orderings_Oord__class_Oless__eq(tc_fun(A,tc_HOL_Obool),C,D).
% 0.19/0.45    Following clause subsumed by 244 during input processing: 0 [] {-} c_member(A,B,c_Set_Oinsert(A,C,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))))|B!=C.
% 0.19/0.45    Following clause subsumed by 361 during input processing: 0 [] {-} -c_member(A,B,c_Set_Oinsert(A,C,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))))|B=C.
% 0.19/0.45    Following clause subsumed by 365 during input processing: 0 [] {-} -c_Wellfounded_Owf(A,B)|c_member(A,C,c_Wellfounded_Oacc(A,B)).
% 0.19/0.45    Following clause subsumed by 378 during input processing: 0 [] {-} c_member(A,B,c_Relation_OImage(C,A,D,E))| -c_member(C,F,E)| -c_member(tc_prod(C,A),c_Product__Type_OPair(C,A,F,B),D).
% 0.19/0.45    Following clause subsumed by 414 during input processing: 0 [] {-} -c_Equiv__Relations_Oequiv(A,B,C)| -c_member(A,D,B)| -c_member(A,E,B)|c_Relation_OImage(A,A,C,c_Set_Oinsert(A,D,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))))!=c_Relation_OImage(A,A,C,c_Set_Oinsert(A,E,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))))|c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,D,E),C).
% 0.19/0.45    Following clause subsumed by 413 during input processing: 0 [] {-} -c_Equiv__Relations_Oequiv(A,B,C)| -c_member(A,D,B)| -c_member(A,E,B)|c_Relation_OImage(A,A,C,c_Set_Oinsert(A,D,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))))=c_Relation_OImage(A,A,C,c_Set_Oinsert(A,E,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))))| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,D,E),C).
% 0.19/0.45    Following clause subsumed by 413 during input processing: 0 [] {-} -c_Equiv__Relations_Oequiv(A,B,C)| -c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,D,E),C)|c_Relation_OImage(A,A,C,c_Set_Oinsert(A,D,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))))=c_Relation_OImage(A,A,C,c_Set_Oinsert(A,E,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)))).
% 0.19/0.45    Following clause subsumed by 414 during input processing: 0 [] {-} -c_Equiv__Relations_Oequiv(A,B,C)|c_member(tc_prod(A,A),c_Product__Type_OPair(A,A,D,E),C)|c_Relation_OImage(A,A,C,c_Set_Oinsert(A,D,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))))!=c_Relation_OImage(A,A,C,c_Set_Oinsert(A,E,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))))| -c_member(A,D,B)| -c_member(A,E,B).
% 0.19/0.45    Following clause subsumed by 419 during input processing: 0 [flip.2] {-} -c_Wellfounded_Owf(A,B)|hAPP(hAPP(D,c_Recdef_Ocut(A,C,c_Recdef_Owfrec(A,C,B,D),B,E)),E)=hAPP(c_Recdef_Owfrec(A,C,B,D),E).
% 0.19/0.45    Following clause subsumed by 440 during input processing: 0 [] {-} -class_Lattices_Osemilattice__inf(A)| -c_Orderings_Oord__class_Oless__eq(A,B,C)|c_Lattices_Osemilattice__inf__class_Oinf(A,B,C)=B.
% 0.19/0.45    Following clause subsumed by 444 during input processing: 0 [] {-} -class_Lattices_Osemilattice__inf(A)| -c_Orderings_Oord__class_Oless__eq(A,B,C)| -c_Orderings_Oord__class_Oless__eq(A,B,D)|c_Orderings_Oord__class_Oless__eq(A,B,c_Lattices_Osemilattice__inf__class_Oinf(A,C,D)).
% 0.19/0.45    Following clause subsumed by 444 during input processing: 0 [] {-} -class_Lattices_Osemilattice__inf(A)| -c_Orderings_Oord__class_Oless__eq(A,B,C)| -c_Orderings_Oord__class_Oless__eq(A,B,D)|c_Orderings_Oord__class_Oless__eq(A,B,c_Lattices_Osemilattice__inf__class_Oinf(A,C,D)).
% 0.19/0.45    Following clause subsumed by 442 during input processing: 0 [] {-} -class_Lattices_Osemilattice__inf(A)| -c_Orderings_Oord__class_Oless__eq(A,B,c_Lattices_Osemilattice__inf__class_Oinf(A,C,D))|c_Orderings_Oord__class_Oless__eq(A,B,C).
% 0.19/0.45    Following clause subsumed by 443 during input processing: 0 [] {-} -class_Lattices_Osemilattice__inf(A)| -c_Orderings_Oord__class_Oless__eq(A,B,c_Lattices_Osemilattice__inf__class_Oinf(A,C,D))|c_Orderings_Oord__class_Oless__eq(A,B,D).
% 0.19/0.45    Following clause subsumed by 459 during input processing: 0 [flip.2] {-} -c_member(A,B,C)|c_Set_Oinsert(A,B,c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),D,C))=c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),c_Set_Oinsert(A,B,D),C).
% 0.19/0.45    Following clause subsumed by 461 during input processing: 0 [flip.2] {-} -c_member(A,B,C)|c_Set_Oinsert(A,B,c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,D))=c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,c_Set_Oinsert(A,B,D)).
% 0.19/0.45    Following clause subsumed by 465 during input processing: 0 [] {-} -class_Lattices_Osemilattice__inf(A)|c_Lattices_Osemilattice__inf__class_Oinf(A,B,B)=B.
% 0.19/0.45    Following clause subsumed by 466 during input processing: 0 [] {-} -class_Lattices_Osemilattice__inf(A)|c_Lattices_Osemilattice__inf__class_Oinf(A,B,C)=c_Lattices_Osemilattice__inf__class_Oinf(A,C,B).
% 0.19/0.45    Following clause subsumed by 468 during input processing: 0 [] {-} -class_Lattices_Osemilattice__inf(A)|c_Lattices_Osemilattice__inf__class_Oinf(A,B,c_Lattices_Osemilattice__inf__class_Oinf(A,B,C))=c_Lattices_Osemilattice__inf__class_Oinf(A,B,C).
% 0.19/0.45    Following clause subsumed by 470 during input processing: 0 [] {-} -class_Lattices_Osemilattice__inf(A)|c_Lattices_Osemilattice__inf__class_Oinf(A,B,c_Lattices_Osemilattice__inf__class_Oinf(A,C,D))=c_Lattices_Osemilattice__inf__class_Oinf(A,C,c_Lattices_Osemilattice__inf__class_Oinf(A,B,D)).
% 0.19/0.49    Following clause subsumed by 472 during input processing: 0 [] {-} -class_Lattices_Osemilattice__inf(A)|c_Lattices_Osemilattice__inf__class_Oinf(A,c_Lattices_Osemilattice__inf__class_Oinf(A,B,C),D)=c_Lattices_Osemilattice__inf__class_Oinf(A,B,c_Lattices_Osemilattice__inf__class_Oinf(A,C,D)).
% 0.19/0.49    Following clause subsumed by 424 during input processing: 0 [] {-} -hBOOL(hAPP(c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),B,C),D))|hBOOL(hAPP(B,D)).
% 0.19/0.49    Following clause subsumed by 425 during input processing: 0 [] {-} -hBOOL(hAPP(c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),B,C),D))|hBOOL(hAPP(C,D)).
% 0.19/0.49    Following clause subsumed by 427 during input processing: 0 [] {-} -c_member(A,B,c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,D))|c_member(A,B,D).
% 0.19/0.49    Following clause subsumed by 426 during input processing: 0 [] {-} -c_member(A,B,c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,D))|c_member(A,B,C).
% 0.19/0.49    Following clause subsumed by 426 during input processing: 0 [] {-} -c_member(A,B,c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,D))|c_member(A,B,C).
% 0.19/0.49    Following clause subsumed by 427 during input processing: 0 [] {-} -c_member(A,B,c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,D))|c_member(A,B,D).
% 0.19/0.49    Following clause subsumed by 428 during input processing: 0 [] {-} c_member(A,B,c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,D))| -c_member(A,B,C)| -c_member(A,B,D).
% 0.19/0.49  191 back subsumes 171.
% 0.19/0.49  201 back subsumes 128.
% 0.19/0.49  288 back subsumes 284.
% 0.19/0.49    Following clause subsumed by 328 during input processing: 0 [copy,327,flip.1] {-} c_Set_Oinsert(A,B,C)!=c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)).
% 0.19/0.49    Following clause subsumed by 327 during input processing: 0 [copy,328,flip.1] {-} c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))!=c_Set_Oinsert(A,B,C).
% 0.19/0.49  544 back subsumes 540.
% 0.19/0.49  546 back subsumes 538.
% 0.19/0.49  550 back subsumes 549.
% 0.19/0.49  550 back subsumes 543.
% 0.19/0.49  
% 0.19/0.49  ------------> process sos:
% 0.19/0.49    Following clause subsumed by 607 during input processing: 0 [] {-} c_member(A,B,c_Orderings_Otop__class_Otop(tc_fun(A,tc_HOL_Obool))).
% 0.19/0.49    Following clause subsumed by 686 during input processing: 0 [demod,743] {-} c_Relation_Oantisym(A,c_Relation_OId__on(A,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)))).
% 0.19/0.49    Following clause subsumed by 787 during input processing: 0 [] {-} c_Nitpick_Ofold__graph_H(A,B,C,D,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)),D).
% 0.19/0.49    Following clause subsumed by 805 during input processing: 0 [] {-} c_member(A,B,C)|c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),c_Set_Oinsert(A,B,D),C)=c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),D,C).
% 0.19/0.49    Following clause subsumed by 806 during input processing: 0 [] {-} c_member(A,B,C)|c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,c_Set_Oinsert(A,B,D))=c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,D).
% 0.19/0.49  643 back subsumes 555.
% 0.19/0.49    Following clause subsumed by 656 during input processing: 0 [copy,656,flip.1] {-} c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),B,C)=c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),C,B).
% 0.19/0.49    Following clause subsumed by 659 during input processing: 0 [copy,659,flip.1] {-} c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),B,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),C,D))=c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),C,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),B,D)).
% 0.19/0.49    Following clause subsumed by 707 during input processing: 0 [copy,707,flip.1] {-} c_Set_Oinsert(A,B,c_Set_Oinsert(A,C,D))=c_Set_Oinsert(A,C,c_Set_Oinsert(A,B,D)).
% 0.19/0.49  740 back subsumes 589.
% 0.19/0.49  740 back subsumes 588.
% 0.19/0.49  740 back subsumes 581.
% 0.19/0.49    Following clause subsumed by 816 during input processing: 0 [copy,816,flip.1] {-} c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),B,C)=c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,B).
% 0.19/0.49    Following clause subsumed by 819 during input processing: 0 [copy,819,flip.1] {-} c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),B,c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,D))=c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),C,c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),B,D)).
% 0.19/0.49    Following clause subsumed by 865 during input processing: 0 [copy,865,flip.1] {-} A=A.
% 0.19/0.49  865 back subsumes 606.
% 0.19/0.49  865 back subsumes 592.
% 0.19/0.49  865 back subsumes 585.
% 0.19/0.49  865 back subsumes 584.
% 0.19/0.49  865 back subsumes 583.
% 0.19/0.49  865 back subsumes 582.
% 0.19/0.49  865 back subsumes 566.
% 0.19/0.49  865 back subsumes 563.
% 0.19/0.49  865 back subsumes 562.
% 0.19/0.49  865 back subsumes 561.
% 0.19/0.49  865 back subsumes 557.
% 0.19/0.49  865 back subsumes 554.
% 0.19/0.49  865 back subsumes 546.
% 0.19/0.49  865 back subsumes 541.
% 0.19/0.49  865 back subsumes 539.
% 0.19/0.49  865 back subsumes 536.
% 0.19/0.49  865 back subsumes 535.
% 0.19/0.49  865 back subsumes 534.
% 0.19/0.49  865 back subsumes 525.
% 0.19/0.49  865 back subsumes 522.
% 0.19/0.49  865 back subsumes 518.
% 0.19/0.49  865 back subsumes 517.
% 0.19/0.49  865 back subsumes 510.
% 0.19/0.49    Following clause subsumed by 645 during input processing: 0 [copy,866,flip.1] {-} c_Relation_ORange(A,A,c_Transitive__Closure_Ortrancl(A,B))=c_Orderings_Otop__class_Otop(tc_fun(A,tc_HOL_Obool)).
% 0.19/0.49    Following clause subsumed by 646 during input processing: 0 [copy,867,flip.1] {-} c_Relation_ODomain(A,A,c_Transitive__Closure_Ortrancl(A,B))=c_Orderings_Otop__class_Otop(tc_fun(A,tc_HOL_Obool)).
% 0.19/0.49    Following clause subsumed by 691 during input processing: 0 [copy,868,flip.1] {-} c_Product__Type_Oprod_Oprod__rec(A,B,C,D,c_Product__Type_OPair(A,B,E,F))=hAPP(hAPP(D,E),F).
% 0.19/0.49    Following clause subsumed by 693 during input processing: 0 [copy,869,flip.1] {-} c_Product__Type_Ointernal__split(A,B,C,D,c_Product__Type_OPair(A,B,E,F))=hAPP(hAPP(D,E),F).
% 0.19/0.49    Following clause subsumed by 697 during input processing: 0 [copy,870,flip.1] {-} c_Relation_OField(A,B)=c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),c_Relation_ODomain(A,A,B),c_Relation_ORange(A,A,B)).
% 0.19/0.49    Following clause subsumed by 721 during input processing: 0 [copy,876,flip.1] {-} c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),B,c_Set_Oinsert(A,C,D))=c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),c_Set_Oinsert(A,C,B),D).
% 0.19/0.49    Following clause subsumed by 727 during input processing: 0 [copy,877,flip.1] {-} c_Relation_OField(A,c_Set_Oinsert(tc_prod(A,A),c_Product__Type_OPair(A,A,B,C),D))=c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),c_Set_Oinsert(A,B,c_Set_Oinsert(A,C,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)))),c_Relation_OField(A,D)).
% 0.19/0.49    Following clause subsumed by 761 during input processing: 0 [copy,884,flip.1] {-} c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,B)=c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)).
% 0.19/0.49    Following clause subsumed by 766 during input processing: 0 [copy,885,flip.1] {-} c_Set_Oinsert(A,B,C)=c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),c_Set_Oinsert(A,B,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))),C).
% 0.19/0.49    Following clause subsumed by 767 during input processing: 0 [copy,886,flip.1] {-} c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,c_Set_Oinsert(A,C,D))=c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,D),c_Set_Oinsert(A,C,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)))).
% 0.19/0.49    Following clause subsumed by 768 during input processing: 0 [copy,887,flip.1] {-} c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,c_Set_Oinsert(A,C,D))=c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,c_Set_Oinsert(A,C,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)))),D).
% 0.19/0.49    Following clause subsumed by 781 during input processing: 0 [copy,913,flip.1] {-} c_Relation_OImage(A,B,C,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)))=c_Orderings_Obot__class_Obot(tc_fun(B,tc_HOL_Obool)).
% 0.19/0.49    Following clause subsumed by 782 during input processing: 0 [copy,914,flip.1] {-} c_Relation_OImage(A,B,C,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),D,E))=c_Lattices_Osemilattice__sup__class_Osup(tc_fun(B,tc_HOL_Obool),c_Relation_OImage(A,B,C,D),c_Relation_OImage(A,B,C,E)).
% 0.19/0.49    Following clause subsumed by 786 during input processing: 0 [copy,915,flip.1] {-} c_Relation_OImage(A,B,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(tc_prod(A,B),tc_HOL_Obool),C,D),E)=c_Lattices_Osemilattice__sup__class_Osup(tc_fun(B,tc_HOL_Obool),c_Relation_OImage(A,B,C,E),c_Relation_OImage(A,B,D,E)).
% 0.19/0.49    Following clause subsumed by 792 during input processing: 0 [copy,916,flip.1] {-} c_Equiv__Relations_Oquotient(A,c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)),B)=c_Orderings_Obot__class_Obot(tc_fun(tc_fun(A,tc_HOL_Obool),tc_HOL_Obool)).
% 0.19/0.49    Following clause subsumed by 920 during input processing: 0 [copy,917,flip.1] {-} c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),B,C),B)=c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool)).
% 0.19/0.49    Following clause subsumed by 919 during input processing: 0 [copy,918,flip.1] {-} c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),C,D))=c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,C),D).
% 0.19/0.49    Following clause subsumed by 918 during input processing: 0 [copy,919,flip.1] {-} c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,C),D)=c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),B,c_Lattices_Osemilattice__sup__class_Osup(tc_fun(A,tc_HOL_Obool),C,D)).
% 0.19/0.49    Following clause subsumed by 917 during input processing: 0 [copy,920,flip.1] {-} c_Orderings_Obot__class_Obot(tc_fun(A,tc_HOL_Obool))=c_Groups_Ominus__class_Ominus(tc_fun(A,tc_HOL_Obool),c_Lattices_Osemilattice__inf__class_Oinf(tc_fun(A,tc_HOL_Obool),B,C),B).
% 0.19/0.49  
% 0.19/0.49  ======= end of input processing =======
% 0.19/0.50  
% 0.19/0.50  SEGMENTATION FAULT!!  This is probably caused by a
% 0.19/0.50  bug in Otter.  Please send copy of the input file to
% 0.19/0.50  otter@mcs.anl.gov, let us know what version of Otter you are
% 0.19/0.50  using, and send any other info that might be useful.
% 0.19/0.50  
% 0.19/0.50  
% 0.19/0.50  SEGMENTATION FAULT!!  This is probably caused by a
% 0.19/0.50  bug in Otter.  Please send copy of the input file to
% 0.19/0.50  otter@mcs.anl.gov, let us know what version of Otter you are
% 0.19/0.50  using, and send any other info that might be useful.
% 0.19/0.50  
% 0.19/0.50  
% 0.19/0.50  The job finished Fri Jul  1 23:14:44 2022
%------------------------------------------------------------------------------