TSTP Solution File: GRP002-2 by E-SAT---3.1.00
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : E-SAT---3.1.00
% Problem : GRP002-2 : TPTP v8.1.2. Bugfixed v1.2.1.
% Transfm : none
% Format : tptp:raw
% Command : run_E %s %d THM
% Computer : n005.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 : Sat May 4 07:54:33 EDT 2024
% Result : Unsatisfiable 0.17s 0.45s
% Output : CNFRefutation 0.17s
% Verified :
% SZS Type : Refutation
% Derivation depth : 19
% Number of leaves : 12
% Syntax : Number of clauses : 70 ( 70 unt; 0 nHn; 45 RR)
% Number of literals : 70 ( 69 equ; 4 neg)
% Maximal clause size : 1 ( 1 avg)
% Maximal term depth : 6 ( 2 avg)
% Number of predicates : 2 ( 0 usr; 1 prp; 0-2 aty)
% Number of functors : 10 ( 10 usr; 8 con; 0-2 aty)
% Number of variables : 38 ( 0 sgn)
% Comments :
%------------------------------------------------------------------------------
cnf(associativity,axiom,
multiply(multiply(X1,X2),X3) = multiply(X1,multiply(X2,X3)),
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',associativity) ).
cnf(left_inverse,axiom,
multiply(inverse(X1),X1) = identity,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',left_inverse) ).
cnf(left_identity,axiom,
multiply(identity,X1) = X1,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',left_identity) ).
cnf(x_cubed_is_identity,hypothesis,
multiply(X1,multiply(X1,X1)) = identity,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',x_cubed_is_identity) ).
cnf(right_identity,axiom,
multiply(X1,identity) = X1,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',right_identity) ).
cnf(d_times_inverse_b_is_h,negated_conjecture,
multiply(d,inverse(b)) = h,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',d_times_inverse_b_is_h) ).
cnf(right_inverse,axiom,
multiply(X1,inverse(X1)) = identity,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',right_inverse) ).
cnf(h_times_b_is_j,negated_conjecture,
multiply(h,b) = j,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',h_times_b_is_j) ).
cnf(a_times_b_is_c,negated_conjecture,
multiply(a,b) = c,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',a_times_b_is_c) ).
cnf(c_times_inverse_a_is_d,negated_conjecture,
multiply(c,inverse(a)) = d,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',c_times_inverse_a_is_d) ).
cnf(j_times_inverse_h_is_k,negated_conjecture,
multiply(j,inverse(h)) = k,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',j_times_inverse_h_is_k) ).
cnf(prove_k_times_inverse_b_is_e,negated_conjecture,
multiply(k,inverse(b)) != identity,
file('/export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p',prove_k_times_inverse_b_is_e) ).
cnf(c_0_12,axiom,
multiply(multiply(X1,X2),X3) = multiply(X1,multiply(X2,X3)),
associativity ).
cnf(c_0_13,axiom,
multiply(inverse(X1),X1) = identity,
left_inverse ).
cnf(c_0_14,axiom,
multiply(identity,X1) = X1,
left_identity ).
cnf(c_0_15,plain,
multiply(inverse(X1),multiply(X1,X2)) = X2,
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_12,c_0_13]),c_0_14]) ).
cnf(c_0_16,hypothesis,
multiply(X1,multiply(X1,X1)) = identity,
x_cubed_is_identity ).
cnf(c_0_17,axiom,
multiply(X1,identity) = X1,
right_identity ).
cnf(c_0_18,negated_conjecture,
multiply(d,inverse(b)) = h,
d_times_inverse_b_is_h ).
cnf(c_0_19,hypothesis,
inverse(X1) = multiply(X1,X1),
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_16]),c_0_17]) ).
cnf(c_0_20,axiom,
multiply(X1,inverse(X1)) = identity,
right_inverse ).
cnf(c_0_21,negated_conjecture,
multiply(d,multiply(b,b)) = h,
inference(rw,[status(thm)],[c_0_18,c_0_19]) ).
cnf(c_0_22,plain,
inverse(inverse(X1)) = X1,
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_13]),c_0_17]) ).
cnf(c_0_23,plain,
multiply(X1,multiply(X2,inverse(multiply(X1,X2)))) = identity,
inference(spm,[status(thm)],[c_0_20,c_0_12]) ).
cnf(c_0_24,negated_conjecture,
multiply(d,multiply(d,h)) = multiply(b,b),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_21]),c_0_19]),c_0_12]) ).
cnf(c_0_25,hypothesis,
inverse(multiply(X1,X1)) = X1,
inference(spm,[status(thm)],[c_0_22,c_0_19]) ).
cnf(c_0_26,negated_conjecture,
multiply(h,b) = j,
h_times_b_is_j ).
cnf(c_0_27,negated_conjecture,
multiply(d,multiply(d,j)) = identity,
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_23,c_0_24]),c_0_25]),c_0_12]),c_0_26]) ).
cnf(c_0_28,negated_conjecture,
multiply(d,d) = multiply(d,j),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_27]),c_0_19]),c_0_17]) ).
cnf(c_0_29,hypothesis,
inverse(multiply(d,j)) = d,
inference(spm,[status(thm)],[c_0_25,c_0_28]) ).
cnf(c_0_30,hypothesis,
multiply(d,multiply(j,d)) = identity,
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_20,c_0_29]),c_0_12]) ).
cnf(c_0_31,negated_conjecture,
multiply(a,b) = c,
a_times_b_is_c ).
cnf(c_0_32,hypothesis,
multiply(d,j) = multiply(j,d),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_30]),c_0_19]),c_0_28]),c_0_17]) ).
cnf(c_0_33,negated_conjecture,
multiply(a,multiply(b,multiply(c,c))) = identity,
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_23,c_0_31]),c_0_19]) ).
cnf(c_0_34,negated_conjecture,
multiply(c,inverse(a)) = d,
c_times_inverse_a_is_d ).
cnf(c_0_35,negated_conjecture,
multiply(d,d) = multiply(j,d),
inference(rw,[status(thm)],[c_0_28,c_0_32]) ).
cnf(c_0_36,plain,
multiply(X1,inverse(multiply(X2,X1))) = inverse(X2),
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_23]),c_0_17]) ).
cnf(c_0_37,negated_conjecture,
multiply(b,multiply(c,c)) = multiply(a,a),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_33]),c_0_19]),c_0_17]) ).
cnf(c_0_38,negated_conjecture,
multiply(c,multiply(a,a)) = d,
inference(rw,[status(thm)],[c_0_34,c_0_19]) ).
cnf(c_0_39,negated_conjecture,
d = j,
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_35]),c_0_19]),c_0_28]),c_0_32]),c_0_12]),c_0_30]),c_0_17]) ).
cnf(c_0_40,plain,
multiply(inverse(multiply(X1,X2)),X1) = inverse(X2),
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_36,c_0_36]),c_0_22]) ).
cnf(c_0_41,negated_conjecture,
multiply(c,multiply(c,a)) = multiply(b,b),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_36,c_0_37]),c_0_25]),c_0_12]),c_0_19]) ).
cnf(c_0_42,negated_conjecture,
multiply(j,inverse(h)) = k,
j_times_inverse_h_is_k ).
cnf(c_0_43,plain,
multiply(inverse(multiply(X1,X2)),multiply(X1,multiply(X2,X3))) = X3,
inference(spm,[status(thm)],[c_0_15,c_0_12]) ).
cnf(c_0_44,negated_conjecture,
multiply(c,multiply(a,a)) = j,
inference(rw,[status(thm)],[c_0_38,c_0_39]) ).
cnf(c_0_45,negated_conjecture,
inverse(multiply(c,a)) = multiply(b,c),
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_40,c_0_41]),c_0_25]) ).
cnf(c_0_46,negated_conjecture,
multiply(c,multiply(c,d)) = multiply(a,a),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_38]),c_0_19]),c_0_12]) ).
cnf(c_0_47,negated_conjecture,
multiply(j,multiply(h,h)) = k,
inference(rw,[status(thm)],[c_0_42,c_0_19]) ).
cnf(c_0_48,negated_conjecture,
multiply(h,multiply(b,X1)) = multiply(j,X1),
inference(spm,[status(thm)],[c_0_12,c_0_26]) ).
cnf(c_0_49,negated_conjecture,
multiply(b,multiply(c,j)) = a,
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_43,c_0_44]),c_0_45]),c_0_12]) ).
cnf(c_0_50,negated_conjecture,
multiply(c,multiply(c,j)) = multiply(a,a),
inference(spm,[status(thm)],[c_0_46,c_0_39]) ).
cnf(c_0_51,negated_conjecture,
multiply(j,multiply(j,k)) = multiply(h,h),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_47]),c_0_19]),c_0_12]) ).
cnf(c_0_52,negated_conjecture,
multiply(a,multiply(a,c)) = b,
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_31]),c_0_19]),c_0_12]) ).
cnf(c_0_53,hypothesis,
multiply(X1,multiply(X2,multiply(X1,X2))) = inverse(multiply(X1,X2)),
inference(spm,[status(thm)],[c_0_12,c_0_19]) ).
cnf(c_0_54,negated_conjecture,
multiply(j,multiply(c,j)) = multiply(h,a),
inference(spm,[status(thm)],[c_0_48,c_0_49]) ).
cnf(c_0_55,negated_conjecture,
inverse(multiply(c,j)) = multiply(a,c),
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_40,c_0_50]),c_0_25]) ).
cnf(c_0_56,negated_conjecture,
multiply(j,multiply(k,h)) = multiply(j,j),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_36,c_0_51]),c_0_25]),c_0_12]),c_0_19]) ).
cnf(c_0_57,negated_conjecture,
multiply(a,multiply(a,multiply(c,X1))) = multiply(b,X1),
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_12,c_0_52]),c_0_12]) ).
cnf(c_0_58,hypothesis,
multiply(c,multiply(h,a)) = multiply(a,c),
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_53,c_0_54]),c_0_55]) ).
cnf(c_0_59,negated_conjecture,
multiply(k,h) = j,
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_15,c_0_56]),c_0_19]),c_0_12]),c_0_16]),c_0_17]) ).
cnf(c_0_60,negated_conjecture,
multiply(k,inverse(b)) != identity,
inference(fof_simplification,[status(thm)],[prove_k_times_inverse_b_is_e]) ).
cnf(c_0_61,negated_conjecture,
multiply(b,multiply(h,a)) = c,
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_57,c_0_58]),c_0_52]),c_0_31]) ).
cnf(c_0_62,negated_conjecture,
multiply(a,multiply(c,c)) = multiply(j,j),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_40,c_0_55]),c_0_12]),c_0_19]) ).
cnf(c_0_63,negated_conjecture,
multiply(h,multiply(j,j)) = multiply(k,k),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_36,c_0_59]),c_0_19]),c_0_19]) ).
cnf(c_0_64,negated_conjecture,
multiply(k,inverse(b)) != identity,
c_0_60 ).
cnf(c_0_65,hypothesis,
multiply(X1,multiply(X2,multiply(X1,multiply(X2,multiply(X1,X2))))) = identity,
inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_16,c_0_12]),c_0_12]) ).
cnf(c_0_66,negated_conjecture,
multiply(k,k) = multiply(b,b),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_36,c_0_61]),c_0_19]),c_0_12]),c_0_62]),c_0_63]),c_0_19]) ).
cnf(c_0_67,hypothesis,
multiply(X1,multiply(X1,multiply(X1,X2))) = X2,
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_12,c_0_16]),c_0_14]),c_0_12]) ).
cnf(c_0_68,negated_conjecture,
multiply(k,multiply(b,b)) != identity,
inference(rw,[status(thm)],[c_0_64,c_0_19]) ).
cnf(c_0_69,hypothesis,
$false,
inference(sr,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_65,c_0_66]),c_0_67]),c_0_68]),
[proof] ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.09/0.10 % Problem : GRP002-2 : TPTP v8.1.2. Bugfixed v1.2.1.
% 0.09/0.11 % Command : run_E %s %d THM
% 0.11/0.31 % Computer : n005.cluster.edu
% 0.11/0.31 % Model : x86_64 x86_64
% 0.11/0.31 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.11/0.31 % Memory : 8042.1875MB
% 0.11/0.31 % OS : Linux 3.10.0-693.el7.x86_64
% 0.11/0.31 % CPULimit : 300
% 0.11/0.31 % WCLimit : 300
% 0.11/0.31 % DateTime : Fri May 3 15:52:53 EDT 2024
% 0.17/0.32 % CPUTime :
% 0.17/0.43 Running first-order model finding
% 0.17/0.43 Running: /export/starexec/sandbox/solver/bin/eprover --delete-bad-limit=2000000000 --definitional-cnf=24 -s --print-statistics -R --print-version --proof-object --satauto-schedule=8 --cpu-limit=300 /export/starexec/sandbox/tmp/tmp.Ad4Y2HRbBu/E---3.1_7236.p
% 0.17/0.45 # Version: 3.1.0
% 0.17/0.45 # Preprocessing class: FSSSSMSMSSSNFFN.
% 0.17/0.45 # Scheduled 4 strats onto 8 cores with 300 seconds (2400 total)
% 0.17/0.45 # Starting G----_0031_C18_F1_SE_CS_SP_S0Y with 1500s (5) cores
% 0.17/0.45 # Starting new_bool_3 with 300s (1) cores
% 0.17/0.45 # Starting new_bool_1 with 300s (1) cores
% 0.17/0.45 # Starting sh5l with 300s (1) cores
% 0.17/0.45 # new_bool_3 with pid 7314 completed with status 0
% 0.17/0.45 # Result found by new_bool_3
% 0.17/0.45 # Preprocessing class: FSSSSMSMSSSNFFN.
% 0.17/0.45 # Scheduled 4 strats onto 8 cores with 300 seconds (2400 total)
% 0.17/0.45 # Starting G----_0031_C18_F1_SE_CS_SP_S0Y with 1500s (5) cores
% 0.17/0.45 # Starting new_bool_3 with 300s (1) cores
% 0.17/0.45 # SinE strategy is GSinE(CountFormulas,hypos,1.5,,3,20000,1.0)
% 0.17/0.45 # Search class: FUUPM-FFSS21-SFFFFFNN
% 0.17/0.45 # Scheduled 5 strats onto 1 cores with 300 seconds (300 total)
% 0.17/0.45 # Starting SAT001_MinMin_p005000_rr_RG with 181s (1) cores
% 0.17/0.45 # SAT001_MinMin_p005000_rr_RG with pid 7318 completed with status 0
% 0.17/0.45 # Result found by SAT001_MinMin_p005000_rr_RG
% 0.17/0.45 # Preprocessing class: FSSSSMSMSSSNFFN.
% 0.17/0.45 # Scheduled 4 strats onto 8 cores with 300 seconds (2400 total)
% 0.17/0.45 # Starting G----_0031_C18_F1_SE_CS_SP_S0Y with 1500s (5) cores
% 0.17/0.45 # Starting new_bool_3 with 300s (1) cores
% 0.17/0.45 # SinE strategy is GSinE(CountFormulas,hypos,1.5,,3,20000,1.0)
% 0.17/0.45 # Search class: FUUPM-FFSS21-SFFFFFNN
% 0.17/0.45 # Scheduled 5 strats onto 1 cores with 300 seconds (300 total)
% 0.17/0.45 # Starting SAT001_MinMin_p005000_rr_RG with 181s (1) cores
% 0.17/0.45 # Preprocessing time : 0.001 s
% 0.17/0.45 # Presaturation interreduction done
% 0.17/0.45
% 0.17/0.45 # Proof found!
% 0.17/0.45 # SZS status Unsatisfiable
% 0.17/0.45 # SZS output start CNFRefutation
% See solution above
% 0.17/0.45 # Parsed axioms : 12
% 0.17/0.45 # Removed by relevancy pruning/SinE : 0
% 0.17/0.45 # Initial clauses : 12
% 0.17/0.45 # Removed in clause preprocessing : 0
% 0.17/0.45 # Initial clauses in saturation : 12
% 0.17/0.45 # Processed clauses : 154
% 0.17/0.45 # ...of these trivial : 30
% 0.17/0.45 # ...subsumed : 24
% 0.17/0.45 # ...remaining for further processing : 100
% 0.17/0.45 # Other redundant clauses eliminated : 0
% 0.17/0.45 # Clauses deleted for lack of memory : 0
% 0.17/0.45 # Backward-subsumed : 0
% 0.17/0.45 # Backward-rewritten : 21
% 0.17/0.45 # Generated clauses : 998
% 0.17/0.45 # ...of the previous two non-redundant : 562
% 0.17/0.45 # ...aggressively subsumed : 0
% 0.17/0.45 # Contextual simplify-reflections : 0
% 0.17/0.45 # Paramodulations : 998
% 0.17/0.45 # Factorizations : 0
% 0.17/0.45 # NegExts : 0
% 0.17/0.45 # Equation resolutions : 0
% 0.17/0.45 # Disequality decompositions : 0
% 0.17/0.45 # Total rewrite steps : 1986
% 0.17/0.45 # ...of those cached : 1469
% 0.17/0.45 # Propositional unsat checks : 0
% 0.17/0.45 # Propositional check models : 0
% 0.17/0.45 # Propositional check unsatisfiable : 0
% 0.17/0.45 # Propositional clauses : 0
% 0.17/0.45 # Propositional clauses after purity: 0
% 0.17/0.45 # Propositional unsat core size : 0
% 0.17/0.45 # Propositional preprocessing time : 0.000
% 0.17/0.45 # Propositional encoding time : 0.000
% 0.17/0.45 # Propositional solver time : 0.000
% 0.17/0.45 # Success case prop preproc time : 0.000
% 0.17/0.45 # Success case prop encoding time : 0.000
% 0.17/0.45 # Success case prop solver time : 0.000
% 0.17/0.45 # Current number of processed clauses : 67
% 0.17/0.45 # Positive orientable unit clauses : 64
% 0.17/0.45 # Positive unorientable unit clauses: 2
% 0.17/0.45 # Negative unit clauses : 1
% 0.17/0.45 # Non-unit-clauses : 0
% 0.17/0.45 # Current number of unprocessed clauses: 405
% 0.17/0.45 # ...number of literals in the above : 405
% 0.17/0.45 # Current number of archived formulas : 0
% 0.17/0.45 # Current number of archived clauses : 33
% 0.17/0.45 # Clause-clause subsumption calls (NU) : 0
% 0.17/0.45 # Rec. Clause-clause subsumption calls : 0
% 0.17/0.45 # Non-unit clause-clause subsumptions : 0
% 0.17/0.45 # Unit Clause-clause subsumption calls : 6
% 0.17/0.45 # Rewrite failures with RHS unbound : 0
% 0.17/0.45 # BW rewrite match attempts : 94
% 0.17/0.45 # BW rewrite match successes : 33
% 0.17/0.45 # Condensation attempts : 0
% 0.17/0.45 # Condensation successes : 0
% 0.17/0.45 # Termbank termtop insertions : 10234
% 0.17/0.45 # Search garbage collected termcells : 2
% 0.17/0.45
% 0.17/0.45 # -------------------------------------------------
% 0.17/0.45 # User time : 0.012 s
% 0.17/0.45 # System time : 0.001 s
% 0.17/0.45 # Total time : 0.013 s
% 0.17/0.45 # Maximum resident set size: 1664 pages
% 0.17/0.45
% 0.17/0.45 # -------------------------------------------------
% 0.17/0.45 # User time : 0.012 s
% 0.17/0.45 # System time : 0.004 s
% 0.17/0.45 # Total time : 0.015 s
% 0.17/0.45 # Maximum resident set size: 1692 pages
% 0.17/0.45 % E---3.1 exiting
%------------------------------------------------------------------------------