============================== Prover9 =============================== Prover9 (32) version June-2007, June 2007. Process 4913 was started by zalta on mally, Sat Jul 14 17:21:59 2007 The command was "prove". ============================== end of head =========================== ============================== INPUT ================================= formulas(sos). (all x all y Sum(x,y) = Sum(y,x)). (all x Sum(x,x) = x). (all x all y all z Sum(Sum(x,y),z) = Sum(x,Sum(y,z))). (all x all y (IsIn(x,y) <-> (exists z Sum(x,z) = y))). end_of_list. formulas(goals). (all x all y (IsIn(y,x) -> Sum(x,y) = x)). end_of_list. ============================== end of input ========================== ============================== PROCESS NON-CLAUSAL FORMULAS ========== % Formulas that are not ordinary clauses: 1 (all x all y Sum(x,y) = Sum(y,x)) # label(non_clause). [assumption]. 2 (all x Sum(x,x) = x) # label(non_clause). [assumption]. 3 (all x all y all z Sum(Sum(x,y),z) = Sum(x,Sum(y,z))) # label(non_clause). [assumption]. 4 (all x all y (IsIn(x,y) <-> (exists z Sum(x,z) = y))) # label(non_clause). [assumption]. 5 (all x all y (IsIn(y,x) -> Sum(x,y) = x)) # label(non_clause) # label(goal). [goal]. ============================== end of process non-clausal formulas === ============================== PROCESS INITIAL CLAUSES =============== % Clauses before input processing: formulas(usable). end_of_list. formulas(sos). Sum(x,y) = Sum(y,x). [clausify(1)]. Sum(x,x) = x. [clausify(2)]. Sum(Sum(x,y),z) = Sum(x,Sum(y,z)). [clausify(3)]. -IsIn(x,y) | Sum(x,f1(x,y)) = y. [clausify(4)]. IsIn(x,y) | Sum(x,z) != y. [clausify(4)]. IsIn(c2,c1). [deny(5)]. Sum(c1,c2) != c1. [deny(5)]. end_of_list. formulas(demodulators). end_of_list. ============================== PREDICATE ELIMINATION ================= Eliminating IsIn/2 6 IsIn(x,y) | Sum(x,z) != y. [clausify(4)]. 7 -IsIn(x,y) | Sum(x,f1(x,y)) = y. [clausify(4)]. Derived: Sum(x,y) != z | Sum(x,f1(x,z)) = z. [resolve(6,a,7,a)]. 8 IsIn(c2,c1). [deny(5)]. Derived: Sum(c2,f1(c2,c1)) = c1. [resolve(8,a,7,a)]. ============================== end predicate elimination ============= Auto_denials: (no changes). Term ordering decisions: Predicate symbol precedence: predicate_order([ = ]). Function symbol precedence: function_order([ c1, c2, Sum, f1 ]). After inverse_order: (no changes). Unfolding symbols: (none). Auto_inference settings: % set(paramodulation). % (positive equality literals) % set(paramodulation) -> set(back_demod). % set(hyper_resolution). % (nonunit Horn with equality) % set(hyper_resolution) -> set(pos_hyper_resolution). % set(neg_ur_resolution). % (nonunit Horn with equality) % assign(para_lit_limit, 2). % (nonunit Horn with equality) Auto_process settings: (no changes). % Operation Sum is commutative; C redundancy checks enabled. ============================== end of process initial clauses ======== ============================== CLAUSES FOR SEARCH ==================== % Clauses after input processing: formulas(usable). end_of_list. formulas(sos). 9 Sum(x,y) = Sum(y,x). [clausify(1)]. 10 Sum(x,x) = x. [clausify(2)]. 11 Sum(Sum(x,y),z) = Sum(x,Sum(y,z)). [clausify(3)]. 12 Sum(c1,c2) != c1. [deny(5)]. 13 Sum(x,y) != z | Sum(x,f1(x,z)) = z. [resolve(6,a,7,a)]. 14 Sum(c2,f1(c2,c1)) = c1. [resolve(8,a,7,a)]. end_of_list. formulas(demodulators). 9 Sum(x,y) = Sum(y,x). [clausify(1)]. % (lex-dep) 10 Sum(x,x) = x. [clausify(2)]. 11 Sum(Sum(x,y),z) = Sum(x,Sum(y,z)). [clausify(3)]. 14 Sum(c2,f1(c2,c1)) = c1. [resolve(8,a,7,a)]. end_of_list. ============================== end of clauses for search ============= ============================== SEARCH ================================ % Starting search at 0.00 seconds. given #1 (I,wt=7): 9 Sum(x,y) = Sum(y,x). [clausify(1)]. given #2 (I,wt=5): 10 Sum(x,x) = x. [clausify(2)]. given #3 (I,wt=11): 11 Sum(Sum(x,y),z) = Sum(x,Sum(y,z)). [clausify(3)]. % Operation Sum is associative-commutative; CAC redundancy checks enabled. % back CAC tautology: 15 Sum(x,Sum(y,z)) = Sum(z,Sum(x,y)). [para(11(a,1),9(a,1))]. given #4 (I,wt=5): 12 Sum(c1,c2) != c1. [deny(5)]. given #5 (I,wt=12): 13 Sum(x,y) != z | Sum(x,f1(x,z)) = z. [resolve(6,a,7,a)]. given #6 (I,wt=7): 14 Sum(c2,f1(c2,c1)) = c1. [resolve(8,a,7,a)]. given #7 (A,wt=11): 16 Sum(x,Sum(y,z)) = Sum(y,Sum(x,z)). [para(9(a,1),11(a,1,1)),rewrite([11(2)])]. given #8 (T,wt=7): 21 Sum(x,f1(x,x)) = x. [hyper(13,a,10,a)]. given #9 (T,wt=9): 18 Sum(x,Sum(x,y)) = Sum(x,y). [para(10(a,1),11(a,1,1)),flip(a)]. ============================== PROOF ================================= % Proof 1 at 0.00 (+ 0.00) seconds. % Length of proof is 15. % Level of proof is 4. % Maximum clause weight is 11. % Given clauses 9. 1 (all x all y Sum(x,y) = Sum(y,x)) # label(non_clause). [assumption]. 2 (all x Sum(x,x) = x) # label(non_clause). [assumption]. 3 (all x all y all z Sum(Sum(x,y),z) = Sum(x,Sum(y,z))) # label(non_clause). [assumption]. 4 (all x all y (IsIn(x,y) <-> (exists z Sum(x,z) = y))) # label(non_clause). [assumption]. 5 (all x all y (IsIn(y,x) -> Sum(x,y) = x)) # label(non_clause) # label(goal). [goal]. 7 -IsIn(x,y) | Sum(x,f1(x,y)) = y. [clausify(4)]. 8 IsIn(c2,c1). [deny(5)]. 9 Sum(x,y) = Sum(y,x). [clausify(1)]. 10 Sum(x,x) = x. [clausify(2)]. 11 Sum(Sum(x,y),z) = Sum(x,Sum(y,z)). [clausify(3)]. 12 Sum(c1,c2) != c1. [deny(5)]. 14 Sum(c2,f1(c2,c1)) = c1. [resolve(8,a,7,a)]. 18 Sum(x,Sum(x,y)) = Sum(x,y). [para(10(a,1),11(a,1,1)),flip(a)]. 38 Sum(c1,c2) = c1. [para(14(a,1),18(a,1,2)),rewrite([9(3),14(8)])]. 39 $F. [resolve(38,a,12,a)]. ============================== end of proof ========================== ============================== STATISTICS ============================ Given=9. Generated=102. Kept=30. proofs=1. Usable=9. Sos=15. Demods=19. Limbo=2, Disabled=12. Hints=0. Weight_deleted=0. Literals_deleted=0. Forward_subsumed=72. Back_subsumed=1. Sos_limit_deleted=0. Sos_displaced=0. Sos_removed=0. New_demodulators=22 (3 lex), Back_demodulated=1. Back_unit_deleted=0. Demod_attempts=736. Demod_rewrites=114. Res_instance_prunes=0. Para_instance_prunes=0. Basic_paramod_prunes=0. Nonunit_fsub_feature_tests=12. Nonunit_bsub_feature_tests=21. Megabytes=0.05. User_CPU=0.00, System_CPU=0.00, Wall_clock=0. ============================== end of statistics ===================== ============================== end of search ========================= THEOREM PROVED Exiting with 1 proof. Process 4913 exit (max_proofs) Sat Jul 14 17:21:59 2007