TSTP Solution File: LCL541+1 by Prover9---1109a

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Prover9---1109a
% Problem  : LCL541+1 : TPTP v8.1.0. Bugfixed v4.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : tptp2X_and_run_prover9 %d %s

% Computer : n027.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 : Sun Jul 17 13:47:28 EDT 2022

% Result   : Theorem 73.61s 73.91s
% Output   : Refutation 73.63s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.11/0.11  % Problem  : LCL541+1 : TPTP v8.1.0. Bugfixed v4.0.0.
% 0.11/0.12  % Command  : tptp2X_and_run_prover9 %d %s
% 0.11/0.33  % Computer : n027.cluster.edu
% 0.11/0.33  % Model    : x86_64 x86_64
% 0.11/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.11/0.33  % Memory   : 8042.1875MB
% 0.11/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.11/0.33  % CPULimit : 300
% 0.11/0.33  % WCLimit  : 600
% 0.11/0.33  % DateTime : Sat Jul  2 17:00:09 EDT 2022
% 0.11/0.33  % CPUTime  : 
% 0.65/0.92  ============================== Prover9 ===============================
% 0.65/0.92  Prover9 (32) version 2009-11A, November 2009.
% 0.65/0.92  Process 25249 was started by sandbox on n027.cluster.edu,
% 0.65/0.92  Sat Jul  2 17:00:09 2022
% 0.65/0.92  The command was "/export/starexec/sandbox/solver/bin/prover9 -t 300 -f /tmp/Prover9_25096_n027.cluster.edu".
% 0.65/0.92  ============================== end of head ===========================
% 0.65/0.92  
% 0.65/0.92  ============================== INPUT =================================
% 0.65/0.92  
% 0.65/0.92  % Reading from file /tmp/Prover9_25096_n027.cluster.edu
% 0.65/0.92  
% 0.65/0.92  set(prolog_style_variables).
% 0.65/0.92  set(auto2).
% 0.65/0.92      % set(auto2) -> set(auto).
% 0.65/0.92      % set(auto) -> set(auto_inference).
% 0.65/0.92      % set(auto) -> set(auto_setup).
% 0.65/0.92      % set(auto_setup) -> set(predicate_elim).
% 0.65/0.92      % set(auto_setup) -> assign(eq_defs, unfold).
% 0.65/0.92      % set(auto) -> set(auto_limits).
% 0.65/0.92      % set(auto_limits) -> assign(max_weight, "100.000").
% 0.65/0.92      % set(auto_limits) -> assign(sos_limit, 20000).
% 0.65/0.92      % set(auto) -> set(auto_denials).
% 0.65/0.92      % set(auto) -> set(auto_process).
% 0.65/0.92      % set(auto2) -> assign(new_constants, 1).
% 0.65/0.92      % set(auto2) -> assign(fold_denial_max, 3).
% 0.65/0.92      % set(auto2) -> assign(max_weight, "200.000").
% 0.65/0.92      % set(auto2) -> assign(max_hours, 1).
% 0.65/0.92      % assign(max_hours, 1) -> assign(max_seconds, 3600).
% 0.65/0.92      % set(auto2) -> assign(max_seconds, 0).
% 0.65/0.92      % set(auto2) -> assign(max_minutes, 5).
% 0.65/0.92      % assign(max_minutes, 5) -> assign(max_seconds, 300).
% 0.65/0.92      % set(auto2) -> set(sort_initial_sos).
% 0.65/0.92      % set(auto2) -> assign(sos_limit, -1).
% 0.65/0.92      % set(auto2) -> assign(lrs_ticks, 3000).
% 0.65/0.92      % set(auto2) -> assign(max_megs, 400).
% 0.65/0.92      % set(auto2) -> assign(stats, some).
% 0.65/0.92      % set(auto2) -> clear(echo_input).
% 0.65/0.92      % set(auto2) -> set(quiet).
% 0.65/0.92      % set(auto2) -> clear(print_initial_clauses).
% 0.65/0.92      % set(auto2) -> clear(print_given).
% 0.65/0.92  assign(lrs_ticks,-1).
% 0.65/0.92  assign(sos_limit,10000).
% 0.65/0.92  assign(order,kbo).
% 0.65/0.92  set(lex_order_vars).
% 0.65/0.92  clear(print_given).
% 0.65/0.92  
% 0.65/0.92  % formulas(sos).  % not echoed (89 formulas)
% 0.65/0.92  
% 0.65/0.92  ============================== end of input ==========================
% 0.65/0.92  
% 0.65/0.92  % From the command line: assign(max_seconds, 300).
% 0.65/0.92  
% 0.65/0.92  ============================== PROCESS NON-CLAUSAL FORMULAS ==========
% 0.65/0.92  
% 0.65/0.92  % Formulas that are not ordinary clauses:
% 0.65/0.92  1 modus_ponens <-> (all X all Y (is_a_theorem(X) & is_a_theorem(implies(X,Y)) -> is_a_theorem(Y))) # label(modus_ponens) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  2 substitution_of_equivalents <-> (all X all Y (is_a_theorem(equiv(X,Y)) -> X = Y)) # label(substitution_of_equivalents) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  3 modus_tollens <-> (all X all Y is_a_theorem(implies(implies(not(Y),not(X)),implies(X,Y)))) # label(modus_tollens) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  4 implies_1 <-> (all X all Y is_a_theorem(implies(X,implies(Y,X)))) # label(implies_1) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  5 implies_2 <-> (all X all Y is_a_theorem(implies(implies(X,implies(X,Y)),implies(X,Y)))) # label(implies_2) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  6 implies_3 <-> (all X all Y all Z is_a_theorem(implies(implies(X,Y),implies(implies(Y,Z),implies(X,Z))))) # label(implies_3) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  7 and_1 <-> (all X all Y is_a_theorem(implies(and(X,Y),X))) # label(and_1) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  8 and_2 <-> (all X all Y is_a_theorem(implies(and(X,Y),Y))) # label(and_2) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  9 and_3 <-> (all X all Y is_a_theorem(implies(X,implies(Y,and(X,Y))))) # label(and_3) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  10 or_1 <-> (all X all Y is_a_theorem(implies(X,or(X,Y)))) # label(or_1) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  11 or_2 <-> (all X all Y is_a_theorem(implies(Y,or(X,Y)))) # label(or_2) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  12 or_3 <-> (all X all Y all Z is_a_theorem(implies(implies(X,Z),implies(implies(Y,Z),implies(or(X,Y),Z))))) # label(or_3) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  13 equivalence_1 <-> (all X all Y is_a_theorem(implies(equiv(X,Y),implies(X,Y)))) # label(equivalence_1) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.92  14 equivalence_2 <-> (all X all Y is_a_theorem(implies(equiv(X,Y),implies(Y,X)))) # label(equivalence_2) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  15 equivalence_3 <-> (all X all Y is_a_theorem(implies(implies(X,Y),implies(implies(Y,X),equiv(X,Y))))) # label(equivalence_3) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  16 kn1 <-> (all P is_a_theorem(implies(P,and(P,P)))) # label(kn1) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  17 kn2 <-> (all P all Q is_a_theorem(implies(and(P,Q),P))) # label(kn2) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  18 kn3 <-> (all P all Q all R is_a_theorem(implies(implies(P,Q),implies(not(and(Q,R)),not(and(R,P)))))) # label(kn3) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  19 cn1 <-> (all P all Q all R is_a_theorem(implies(implies(P,Q),implies(implies(Q,R),implies(P,R))))) # label(cn1) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  20 cn2 <-> (all P all Q is_a_theorem(implies(P,implies(not(P),Q)))) # label(cn2) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  21 cn3 <-> (all P is_a_theorem(implies(implies(not(P),P),P))) # label(cn3) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  22 r1 <-> (all P is_a_theorem(implies(or(P,P),P))) # label(r1) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  23 r2 <-> (all P all Q is_a_theorem(implies(Q,or(P,Q)))) # label(r2) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  24 r3 <-> (all P all Q is_a_theorem(implies(or(P,Q),or(Q,P)))) # label(r3) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  25 r4 <-> (all P all Q all R is_a_theorem(implies(or(P,or(Q,R)),or(Q,or(P,R))))) # label(r4) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  26 r5 <-> (all P all Q all R is_a_theorem(implies(implies(Q,R),implies(or(P,Q),or(P,R))))) # label(r5) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  27 op_or -> (all X all Y or(X,Y) = not(and(not(X),not(Y)))) # label(op_or) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  28 op_and -> (all X all Y and(X,Y) = not(or(not(X),not(Y)))) # label(op_and) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  29 op_implies_and -> (all X all Y implies(X,Y) = not(and(X,not(Y)))) # label(op_implies_and) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  30 op_implies_or -> (all X all Y implies(X,Y) = or(not(X),Y)) # label(op_implies_or) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  31 op_equiv -> (all X all Y equiv(X,Y) = and(implies(X,Y),implies(Y,X))) # label(op_equiv) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  32 necessitation <-> (all X (is_a_theorem(X) -> is_a_theorem(necessarily(X)))) # label(necessitation) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  33 modus_ponens_strict_implies <-> (all X all Y (is_a_theorem(X) & is_a_theorem(strict_implies(X,Y)) -> is_a_theorem(Y))) # label(modus_ponens_strict_implies) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  34 adjunction <-> (all X all Y (is_a_theorem(X) & is_a_theorem(Y) -> is_a_theorem(and(X,Y)))) # label(adjunction) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  35 substitution_strict_equiv <-> (all X all Y (is_a_theorem(strict_equiv(X,Y)) -> X = Y)) # label(substitution_strict_equiv) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  36 axiom_K <-> (all X all Y is_a_theorem(implies(necessarily(implies(X,Y)),implies(necessarily(X),necessarily(Y))))) # label(axiom_K) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  37 axiom_M <-> (all X is_a_theorem(implies(necessarily(X),X))) # label(axiom_M) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  38 axiom_4 <-> (all X is_a_theorem(implies(necessarily(X),necessarily(necessarily(X))))) # label(axiom_4) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  39 axiom_B <-> (all X is_a_theorem(implies(X,necessarily(possibly(X))))) # label(axiom_B) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  40 axiom_5 <-> (all X is_a_theorem(implies(possibly(X),necessarily(possibly(X))))) # label(axiom_5) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.93  41 axiom_s1 <-> (all X all Y all Z is_a_theorem(implies(and(necessarily(implies(X,Y)),necessarily(implies(Y,Z))),necessarily(implies(X,Z))))) # label(axiom_s1) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  42 axiom_s2 <-> (all P all Q is_a_theorem(strict_implies(possibly(and(P,Q)),and(possibly(P),possibly(Q))))) # label(axiom_s2) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  43 axiom_s3 <-> (all X all Y is_a_theorem(strict_implies(strict_implies(X,Y),strict_implies(not(possibly(Y)),not(possibly(X)))))) # label(axiom_s3) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  44 axiom_s4 <-> (all X is_a_theorem(strict_implies(necessarily(X),necessarily(necessarily(X))))) # label(axiom_s4) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  45 axiom_m1 <-> (all X all Y is_a_theorem(strict_implies(and(X,Y),and(Y,X)))) # label(axiom_m1) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  46 axiom_m2 <-> (all X all Y is_a_theorem(strict_implies(and(X,Y),X))) # label(axiom_m2) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  47 axiom_m3 <-> (all X all Y all Z is_a_theorem(strict_implies(and(and(X,Y),Z),and(X,and(Y,Z))))) # label(axiom_m3) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  48 axiom_m4 <-> (all X is_a_theorem(strict_implies(X,and(X,X)))) # label(axiom_m4) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  49 axiom_m5 <-> (all X all Y all Z is_a_theorem(strict_implies(and(strict_implies(X,Y),strict_implies(Y,Z)),strict_implies(X,Z)))) # label(axiom_m5) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  50 axiom_m6 <-> (all X is_a_theorem(strict_implies(X,possibly(X)))) # label(axiom_m6) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  51 axiom_m7 <-> (all P all Q is_a_theorem(strict_implies(possibly(and(P,Q)),P))) # label(axiom_m7) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  52 axiom_m8 <-> (all P all Q is_a_theorem(strict_implies(strict_implies(P,Q),strict_implies(possibly(P),possibly(Q))))) # label(axiom_m8) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  53 axiom_m9 <-> (all X is_a_theorem(strict_implies(possibly(possibly(X)),possibly(X)))) # label(axiom_m9) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  54 axiom_m10 <-> (all X is_a_theorem(strict_implies(possibly(X),necessarily(possibly(X))))) # label(axiom_m10) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  55 op_possibly -> (all X possibly(X) = not(necessarily(not(X)))) # label(op_possibly) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  56 op_necessarily -> (all X necessarily(X) = not(possibly(not(X)))) # label(op_necessarily) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  57 op_strict_implies -> (all X all Y strict_implies(X,Y) = necessarily(implies(X,Y))) # label(op_strict_implies) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  58 op_strict_equiv -> (all X all Y strict_equiv(X,Y) = and(strict_implies(X,Y),strict_implies(Y,X))) # label(op_strict_equiv) # label(axiom) # label(non_clause).  [assumption].
% 0.65/0.96  
% 0.65/0.96  ============================== end of process non-clausal formulas ===
% 0.65/0.96  
% 0.65/0.96  ============================== PROCESS INITIAL CLAUSES ===============
% 0.65/0.96  
% 0.65/0.96  ============================== PREDICATE ELIMINATION =================
% 0.65/0.96  
% 0.65/0.96  ============================== end predicate elimination =============
% 0.65/0.96  
% 0.65/0.96  Auto_denials:  (non-Horn, no changes).
% 0.65/0.96  
% 0.65/0.96  Term ordering decisions:
% 0.65/0.96  Function symbol KB weights:  c1=1. c2=1. c3=1. c4=1. c5=1. c6=1. c7=1. c8=1. c9=1. c10=1. c11=1. c12=1. c13=1. c14=1. c15=1. c16=1. c17=1. c18=1. c19=1. c20=1. c21=1. c22=1. c23=1. c24=1. c25=1. c26=1. c27=1. c28=1. c29=1. c30=1. c31=1. c32=1. c33=1. c34=1. c35=1. c36=1. c37=1. c38=1. c39=1. c40=1. c41=1. c42=1. c43=1. c44=1. c45=1. c46=1. c47=1. c48=1. c49=1. c50=1. c51=1. c52=1. c53=1. c54=1. c55=1. c56=1. c57=1. c58=1. c59=1. c60=1. c61=1. c62=1. c63=1. c64=1. c65=1. c66=1. c67=1. c68=1. c69=1. c70=1. c71=1. c72=1. c73=1. c74=1. c75=1. c76=1. c77=1. c78=1. c79=1. c80=1. c81=1. c82=1. c83=1. c84=1. c85=1. c86=1. c87=1. c88=1. c89=1. c90=1. c91=1. c92=1. c93=1. c94=1. implies=1. and=1. strict_implies=1. or=1. equiv=1. strict_equiv=1. necessarily=1. possibly=1. not=1.
% 0.65/0.96  
% 0.65/0.96  ============================== end of process initial clauses ========
% 0.65/0.96  
% 0.65/0.96  ============================== CLAUSES FOR SEARCH ====================
% 73.61/73.91  
% 73.61/73.91  ============================== end of clauses for search =============
% 73.61/73.91  
% 73.61/73.91  ============================== SEARCH ================================
% 73.61/73.91  
% 73.61/73.91  % Starting search at 0.05 seconds.
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=22.000, iters=3405
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=20.000, iters=3364
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=19.000, iters=3480
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=18.000, iters=3375
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=17.000, iters=3345
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=16.000, iters=3343
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=15.000, iters=3346
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=14.000, iters=3333
% 73.61/73.91  
% 73.61/73.91  NOTE: Back_subsumption disabled, ratio of kept to back_subsumed is 68 (0.00 of 1.50 sec).
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=13.000, iters=3336
% 73.61/73.91  
% 73.61/73.91  Low Water (displace): id=5257, wt=29.000
% 73.61/73.91  
% 73.61/73.91  Low Water (displace): id=5248, wt=28.000
% 73.61/73.91  
% 73.61/73.91  Low Water (displace): id=5531, wt=27.000
% 73.61/73.91  
% 73.61/73.91  Low Water (displace): id=10931, wt=9.000
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=11.000, iters=3385
% 73.61/73.91  
% 73.61/73.91  Low Water (keep): wt=10.000, iters=3335
% 73.61/73.91  
% 73.61/73.91  ============================== PROOF =================================
% 73.61/73.91  % SZS status Theorem
% 73.61/73.91  % SZS output start Refutation
% 73.61/73.91  
% 73.61/73.91  % Proof 1 at 68.56 (+ 4.43) seconds.
% 73.61/73.91  % Length of proof is 156.
% 73.61/73.91  % Level of proof is 30.
% 73.61/73.91  % Maximum clause weight is 16.000.
% 73.61/73.91  % Given clauses 21724.
% 73.61/73.91  
% 73.61/73.91  1 modus_ponens <-> (all X all Y (is_a_theorem(X) & is_a_theorem(implies(X,Y)) -> is_a_theorem(Y))) # label(modus_ponens) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  2 substitution_of_equivalents <-> (all X all Y (is_a_theorem(equiv(X,Y)) -> X = Y)) # label(substitution_of_equivalents) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  3 modus_tollens <-> (all X all Y is_a_theorem(implies(implies(not(Y),not(X)),implies(X,Y)))) # label(modus_tollens) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  4 implies_1 <-> (all X all Y is_a_theorem(implies(X,implies(Y,X)))) # label(implies_1) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  5 implies_2 <-> (all X all Y is_a_theorem(implies(implies(X,implies(X,Y)),implies(X,Y)))) # label(implies_2) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  6 implies_3 <-> (all X all Y all Z is_a_theorem(implies(implies(X,Y),implies(implies(Y,Z),implies(X,Z))))) # label(implies_3) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  7 and_1 <-> (all X all Y is_a_theorem(implies(and(X,Y),X))) # label(and_1) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  9 and_3 <-> (all X all Y is_a_theorem(implies(X,implies(Y,and(X,Y))))) # label(and_3) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  12 or_3 <-> (all X all Y all Z is_a_theorem(implies(implies(X,Z),implies(implies(Y,Z),implies(or(X,Y),Z))))) # label(or_3) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  14 equivalence_2 <-> (all X all Y is_a_theorem(implies(equiv(X,Y),implies(Y,X)))) # label(equivalence_2) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  15 equivalence_3 <-> (all X all Y is_a_theorem(implies(implies(X,Y),implies(implies(Y,X),equiv(X,Y))))) # label(equivalence_3) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  27 op_or -> (all X all Y or(X,Y) = not(and(not(X),not(Y)))) # label(op_or) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  29 op_implies_and -> (all X all Y implies(X,Y) = not(and(X,not(Y)))) # label(op_implies_and) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  31 op_equiv -> (all X all Y equiv(X,Y) = and(implies(X,Y),implies(Y,X))) # label(op_equiv) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  32 necessitation <-> (all X (is_a_theorem(X) -> is_a_theorem(necessarily(X)))) # label(necessitation) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  45 axiom_m1 <-> (all X all Y is_a_theorem(strict_implies(and(X,Y),and(Y,X)))) # label(axiom_m1) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  57 op_strict_implies -> (all X all Y strict_implies(X,Y) = necessarily(implies(X,Y))) # label(op_strict_implies) # label(axiom) # label(non_clause).  [assumption].
% 73.61/73.91  59 -modus_ponens | -is_a_theorem(A) | -is_a_theorem(implies(A,B)) | is_a_theorem(B) # label(modus_ponens) # label(axiom).  [clausify(1)].
% 73.61/73.91  63 -substitution_of_equivalents | -is_a_theorem(equiv(A,B)) | B = A # label(substitution_of_equivalents) # label(axiom).  [clausify(2)].
% 73.61/73.91  66 -modus_tollens | is_a_theorem(implies(implies(not(A),not(B)),implies(B,A))) # label(modus_tollens) # label(axiom).  [clausify(3)].
% 73.61/73.91  68 -implies_1 | is_a_theorem(implies(A,implies(B,A))) # label(implies_1) # label(axiom).  [clausify(4)].
% 73.61/73.91  70 -implies_2 | is_a_theorem(implies(implies(A,implies(A,B)),implies(A,B))) # label(implies_2) # label(axiom).  [clausify(5)].
% 73.61/73.91  72 -implies_3 | is_a_theorem(implies(implies(A,B),implies(implies(B,C),implies(A,C)))) # label(implies_3) # label(axiom).  [clausify(6)].
% 73.61/73.91  74 -and_1 | is_a_theorem(implies(and(A,B),A)) # label(and_1) # label(axiom).  [clausify(7)].
% 73.61/73.91  78 -and_3 | is_a_theorem(implies(A,implies(B,and(A,B)))) # label(and_3) # label(axiom).  [clausify(9)].
% 73.61/73.91  84 -or_3 | is_a_theorem(implies(implies(A,B),implies(implies(C,B),implies(or(A,C),B)))) # label(or_3) # label(axiom).  [clausify(12)].
% 73.61/73.91  88 -equivalence_2 | is_a_theorem(implies(equiv(A,B),implies(B,A))) # label(equivalence_2) # label(axiom).  [clausify(14)].
% 73.61/73.91  90 -equivalence_3 | is_a_theorem(implies(implies(A,B),implies(implies(B,A),equiv(A,B)))) # label(equivalence_3) # label(axiom).  [clausify(15)].
% 73.61/73.91  114 -op_or | or(A,B) = not(and(not(A),not(B))) # label(op_or) # label(axiom).  [clausify(27)].
% 73.61/73.91  115 -op_or | not(and(not(A),not(B))) = or(A,B).  [copy(114),flip(b)].
% 73.61/73.91  118 -op_implies_and | not(and(A,not(B))) = implies(A,B) # label(op_implies_and) # label(axiom).  [clausify(29)].
% 73.61/73.91  120 -op_equiv | and(implies(A,B),implies(B,A)) = equiv(A,B) # label(op_equiv) # label(axiom).  [clausify(31)].
% 73.61/73.91  121 op_or # label(hilbert_op_or) # label(axiom).  [assumption].
% 73.61/73.91  122 op_implies_and # label(hilbert_op_implies_and) # label(axiom).  [assumption].
% 73.61/73.91  123 op_equiv # label(hilbert_op_equiv) # label(axiom).  [assumption].
% 73.61/73.91  124 modus_ponens # label(hilbert_modus_ponens) # label(axiom).  [assumption].
% 73.61/73.91  125 modus_tollens # label(hilbert_modus_tollens) # label(axiom).  [assumption].
% 73.61/73.91  126 implies_1 # label(hilbert_implies_1) # label(axiom).  [assumption].
% 73.61/73.91  127 implies_2 # label(hilbert_implies_2) # label(axiom).  [assumption].
% 73.61/73.91  128 implies_3 # label(hilbert_implies_3) # label(axiom).  [assumption].
% 73.61/73.91  129 and_1 # label(hilbert_and_1) # label(axiom).  [assumption].
% 73.61/73.91  131 and_3 # label(hilbert_and_3) # label(axiom).  [assumption].
% 73.61/73.91  134 or_3 # label(hilbert_or_3) # label(axiom).  [assumption].
% 73.61/73.91  136 equivalence_2 # label(hilbert_equivalence_2) # label(axiom).  [assumption].
% 73.61/73.91  137 equivalence_3 # label(hilbert_equivalence_3) # label(axiom).  [assumption].
% 73.61/73.91  138 substitution_of_equivalents # label(substitution_of_equivalents) # label(axiom).  [assumption].
% 73.61/73.91  139 -necessitation | -is_a_theorem(A) | is_a_theorem(necessarily(A)) # label(necessitation) # label(axiom).  [clausify(32)].
% 73.61/73.91  172 axiom_m1 | -is_a_theorem(strict_implies(and(c77,c78),and(c78,c77))) # label(axiom_m1) # label(axiom).  [clausify(45)].
% 73.61/73.91  195 -op_strict_implies | strict_implies(A,B) = necessarily(implies(A,B)) # label(op_strict_implies) # label(axiom).  [clausify(57)].
% 73.61/73.91  196 -op_strict_implies | necessarily(implies(A,B)) = strict_implies(A,B).  [copy(195),flip(b)].
% 73.61/73.91  200 necessitation # label(km4b_necessitation) # label(axiom).  [assumption].
% 73.61/73.91  206 op_strict_implies # label(s1_0_op_strict_implies) # label(axiom).  [assumption].
% 73.61/73.91  208 -axiom_m1 # label(s1_0_axiom_m1) # label(negated_conjecture).  [assumption].
% 73.61/73.91  209 not(and(not(A),not(B))) = or(A,B).  [back_unit_del(115),unit_del(a,121)].
% 73.61/73.91  210 not(and(A,not(B))) = implies(A,B).  [back_unit_del(118),unit_del(a,122)].
% 73.61/73.91  211 and(implies(A,B),implies(B,A)) = equiv(A,B).  [back_unit_del(120),unit_del(a,123)].
% 73.61/73.91  212 -is_a_theorem(A) | -is_a_theorem(implies(A,B)) | is_a_theorem(B).  [back_unit_del(59),unit_del(a,124)].
% 73.61/73.91  213 is_a_theorem(implies(implies(not(A),not(B)),implies(B,A))).  [back_unit_del(66),unit_del(a,125)].
% 73.61/73.91  214 is_a_theorem(implies(A,implies(B,A))).  [back_unit_del(68),unit_del(a,126)].
% 73.61/73.91  215 is_a_theorem(implies(implies(A,implies(A,B)),implies(A,B))).  [back_unit_del(70),unit_del(a,127)].
% 73.61/73.91  216 is_a_theorem(implies(implies(A,B),implies(implies(B,C),implies(A,C)))).  [back_unit_del(72),unit_del(a,128)].
% 73.61/73.91  217 is_a_theorem(implies(and(A,B),A)).  [back_unit_del(74),unit_del(a,129)].
% 73.61/73.91  219 is_a_theorem(implies(A,implies(B,and(A,B)))).  [back_unit_del(78),unit_del(a,131)].
% 73.61/73.91  222 is_a_theorem(implies(implies(A,B),implies(implies(C,B),implies(or(A,C),B)))).  [back_unit_del(84),unit_del(a,134)].
% 73.61/73.91  224 is_a_theorem(implies(equiv(A,B),implies(B,A))).  [back_unit_del(88),unit_del(a,136)].
% 73.61/73.91  225 is_a_theorem(implies(implies(A,B),implies(implies(B,A),equiv(A,B)))).  [back_unit_del(90),unit_del(a,137)].
% 73.61/73.91  226 -is_a_theorem(equiv(A,B)) | B = A.  [back_unit_del(63),unit_del(a,138)].
% 73.61/73.91  229 -is_a_theorem(A) | is_a_theorem(necessarily(A)).  [back_unit_del(139),unit_del(a,200)].
% 73.61/73.91  234 necessarily(implies(A,B)) = strict_implies(A,B).  [back_unit_del(196),unit_del(a,206)].
% 73.61/73.91  236 -is_a_theorem(strict_implies(and(c77,c78),and(c78,c77))).  [back_unit_del(172),unit_del(a,208)].
% 73.61/73.91  237 implies(not(A),B) = or(A,B).  [back_rewrite(209),rewrite([210(4)])].
% 73.61/73.91  244 is_a_theorem(implies(or(A,not(B)),implies(B,A))).  [back_rewrite(213),rewrite([237(3)])].
% 73.61/73.91  257 -is_a_theorem(A) | is_a_theorem(implies(B,A)).  [resolve(214,a,212,b)].
% 73.61/73.91  260 -is_a_theorem(implies(A,implies(A,B))) | is_a_theorem(implies(A,B)).  [resolve(215,a,212,b)].
% 73.61/73.91  263 -is_a_theorem(implies(A,B)) | is_a_theorem(implies(implies(B,C),implies(A,C))).  [resolve(216,a,212,b)].
% 73.61/73.91  281 -is_a_theorem(implies(A,B)) | is_a_theorem(implies(implies(C,B),implies(or(A,C),B))).  [resolve(222,a,212,b)].
% 73.61/73.91  290 -is_a_theorem(implies(A,B)) | is_a_theorem(implies(implies(B,A),equiv(A,B))).  [resolve(225,a,212,b)].
% 73.61/73.91  349 or(and(A,not(B)),C) = implies(implies(A,B),C).  [para(210(a,1),237(a,1,1)),flip(a)].
% 73.61/73.91  379 -is_a_theorem(or(A,not(B))) | is_a_theorem(implies(B,A)).  [resolve(244,a,212,b)].
% 73.61/73.91  384 is_a_theorem(implies(or(A,not(not(B))),or(B,A))).  [para(237(a,1),244(a,1,2))].
% 73.61/73.91  875 is_a_theorem(implies(A,and(A,A))).  [resolve(260,a,219,a)].
% 73.61/73.91  877 is_a_theorem(implies(A,A)).  [resolve(260,a,214,a)].
% 73.61/73.91  884 is_a_theorem(implies(A,implies(B,B))).  [resolve(877,a,257,a)].
% 73.61/73.91  891 is_a_theorem(strict_implies(A,A)).  [resolve(877,a,229,a),rewrite([234(2)])].
% 73.61/73.91  900 is_a_theorem(implies(A,strict_implies(B,B))).  [resolve(891,a,257,a)].
% 73.61/73.91  1102 is_a_theorem(implies(implies(implies(A,B),C),implies(B,C))).  [resolve(263,a,214,a)].
% 73.61/73.91  1662 is_a_theorem(implies(implies(implies(A,A),B),implies(C,B))).  [resolve(884,a,263,a)].
% 73.61/73.91  1817 is_a_theorem(implies(implies(strict_implies(A,A),B),implies(C,B))).  [resolve(900,a,263,a)].
% 73.61/73.91  2549 is_a_theorem(implies(implies(A,B),implies(or(and(B,C),A),B))).  [resolve(281,a,217,a)].
% 73.61/73.91  4056 is_a_theorem(implies(implies(strict_implies(A,A),B),equiv(B,strict_implies(A,A)))).  [resolve(290,a,900,a)].
% 73.61/73.91  4057 is_a_theorem(implies(implies(implies(A,A),B),equiv(B,implies(A,A)))).  [resolve(290,a,884,a)].
% 73.61/73.91  4058 is_a_theorem(implies(implies(and(A,A),A),equiv(A,and(A,A)))).  [resolve(290,a,875,a)].
% 73.61/73.91  4071 is_a_theorem(implies(implies(implies(A,B),equiv(B,A)),equiv(equiv(B,A),implies(A,B)))).  [resolve(290,a,224,a)].
% 73.61/73.91  4081 is_a_theorem(implies(implies(implies(A,B),B),equiv(B,implies(A,B)))).  [resolve(290,a,214,a)].
% 73.61/73.91  16163 -is_a_theorem(implies(implies(A,B),C)) | is_a_theorem(implies(B,C)).  [resolve(1102,a,212,b)].
% 73.61/73.91  16287 is_a_theorem(implies(implies(implies(A,A),B),B)).  [resolve(1662,a,260,a)].
% 73.61/73.91  16892 is_a_theorem(implies(implies(strict_implies(A,A),B),B)).  [resolve(1817,a,260,a)].
% 73.61/73.91  18255 -is_a_theorem(implies(implies(A,A),B)) | is_a_theorem(B).  [resolve(16287,a,212,b)].
% 73.61/73.91  18266 -is_a_theorem(implies(strict_implies(A,A),B)) | is_a_theorem(B).  [resolve(16892,a,212,b)].
% 73.61/73.91  18299 is_a_theorem(implies(or(and(A,B),A),A)).  [resolve(18255,a,2549,a)].
% 73.61/73.91  18413 is_a_theorem(equiv(A,and(A,A))).  [resolve(4058,a,212,b),unit_del(a,217)].
% 73.61/73.91  18430 and(A,A) = A.  [resolve(18413,a,226,a)].
% 73.61/73.91  18433 or(A,A) = not(not(A)).  [para(18430(a,1),210(a,1,1)),rewrite([237(4)]),flip(a)].
% 73.61/73.91  18434 equiv(A,A) = implies(A,A).  [para(18430(a,1),211(a,1)),flip(a)].
% 73.61/73.91  18438 implies(or(A,A),B) = or(not(A),B).  [para(18430(a,1),349(a,1,1)),rewrite([237(4)]),flip(a)].
% 73.61/73.91  18440 is_a_theorem(or(not(A),A)).  [para(18430(a,1),18299(a,1,1,1)),rewrite([18438(2)])].
% 73.61/73.91  18474 is_a_theorem(implies(A,not(not(A)))).  [resolve(18440,a,379,a)].
% 73.61/73.91  33607 is_a_theorem(implies(A,equiv(A,implies(B,A)))).  [resolve(16163,a,4081,a)].
% 73.61/73.91  33612 is_a_theorem(implies(A,equiv(A,implies(B,B)))).  [resolve(16163,a,4057,a)].
% 73.63/73.91  33613 is_a_theorem(implies(A,equiv(A,strict_implies(B,B)))).  [resolve(16163,a,4056,a)].
% 73.63/73.91  33624 -is_a_theorem(A) | is_a_theorem(equiv(A,implies(B,A))).  [resolve(33607,a,212,b)].
% 73.63/73.91  33663 is_a_theorem(equiv(strict_implies(A,A),implies(B,B))).  [resolve(33612,a,18266,a)].
% 73.63/73.91  33681 is_a_theorem(equiv(implies(A,A),strict_implies(B,B))).  [resolve(33613,a,18255,a)].
% 73.63/73.91  33684 -is_a_theorem(A) | is_a_theorem(equiv(A,strict_implies(B,B))).  [resolve(33613,a,212,b)].
% 73.63/73.91  33745 strict_implies(A,A) = implies(B,B).  [resolve(33663,a,226,a),flip(a)].
% 73.63/73.91  33747 strict_implies(A,A) = c_0.  [new_symbol(33745)].
% 73.63/73.91  33749 implies(A,A) = c_0.  [back_rewrite(33745),rewrite([33747(1)]),flip(a)].
% 73.63/73.91  33753 -is_a_theorem(A) | is_a_theorem(equiv(A,c_0)).  [back_rewrite(33684),rewrite([33747(2)])].
% 73.63/73.91  33756 is_a_theorem(c_0).  [back_rewrite(33681),rewrite([33749(1),33747(2),18434(3),33749(3)])].
% 73.63/73.91  33767 is_a_theorem(implies(A,equiv(A,c_0))).  [back_rewrite(33613),rewrite([33747(1)])].
% 73.63/73.91  34653 is_a_theorem(implies(implies(c_0,A),A)).  [back_rewrite(16892),rewrite([33747(1)])].
% 73.63/73.91  35160 is_a_theorem(equiv(c_0,implies(A,c_0))).  [resolve(33756,a,33624,a)].
% 73.63/73.91  36988 is_a_theorem(equiv(implies(A,not(not(A))),c_0)).  [resolve(33753,a,18474,a)].
% 73.63/73.91  36995 is_a_theorem(equiv(or(not(A),A),c_0)).  [resolve(33753,a,18440,a)].
% 73.63/73.91  37088 is_a_theorem(equiv(implies(A,implies(B,A)),c_0)).  [resolve(33753,a,214,a)].
% 73.63/73.91  37115 is_a_theorem(equiv(implies(A,equiv(A,c_0)),c_0)).  [resolve(33767,a,33753,a)].
% 73.63/73.91  37584 is_a_theorem(equiv(implies(implies(c_0,A),A),c_0)).  [resolve(34653,a,33753,a)].
% 73.63/73.91  38608 implies(A,c_0) = c_0.  [resolve(35160,a,226,a)].
% 73.63/73.91  38609 and(c_0,implies(c_0,A)) = equiv(A,c_0).  [para(38608(a,1),211(a,1,1))].
% 73.63/73.91  39610 or(not(A),A) = c_0.  [resolve(36995,a,226,a),flip(a)].
% 73.63/73.91  40357 implies(A,not(not(A))) = c_0.  [resolve(36988,a,226,a),flip(a)].
% 73.63/73.91  40358 equiv(A,not(not(A))) = c_0.  [para(40357(a,1),211(a,1,1)),rewrite([237(4),39610(3),18430(3)]),flip(a)].
% 73.63/73.91  40364 not(not(A)) = A.  [para(40358(a,1),226(a,1)),unit_del(a,33756)].
% 73.63/73.91  40386 or(A,A) = A.  [back_rewrite(18433),rewrite([40364(3)])].
% 73.63/73.91  40393 is_a_theorem(implies(or(A,B),or(B,A))).  [back_rewrite(384),rewrite([40364(2)])].
% 73.63/73.91  40422 or(not(A),B) = implies(A,B).  [back_rewrite(18438),rewrite([40386(1)]),flip(a)].
% 73.63/73.91  40552 not(implies(A,B)) = and(A,not(B)).  [para(210(a,1),40364(a,1,1))].
% 73.63/73.91  45060 implies(A,implies(B,A)) = c_0.  [resolve(37088,a,226,a),flip(a)].
% 73.63/73.91  45141 implies(A,equiv(A,c_0)) = c_0.  [resolve(37115,a,226,a),flip(a)].
% 73.63/73.91  45660 implies(implies(c_0,A),A) = c_0.  [resolve(37584,a,226,a),flip(a)].
% 73.63/73.91  45661 equiv(implies(c_0,A),A) = c_0.  [para(45660(a,1),211(a,1,1)),rewrite([45060(4),18430(3)]),flip(a)].
% 73.63/73.91  45682 implies(c_0,A) = A.  [para(45661(a,1),226(a,1)),flip(b),unit_del(a,33756)].
% 73.63/73.91  45700 equiv(A,c_0) = and(c_0,A).  [back_rewrite(38609),rewrite([45682(3)]),flip(a)].
% 73.63/73.91  45820 implies(A,and(c_0,A)) = c_0.  [back_rewrite(45141),rewrite([45700(2)])].
% 73.63/73.91  45911 is_a_theorem(equiv(and(c_0,A),A)).  [para(45682(a,1),4071(a,1,1,1)),rewrite([45700(2),45820(3),45700(3),45682(5),45682(5)])].
% 73.63/73.91  46359 and(c_0,A) = A.  [resolve(45911,a,226,a),flip(a)].
% 73.63/73.91  46362 equiv(A,c_0) = A.  [back_rewrite(45700),rewrite([46359(4)])].
% 73.63/73.91  46384 -is_a_theorem(A) | c_0 = A.  [para(46362(a,1),226(a,1))].
% 73.63/73.91  52626 implies(or(A,B),or(B,A)) = c_0.  [resolve(40393,a,46384,a),flip(a)].
% 73.63/73.91  52629 is_a_theorem(equiv(or(A,B),or(B,A))).  [resolve(40393,a,290,a),rewrite([52626(3),45682(5)])].
% 73.63/73.91  54899 or(A,B) = or(B,A).  [resolve(52629,a,226,a)].
% 73.63/73.91  55148 or(A,not(B)) = implies(B,A).  [back_rewrite(40422),rewrite([54899(2)])].
% 73.63/73.91  57381 and(not(A),not(B)) = not(or(A,B)).  [para(237(a,1),40552(a,1,1)),flip(a)].
% 73.63/73.91  64759 and(not(A),B) = and(B,not(A)).  [para(40364(a,1),57381(a,1,2)),rewrite([55148(4),40552(4)])].
% 73.63/73.91  64805 and(A,B) = and(B,A).  [para(40364(a,1),64759(a,1,1)),rewrite([40364(3)])].
% 73.63/73.91  65102 $F.  [back_rewrite(236),rewrite([64805(6),33747(7)]),unit_del(a,33756)].
% 73.63/73.91  
% 73.63/73.91  % SZS output end Refutation
% 73.63/73.91  ============================== end of proof ==========================
% 73.63/73.91  
% 73.63/73.91  ============================== STATISTICS ============================
% 73.63/73.91  
% 73.63/73.91  Given=21724. Generated=9185267. Kept=65037. proofs=1.
% 73.63/73.91  Usable=4706. Sos=6315. Demods=1019. Limbo=297, Disabled=53866. Hints=0.
% 73.63/73.91  Megabytes=48.59.
% 73.63/73.91  User_CPU=68.56, System_CPU=4.43, Wall_clock=73.
% 73.63/73.91  
% 73.63/73.91  ============================== end of statistics =====================
% 73.63/73.91  
% 73.63/73.91  ============================== end of search =========================
% 73.63/73.91  
% 73.63/73.91  THEOREM PROVED
% 73.63/73.91  % SZS status Theorem
% 73.63/73.91  
% 73.63/73.91  Exiting with 1 proof.
% 73.63/73.91  
% 73.63/73.91  Process 25249 exit (max_proofs) Sat Jul  2 17:01:22 2022
% 73.63/73.91  Prover9 interrupted
%------------------------------------------------------------------------------