TSTP Solution File: SWV233+1 by SInE---0.4
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : SInE---0.4
% Problem : SWV233+1 : TPTP v5.0.0. Released v3.2.0.
% Transfm : none
% Format : tptp:raw
% Command : Source/sine.py -e eprover -t %d %s
% Computer : art09.cs.miami.edu
% Model : i686 i686
% CPU : Intel(R) Pentium(R) 4 CPU 2.80GHz @ 2793MHz
% Memory : 2018MB
% OS : Linux 2.6.26.8-57.fc8
% CPULimit : 300s
% DateTime : Sun Dec 26 12:25:59 EST 2010
% Result : Theorem 0.47s
% Output : CNFRefutation 0.47s
% Verified :
% SZS Type : Refutation
% Derivation depth : 51
% Number of leaves : 24
% Syntax : Number of formulae : 170 ( 48 unt; 0 def)
% Number of atoms : 558 ( 65 equ)
% Maximal formula atoms : 21 ( 3 avg)
% Number of connectives : 766 ( 378 ~; 325 |; 46 &)
% ( 10 <=>; 7 =>; 0 <=; 0 <~>)
% Maximal formula depth : 13 ( 4 avg)
% Maximal term depth : 8 ( 2 avg)
% Number of predicates : 13 ( 11 usr; 11 prp; 0-2 aty)
% Number of functors : 22 ( 22 usr; 9 con; 0-2 aty)
% Number of variables : 255 ( 48 sgn 81 !; 0 ?)
% Comments :
%------------------------------------------------------------------------------
fof(1,axiom,
! [X1,X2] :
( ( knows(encrypt(X1,X2))
& knows(inverse(X2)) )
=> knows(X1) ),
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',encrypt_equation) ).
fof(2,axiom,
! [X1,X2] :
( ( knows(X1)
& knows(X2) )
=> ( knows(concatenate(X1,X2))
& knows(encrypt(X1,X2))
& knows(symmetric_encrypt(X1,X2))
& knows(decrypt(X1,X2))
& knows(symmetric_decrypt(X1,X2))
& knows(extract(X1,X2))
& knows(sign(X1,X2)) ) ),
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',construct_message_1) ).
fof(3,axiom,
! [X3,X4] :
( ( knows(sign(X3,inverse(X4)))
& knows(X4) )
=> knows(X3) ),
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',sign_equation) ).
fof(5,axiom,
! [X1,X2] :
( knows(concatenate(X1,X2))
=> ( knows(X1)
& knows(X2) ) ),
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',construct_message_2) ).
fof(6,axiom,
! [X5,X6] : tail(concatenate(X5,X6)) = X6,
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',tail_axiom) ).
fof(7,axiom,
! [X3,X4] : decrypt(encrypt(X3,X4),inverse(X4)) = X3,
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',decrypt_axiom) ).
fof(8,axiom,
! [X3,X4] : extract(sign(X3,inverse(X4)),X4) = X3,
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',sign_axiom) ).
fof(9,conjecture,
knows(secret),
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',attack) ).
fof(10,axiom,
! [X7,X8,X9,X10,X11] :
( knows(concatenate(n,concatenate(k_c,sign(concatenate(c,concatenate(k_c,eol)),inverse(k_c)))))
& ( ( knows(X10)
& knows(X11)
& first(extract(X11,k_ca)) = s
& second(extract(decrypt(X10,inverse(k_c)),second(extract(X11,k_ca)))) = n )
=> knows(symmetric_encrypt(secret,first(extract(decrypt(X10,inverse(k_c)),second(extract(X11,k_ca)))))) )
& ( ( knows(X7)
& knows(X8)
& knows(X9)
& second(extract(X9,X8)) = X8 )
=> knows(concatenate(encrypt(sign(concatenate(kgen(X8),concatenate(X7,eol)),inverse(k_s)),X8),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca)))) ) ),
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',protocol) ).
fof(12,axiom,
! [X5] : first(X5) = head(X5),
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',first_axiom) ).
fof(14,axiom,
! [X1,X2] :
( ( knows(symmetric_encrypt(X1,X2))
& knows(X2) )
=> knows(X1) ),
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',symmetric_encrypt_equation) ).
fof(16,axiom,
! [X5,X6] : head(concatenate(X5,X6)) = X5,
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',head_axiom) ).
fof(17,axiom,
( knows(k_ca)
& knows(inverse(k_a))
& knows(k_a) ),
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',previous_knowledge) ).
fof(18,axiom,
! [X5] : second(X5) = head(tail(X5)),
file('/tmp/tmpN77VOv/sel_SWV233+1.p_1',second_axiom) ).
fof(20,negated_conjecture,
~ knows(secret),
inference(assume_negation,[status(cth)],[9]) ).
fof(21,negated_conjecture,
~ knows(secret),
inference(fof_simplification,[status(thm)],[20,theory(equality)]) ).
fof(22,plain,
! [X1,X2] :
( ~ knows(encrypt(X1,X2))
| ~ knows(inverse(X2))
| knows(X1) ),
inference(fof_nnf,[status(thm)],[1]) ).
fof(23,plain,
! [X3,X4] :
( ~ knows(encrypt(X3,X4))
| ~ knows(inverse(X4))
| knows(X3) ),
inference(variable_rename,[status(thm)],[22]) ).
cnf(24,plain,
( knows(X1)
| ~ knows(inverse(X2))
| ~ knows(encrypt(X1,X2)) ),
inference(split_conjunct,[status(thm)],[23]) ).
fof(25,plain,
! [X1,X2] :
( ~ knows(X1)
| ~ knows(X2)
| ( knows(concatenate(X1,X2))
& knows(encrypt(X1,X2))
& knows(symmetric_encrypt(X1,X2))
& knows(decrypt(X1,X2))
& knows(symmetric_decrypt(X1,X2))
& knows(extract(X1,X2))
& knows(sign(X1,X2)) ) ),
inference(fof_nnf,[status(thm)],[2]) ).
fof(26,plain,
! [X3,X4] :
( ~ knows(X3)
| ~ knows(X4)
| ( knows(concatenate(X3,X4))
& knows(encrypt(X3,X4))
& knows(symmetric_encrypt(X3,X4))
& knows(decrypt(X3,X4))
& knows(symmetric_decrypt(X3,X4))
& knows(extract(X3,X4))
& knows(sign(X3,X4)) ) ),
inference(variable_rename,[status(thm)],[25]) ).
fof(27,plain,
! [X3,X4] :
( ( knows(concatenate(X3,X4))
| ~ knows(X3)
| ~ knows(X4) )
& ( knows(encrypt(X3,X4))
| ~ knows(X3)
| ~ knows(X4) )
& ( knows(symmetric_encrypt(X3,X4))
| ~ knows(X3)
| ~ knows(X4) )
& ( knows(decrypt(X3,X4))
| ~ knows(X3)
| ~ knows(X4) )
& ( knows(symmetric_decrypt(X3,X4))
| ~ knows(X3)
| ~ knows(X4) )
& ( knows(extract(X3,X4))
| ~ knows(X3)
| ~ knows(X4) )
& ( knows(sign(X3,X4))
| ~ knows(X3)
| ~ knows(X4) ) ),
inference(distribute,[status(thm)],[26]) ).
cnf(28,plain,
( knows(sign(X2,X1))
| ~ knows(X1)
| ~ knows(X2) ),
inference(split_conjunct,[status(thm)],[27]) ).
cnf(33,plain,
( knows(encrypt(X2,X1))
| ~ knows(X1)
| ~ knows(X2) ),
inference(split_conjunct,[status(thm)],[27]) ).
cnf(34,plain,
( knows(concatenate(X2,X1))
| ~ knows(X1)
| ~ knows(X2) ),
inference(split_conjunct,[status(thm)],[27]) ).
fof(35,plain,
! [X3,X4] :
( ~ knows(sign(X3,inverse(X4)))
| ~ knows(X4)
| knows(X3) ),
inference(fof_nnf,[status(thm)],[3]) ).
fof(36,plain,
! [X5,X6] :
( ~ knows(sign(X5,inverse(X6)))
| ~ knows(X6)
| knows(X5) ),
inference(variable_rename,[status(thm)],[35]) ).
cnf(37,plain,
( knows(X1)
| ~ knows(X2)
| ~ knows(sign(X1,inverse(X2))) ),
inference(split_conjunct,[status(thm)],[36]) ).
fof(44,plain,
! [X1,X2] :
( ~ knows(concatenate(X1,X2))
| ( knows(X1)
& knows(X2) ) ),
inference(fof_nnf,[status(thm)],[5]) ).
fof(45,plain,
! [X3,X4] :
( ~ knows(concatenate(X3,X4))
| ( knows(X3)
& knows(X4) ) ),
inference(variable_rename,[status(thm)],[44]) ).
fof(46,plain,
! [X3,X4] :
( ( knows(X3)
| ~ knows(concatenate(X3,X4)) )
& ( knows(X4)
| ~ knows(concatenate(X3,X4)) ) ),
inference(distribute,[status(thm)],[45]) ).
cnf(47,plain,
( knows(X2)
| ~ knows(concatenate(X1,X2)) ),
inference(split_conjunct,[status(thm)],[46]) ).
cnf(48,plain,
( knows(X1)
| ~ knows(concatenate(X1,X2)) ),
inference(split_conjunct,[status(thm)],[46]) ).
fof(49,plain,
! [X7,X8] : tail(concatenate(X7,X8)) = X8,
inference(variable_rename,[status(thm)],[6]) ).
cnf(50,plain,
tail(concatenate(X1,X2)) = X2,
inference(split_conjunct,[status(thm)],[49]) ).
fof(51,plain,
! [X5,X6] : decrypt(encrypt(X5,X6),inverse(X6)) = X5,
inference(variable_rename,[status(thm)],[7]) ).
cnf(52,plain,
decrypt(encrypt(X1,X2),inverse(X2)) = X1,
inference(split_conjunct,[status(thm)],[51]) ).
fof(53,plain,
! [X5,X6] : extract(sign(X5,inverse(X6)),X6) = X5,
inference(variable_rename,[status(thm)],[8]) ).
cnf(54,plain,
extract(sign(X1,inverse(X2)),X2) = X1,
inference(split_conjunct,[status(thm)],[53]) ).
cnf(55,negated_conjecture,
~ knows(secret),
inference(split_conjunct,[status(thm)],[21]) ).
fof(56,plain,
! [X7,X8,X9,X10,X11] :
( knows(concatenate(n,concatenate(k_c,sign(concatenate(c,concatenate(k_c,eol)),inverse(k_c)))))
& ( ~ knows(X10)
| ~ knows(X11)
| first(extract(X11,k_ca)) != s
| second(extract(decrypt(X10,inverse(k_c)),second(extract(X11,k_ca)))) != n
| knows(symmetric_encrypt(secret,first(extract(decrypt(X10,inverse(k_c)),second(extract(X11,k_ca)))))) )
& ( ~ knows(X7)
| ~ knows(X8)
| ~ knows(X9)
| second(extract(X9,X8)) != X8
| knows(concatenate(encrypt(sign(concatenate(kgen(X8),concatenate(X7,eol)),inverse(k_s)),X8),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca)))) ) ),
inference(fof_nnf,[status(thm)],[10]) ).
fof(57,plain,
! [X12,X13,X14,X15,X16] :
( knows(concatenate(n,concatenate(k_c,sign(concatenate(c,concatenate(k_c,eol)),inverse(k_c)))))
& ( ~ knows(X15)
| ~ knows(X16)
| first(extract(X16,k_ca)) != s
| second(extract(decrypt(X15,inverse(k_c)),second(extract(X16,k_ca)))) != n
| knows(symmetric_encrypt(secret,first(extract(decrypt(X15,inverse(k_c)),second(extract(X16,k_ca)))))) )
& ( ~ knows(X12)
| ~ knows(X13)
| ~ knows(X14)
| second(extract(X14,X13)) != X13
| knows(concatenate(encrypt(sign(concatenate(kgen(X13),concatenate(X12,eol)),inverse(k_s)),X13),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca)))) ) ),
inference(variable_rename,[status(thm)],[56]) ).
cnf(58,plain,
( knows(concatenate(encrypt(sign(concatenate(kgen(X1),concatenate(X2,eol)),inverse(k_s)),X1),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca))))
| second(extract(X3,X1)) != X1
| ~ knows(X3)
| ~ knows(X1)
| ~ knows(X2) ),
inference(split_conjunct,[status(thm)],[57]) ).
cnf(59,plain,
( knows(symmetric_encrypt(secret,first(extract(decrypt(X1,inverse(k_c)),second(extract(X2,k_ca))))))
| second(extract(decrypt(X1,inverse(k_c)),second(extract(X2,k_ca)))) != n
| first(extract(X2,k_ca)) != s
| ~ knows(X2)
| ~ knows(X1) ),
inference(split_conjunct,[status(thm)],[57]) ).
cnf(60,plain,
knows(concatenate(n,concatenate(k_c,sign(concatenate(c,concatenate(k_c,eol)),inverse(k_c))))),
inference(split_conjunct,[status(thm)],[57]) ).
fof(64,plain,
! [X6] : first(X6) = head(X6),
inference(variable_rename,[status(thm)],[12]) ).
cnf(65,plain,
first(X1) = head(X1),
inference(split_conjunct,[status(thm)],[64]) ).
fof(68,plain,
! [X1,X2] :
( ~ knows(symmetric_encrypt(X1,X2))
| ~ knows(X2)
| knows(X1) ),
inference(fof_nnf,[status(thm)],[14]) ).
fof(69,plain,
! [X3,X4] :
( ~ knows(symmetric_encrypt(X3,X4))
| ~ knows(X4)
| knows(X3) ),
inference(variable_rename,[status(thm)],[68]) ).
cnf(70,plain,
( knows(X1)
| ~ knows(X2)
| ~ knows(symmetric_encrypt(X1,X2)) ),
inference(split_conjunct,[status(thm)],[69]) ).
fof(73,plain,
! [X7,X8] : head(concatenate(X7,X8)) = X7,
inference(variable_rename,[status(thm)],[16]) ).
cnf(74,plain,
head(concatenate(X1,X2)) = X1,
inference(split_conjunct,[status(thm)],[73]) ).
cnf(75,plain,
knows(k_a),
inference(split_conjunct,[status(thm)],[17]) ).
cnf(76,plain,
knows(inverse(k_a)),
inference(split_conjunct,[status(thm)],[17]) ).
cnf(77,plain,
knows(k_ca),
inference(split_conjunct,[status(thm)],[17]) ).
fof(78,plain,
! [X6] : second(X6) = head(tail(X6)),
inference(variable_rename,[status(thm)],[18]) ).
cnf(79,plain,
second(X1) = head(tail(X1)),
inference(split_conjunct,[status(thm)],[78]) ).
cnf(82,plain,
( knows(symmetric_encrypt(secret,head(extract(decrypt(X1,inverse(k_c)),second(extract(X2,k_ca))))))
| head(extract(X2,k_ca)) != s
| second(extract(decrypt(X1,inverse(k_c)),second(extract(X2,k_ca)))) != n
| ~ knows(X2)
| ~ knows(X1) ),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[59,65,theory(equality)]),65,theory(equality)]),
[unfolding] ).
cnf(83,plain,
( knows(concatenate(encrypt(sign(concatenate(kgen(X1),concatenate(X2,eol)),inverse(k_s)),X1),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca))))
| head(tail(extract(X3,X1))) != X1
| ~ knows(X3)
| ~ knows(X2)
| ~ knows(X1) ),
inference(rw,[status(thm)],[58,79,theory(equality)]),
[unfolding] ).
cnf(84,plain,
( knows(symmetric_encrypt(secret,head(extract(decrypt(X1,inverse(k_c)),head(tail(extract(X2,k_ca)))))))
| head(extract(X2,k_ca)) != s
| head(tail(extract(decrypt(X1,inverse(k_c)),head(tail(extract(X2,k_ca)))))) != n
| ~ knows(X2)
| ~ knows(X1) ),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[82,79,theory(equality)]),79,theory(equality)]),79,theory(equality)]),
[unfolding] ).
cnf(95,plain,
knows(concatenate(k_c,sign(concatenate(c,concatenate(k_c,eol)),inverse(k_c)))),
inference(spm,[status(thm)],[47,60,theory(equality)]) ).
cnf(96,plain,
knows(n),
inference(spm,[status(thm)],[48,60,theory(equality)]) ).
cnf(97,plain,
( knows(concatenate(encrypt(sign(concatenate(kgen(X1),concatenate(X2,eol)),inverse(k_s)),X1),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca))))
| head(tail(X3)) != X1
| ~ knows(sign(X3,inverse(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(spm,[status(thm)],[83,54,theory(equality)]) ).
cnf(100,plain,
( knows(secret)
| ~ knows(head(extract(decrypt(X1,inverse(k_c)),head(tail(extract(X2,k_ca))))))
| head(tail(extract(decrypt(X1,inverse(k_c)),head(tail(extract(X2,k_ca)))))) != n
| head(extract(X2,k_ca)) != s
| ~ knows(X2)
| ~ knows(X1) ),
inference(spm,[status(thm)],[70,84,theory(equality)]) ).
cnf(101,plain,
( ~ knows(head(extract(decrypt(X1,inverse(k_c)),head(tail(extract(X2,k_ca))))))
| head(tail(extract(decrypt(X1,inverse(k_c)),head(tail(extract(X2,k_ca)))))) != n
| head(extract(X2,k_ca)) != s
| ~ knows(X2)
| ~ knows(X1) ),
inference(sr,[status(thm)],[100,55,theory(equality)]) ).
cnf(102,plain,
( head(tail(extract(X1,head(tail(extract(X2,k_ca)))))) != n
| head(extract(X2,k_ca)) != s
| ~ knows(head(extract(X1,head(tail(extract(X2,k_ca))))))
| ~ knows(X2)
| ~ knows(encrypt(X1,k_c)) ),
inference(spm,[status(thm)],[101,52,theory(equality)]) ).
cnf(105,plain,
( head(tail(X1)) != n
| head(extract(X2,k_ca)) != s
| ~ knows(head(X1))
| ~ knows(encrypt(sign(X1,inverse(head(tail(extract(X2,k_ca))))),k_c))
| ~ knows(X2) ),
inference(spm,[status(thm)],[102,54,theory(equality)]) ).
cnf(106,plain,
( head(X1) != s
| head(tail(X2)) != n
| ~ knows(encrypt(sign(X2,inverse(head(tail(X1)))),k_c))
| ~ knows(head(X2))
| ~ knows(sign(X1,inverse(k_ca))) ),
inference(spm,[status(thm)],[105,54,theory(equality)]) ).
cnf(109,plain,
( head(tail(X1)) != n
| head(X2) != s
| ~ knows(sign(X2,inverse(k_ca)))
| ~ knows(head(X1))
| ~ knows(sign(X1,inverse(head(tail(X2)))))
| ~ knows(k_c) ),
inference(spm,[status(thm)],[106,33,theory(equality)]) ).
cnf(124,plain,
knows(sign(concatenate(c,concatenate(k_c,eol)),inverse(k_c))),
inference(spm,[status(thm)],[47,95,theory(equality)]) ).
cnf(125,plain,
knows(k_c),
inference(spm,[status(thm)],[48,95,theory(equality)]) ).
cnf(137,plain,
( head(tail(X1)) != n
| head(X2) != s
| ~ knows(sign(X1,inverse(head(tail(X2)))))
| ~ knows(sign(X2,inverse(k_ca)))
| ~ knows(head(X1))
| $false ),
inference(rw,[status(thm)],[109,125,theory(equality)]) ).
cnf(138,plain,
( head(tail(X1)) != n
| head(X2) != s
| ~ knows(sign(X1,inverse(head(tail(X2)))))
| ~ knows(sign(X2,inverse(k_ca)))
| ~ knows(head(X1)) ),
inference(cn,[status(thm)],[137,theory(equality)]) ).
cnf(173,plain,
( head(tail(X1)) != n
| head(concatenate(X2,X3)) != s
| ~ knows(sign(X1,inverse(head(X3))))
| ~ knows(sign(concatenate(X2,X3),inverse(k_ca)))
| ~ knows(head(X1)) ),
inference(spm,[status(thm)],[138,50,theory(equality)]) ).
cnf(175,plain,
( head(tail(X1)) != n
| X2 != s
| ~ knows(sign(X1,inverse(head(X3))))
| ~ knows(sign(concatenate(X2,X3),inverse(k_ca)))
| ~ knows(head(X1)) ),
inference(rw,[status(thm)],[173,74,theory(equality)]) ).
cnf(176,plain,
( knows(concatenate(encrypt(sign(concatenate(kgen(k_c),concatenate(X1,eol)),inverse(k_s)),k_c),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca))))
| head(tail(concatenate(c,concatenate(k_c,eol)))) != k_c
| ~ knows(X1)
| ~ knows(k_c) ),
inference(spm,[status(thm)],[97,124,theory(equality)]) ).
cnf(177,plain,
( knows(concatenate(encrypt(sign(concatenate(kgen(X1),concatenate(X2,eol)),inverse(k_s)),X1),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca))))
| head(tail(X3)) != X1
| ~ knows(X2)
| ~ knows(X1)
| ~ knows(X3)
| ~ knows(inverse(X1)) ),
inference(spm,[status(thm)],[97,28,theory(equality)]) ).
cnf(178,plain,
( knows(concatenate(encrypt(sign(concatenate(kgen(k_c),concatenate(X1,eol)),inverse(k_s)),k_c),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca))))
| $false
| ~ knows(X1)
| ~ knows(k_c) ),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[176,50,theory(equality)]),74,theory(equality)]) ).
cnf(179,plain,
( knows(concatenate(encrypt(sign(concatenate(kgen(k_c),concatenate(X1,eol)),inverse(k_s)),k_c),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca))))
| $false
| ~ knows(X1)
| $false ),
inference(rw,[status(thm)],[178,125,theory(equality)]) ).
cnf(180,plain,
( knows(concatenate(encrypt(sign(concatenate(kgen(k_c),concatenate(X1,eol)),inverse(k_s)),k_c),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca))))
| ~ knows(X1) ),
inference(cn,[status(thm)],[179,theory(equality)]) ).
cnf(380,plain,
( knows(sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca)))
| ~ knows(X1) ),
inference(spm,[status(thm)],[47,180,theory(equality)]) ).
cnf(391,plain,
( knows(concatenate(encrypt(sign(concatenate(kgen(head(tail(X1))),concatenate(X2,eol)),inverse(k_s)),head(tail(X1))),sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca))))
| ~ knows(inverse(head(tail(X1))))
| ~ knows(X2)
| ~ knows(head(tail(X1)))
| ~ knows(X1) ),
inference(er,[status(thm)],[177,theory(equality)]) ).
cnf(435,plain,
knows(sign(concatenate(s,concatenate(k_s,eol)),inverse(k_ca))),
inference(spm,[status(thm)],[380,77,theory(equality)]) ).
cnf(463,plain,
( knows(concatenate(s,concatenate(k_s,eol)))
| ~ knows(k_ca) ),
inference(spm,[status(thm)],[37,435,theory(equality)]) ).
cnf(466,plain,
( head(tail(X1)) != n
| ~ knows(sign(X1,inverse(head(concatenate(k_s,eol)))))
| ~ knows(head(X1)) ),
inference(spm,[status(thm)],[175,435,theory(equality)]) ).
cnf(472,plain,
( knows(concatenate(s,concatenate(k_s,eol)))
| $false ),
inference(rw,[status(thm)],[463,77,theory(equality)]) ).
cnf(473,plain,
knows(concatenate(s,concatenate(k_s,eol))),
inference(cn,[status(thm)],[472,theory(equality)]) ).
cnf(478,plain,
( head(tail(X1)) != n
| ~ knows(sign(X1,inverse(k_s)))
| ~ knows(head(X1)) ),
inference(rw,[status(thm)],[466,74,theory(equality)]) ).
cnf(490,plain,
knows(concatenate(k_s,eol)),
inference(spm,[status(thm)],[47,473,theory(equality)]) ).
cnf(541,plain,
knows(k_s),
inference(spm,[status(thm)],[48,490,theory(equality)]) ).
cnf(897,plain,
( knows(encrypt(sign(concatenate(kgen(head(tail(X1))),concatenate(X2,eol)),inverse(k_s)),head(tail(X1))))
| ~ knows(inverse(head(tail(X1))))
| ~ knows(head(tail(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(spm,[status(thm)],[48,391,theory(equality)]) ).
cnf(1230,plain,
( knows(sign(concatenate(kgen(head(tail(X1))),concatenate(X2,eol)),inverse(k_s)))
| ~ knows(inverse(head(tail(X1))))
| ~ knows(head(tail(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(spm,[status(thm)],[24,897,theory(equality)]) ).
cnf(1293,plain,
( knows(concatenate(kgen(head(tail(X1))),concatenate(X2,eol)))
| ~ knows(k_s)
| ~ knows(inverse(head(tail(X1))))
| ~ knows(head(tail(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(spm,[status(thm)],[37,1230,theory(equality)]) ).
cnf(1295,plain,
( head(tail(concatenate(kgen(head(tail(X1))),concatenate(X2,eol)))) != n
| ~ knows(head(concatenate(kgen(head(tail(X1))),concatenate(X2,eol))))
| ~ knows(inverse(head(tail(X1))))
| ~ knows(head(tail(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(spm,[status(thm)],[478,1230,theory(equality)]) ).
cnf(1300,plain,
( knows(concatenate(kgen(head(tail(X1))),concatenate(X2,eol)))
| $false
| ~ knows(inverse(head(tail(X1))))
| ~ knows(head(tail(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(rw,[status(thm)],[1293,541,theory(equality)]) ).
cnf(1301,plain,
( knows(concatenate(kgen(head(tail(X1))),concatenate(X2,eol)))
| ~ knows(inverse(head(tail(X1))))
| ~ knows(head(tail(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(cn,[status(thm)],[1300,theory(equality)]) ).
cnf(1305,plain,
( X2 != n
| ~ knows(head(concatenate(kgen(head(tail(X1))),concatenate(X2,eol))))
| ~ knows(inverse(head(tail(X1))))
| ~ knows(head(tail(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(rw,[status(thm)],[inference(rw,[status(thm)],[1295,50,theory(equality)]),74,theory(equality)]) ).
cnf(1306,plain,
( X2 != n
| ~ knows(kgen(head(tail(X1))))
| ~ knows(inverse(head(tail(X1))))
| ~ knows(head(tail(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(rw,[status(thm)],[1305,74,theory(equality)]) ).
fof(1321,plain,
( ~ epred17_0
<=> ! [X2] :
( ~ knows(X2)
| X2 != n ) ),
introduced(definition),
[split] ).
cnf(1322,plain,
( epred17_0
| ~ knows(X2)
| X2 != n ),
inference(split_equiv,[status(thm)],[1321]) ).
fof(1323,plain,
( ~ epred18_0
<=> ! [X1] :
( ~ knows(X1)
| ~ knows(head(tail(X1)))
| ~ knows(inverse(head(tail(X1))))
| ~ knows(kgen(head(tail(X1)))) ) ),
introduced(definition),
[split] ).
cnf(1324,plain,
( epred18_0
| ~ knows(X1)
| ~ knows(head(tail(X1)))
| ~ knows(inverse(head(tail(X1))))
| ~ knows(kgen(head(tail(X1)))) ),
inference(split_equiv,[status(thm)],[1323]) ).
cnf(1325,plain,
( ~ epred18_0
| ~ epred17_0 ),
inference(apply_def,[status(esa)],[inference(apply_def,[status(esa)],[1306,1321,theory(equality)]),1323,theory(equality)]),
[split] ).
cnf(1330,plain,
epred17_0,
inference(spm,[status(thm)],[1322,96,theory(equality)]) ).
cnf(1378,plain,
( ~ epred18_0
| $false ),
inference(rw,[status(thm)],[1325,1330,theory(equality)]) ).
cnf(1379,plain,
~ epred18_0,
inference(cn,[status(thm)],[1378,theory(equality)]) ).
cnf(1380,plain,
( epred18_0
| ~ knows(inverse(head(X2)))
| ~ knows(kgen(head(X2)))
| ~ knows(head(X2))
| ~ knows(concatenate(X1,X2)) ),
inference(spm,[status(thm)],[1324,50,theory(equality)]) ).
cnf(1381,plain,
( epred18_0
| ~ knows(inverse(X1))
| ~ knows(kgen(X1))
| ~ knows(concatenate(X3,concatenate(X1,X2)))
| ~ knows(X1) ),
inference(spm,[status(thm)],[1380,74,theory(equality)]) ).
cnf(1385,plain,
( epred18_0
| ~ knows(inverse(X2))
| ~ knows(kgen(X2))
| ~ knows(X2)
| ~ knows(X1)
| ~ knows(concatenate(X2,X3)) ),
inference(spm,[status(thm)],[1381,34,theory(equality)]) ).
cnf(1404,plain,
( ~ knows(inverse(X2))
| ~ knows(kgen(X2))
| ~ knows(X2)
| ~ knows(X1)
| ~ knows(concatenate(X2,X3)) ),
inference(sr,[status(thm)],[1385,1379,theory(equality)]) ).
cnf(1405,plain,
( ~ knows(concatenate(X2,X3))
| ~ knows(inverse(X2))
| ~ knows(kgen(X2))
| ~ knows(X1) ),
inference(csr,[status(thm)],[1404,48]) ).
fof(1406,plain,
( ~ epred19_0
<=> ! [X3,X2] :
( ~ knows(kgen(X2))
| ~ knows(inverse(X2))
| ~ knows(concatenate(X2,X3)) ) ),
introduced(definition),
[split] ).
cnf(1407,plain,
( epred19_0
| ~ knows(kgen(X2))
| ~ knows(inverse(X2))
| ~ knows(concatenate(X2,X3)) ),
inference(split_equiv,[status(thm)],[1406]) ).
fof(1408,plain,
( ~ epred20_0
<=> ! [X1] : ~ knows(X1) ),
introduced(definition),
[split] ).
cnf(1409,plain,
( epred20_0
| ~ knows(X1) ),
inference(split_equiv,[status(thm)],[1408]) ).
cnf(1410,plain,
( ~ epred20_0
| ~ epred19_0 ),
inference(apply_def,[status(esa)],[inference(apply_def,[status(esa)],[1405,1406,theory(equality)]),1408,theory(equality)]),
[split] ).
cnf(1411,plain,
epred20_0,
inference(spm,[status(thm)],[1409,77,theory(equality)]) ).
cnf(1470,plain,
( epred19_0
| ~ knows(kgen(X1))
| ~ knows(inverse(X1))
| ~ knows(X1)
| ~ knows(X2) ),
inference(spm,[status(thm)],[1407,34,theory(equality)]) ).
cnf(1476,plain,
( $false
| ~ epred19_0 ),
inference(rw,[status(thm)],[1410,1411,theory(equality)]) ).
cnf(1477,plain,
~ epred19_0,
inference(cn,[status(thm)],[1476,theory(equality)]) ).
cnf(1484,plain,
( ~ knows(kgen(X1))
| ~ knows(inverse(X1))
| ~ knows(X1)
| ~ knows(X2) ),
inference(sr,[status(thm)],[1470,1477,theory(equality)]) ).
fof(1485,plain,
( ~ epred21_0
<=> ! [X1] :
( ~ knows(X1)
| ~ knows(inverse(X1))
| ~ knows(kgen(X1)) ) ),
introduced(definition),
[split] ).
cnf(1486,plain,
( epred21_0
| ~ knows(X1)
| ~ knows(inverse(X1))
| ~ knows(kgen(X1)) ),
inference(split_equiv,[status(thm)],[1485]) ).
fof(1487,plain,
( ~ epred22_0
<=> ! [X2] : ~ knows(X2) ),
introduced(definition),
[split] ).
cnf(1488,plain,
( epred22_0
| ~ knows(X2) ),
inference(split_equiv,[status(thm)],[1487]) ).
cnf(1489,plain,
( ~ epred22_0
| ~ epred21_0 ),
inference(apply_def,[status(esa)],[inference(apply_def,[status(esa)],[1484,1485,theory(equality)]),1487,theory(equality)]),
[split] ).
cnf(1501,plain,
epred22_0,
inference(spm,[status(thm)],[1488,77,theory(equality)]) ).
cnf(1555,plain,
( $false
| ~ epred21_0 ),
inference(rw,[status(thm)],[1489,1501,theory(equality)]) ).
cnf(1556,plain,
~ epred21_0,
inference(cn,[status(thm)],[1555,theory(equality)]) ).
cnf(1557,plain,
( ~ knows(X1)
| ~ knows(inverse(X1))
| ~ knows(kgen(X1)) ),
inference(sr,[status(thm)],[1486,1556,theory(equality)]) ).
cnf(2229,plain,
( knows(concatenate(X1,eol))
| ~ knows(inverse(head(tail(X2))))
| ~ knows(head(tail(X2)))
| ~ knows(X1)
| ~ knows(X2) ),
inference(spm,[status(thm)],[47,1301,theory(equality)]) ).
cnf(2230,plain,
( knows(kgen(head(tail(X1))))
| ~ knows(inverse(head(tail(X1))))
| ~ knows(head(tail(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(spm,[status(thm)],[48,1301,theory(equality)]) ).
cnf(2255,plain,
( knows(concatenate(X1,eol))
| ~ knows(inverse(head(X3)))
| ~ knows(head(X3))
| ~ knows(X1)
| ~ knows(concatenate(X2,X3)) ),
inference(spm,[status(thm)],[2229,50,theory(equality)]) ).
cnf(2256,plain,
( knows(concatenate(X1,eol))
| ~ knows(inverse(X2))
| ~ knows(concatenate(X4,concatenate(X2,X3)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(spm,[status(thm)],[2255,74,theory(equality)]) ).
cnf(2260,plain,
( knows(concatenate(X1,eol))
| ~ knows(inverse(X3))
| ~ knows(X3)
| ~ knows(X1)
| ~ knows(X2)
| ~ knows(concatenate(X3,X4)) ),
inference(spm,[status(thm)],[2256,34,theory(equality)]) ).
cnf(2446,plain,
( knows(concatenate(X1,eol))
| ~ knows(concatenate(X3,X4))
| ~ knows(inverse(X3))
| ~ knows(X1)
| ~ knows(X2) ),
inference(csr,[status(thm)],[2260,48]) ).
cnf(2453,plain,
( knows(concatenate(X1,eol))
| ~ knows(inverse(X2))
| ~ knows(X1)
| ~ knows(X4)
| ~ knows(X2)
| ~ knows(X3) ),
inference(spm,[status(thm)],[2446,34,theory(equality)]) ).
cnf(2577,plain,
( knows(concatenate(X1,eol))
| ~ knows(X1)
| ~ knows(X2)
| ~ knows(k_a)
| ~ knows(X3) ),
inference(spm,[status(thm)],[2453,76,theory(equality)]) ).
cnf(2578,plain,
( knows(concatenate(X1,eol))
| ~ knows(X1)
| ~ knows(X2)
| $false
| ~ knows(X3) ),
inference(rw,[status(thm)],[2577,75,theory(equality)]) ).
cnf(2579,plain,
( knows(concatenate(X1,eol))
| ~ knows(X1)
| ~ knows(X2)
| ~ knows(X3) ),
inference(cn,[status(thm)],[2578,theory(equality)]) ).
cnf(2580,plain,
( knows(concatenate(X1,eol))
| ~ knows(X1)
| ~ knows(X2) ),
inference(spm,[status(thm)],[2579,77,theory(equality)]) ).
cnf(2641,plain,
( knows(concatenate(X1,eol))
| ~ knows(X1) ),
inference(spm,[status(thm)],[2580,77,theory(equality)]) ).
cnf(2745,plain,
( ~ knows(inverse(head(tail(X1))))
| ~ knows(head(tail(X1)))
| ~ knows(X2)
| ~ knows(X1) ),
inference(csr,[status(thm)],[2230,1557]) ).
fof(2746,plain,
( ~ epred33_0
<=> ! [X1] :
( ~ knows(X1)
| ~ knows(head(tail(X1)))
| ~ knows(inverse(head(tail(X1)))) ) ),
introduced(definition),
[split] ).
cnf(2747,plain,
( epred33_0
| ~ knows(X1)
| ~ knows(head(tail(X1)))
| ~ knows(inverse(head(tail(X1)))) ),
inference(split_equiv,[status(thm)],[2746]) ).
fof(2748,plain,
( ~ epred34_0
<=> ! [X2] : ~ knows(X2) ),
introduced(definition),
[split] ).
cnf(2749,plain,
( epred34_0
| ~ knows(X2) ),
inference(split_equiv,[status(thm)],[2748]) ).
cnf(2750,plain,
( ~ epred34_0
| ~ epred33_0 ),
inference(apply_def,[status(esa)],[inference(apply_def,[status(esa)],[2745,2746,theory(equality)]),2748,theory(equality)]),
[split] ).
cnf(2751,plain,
epred34_0,
inference(spm,[status(thm)],[2749,77,theory(equality)]) ).
cnf(2816,plain,
( $false
| ~ epred33_0 ),
inference(rw,[status(thm)],[2750,2751,theory(equality)]) ).
cnf(2817,plain,
~ epred33_0,
inference(cn,[status(thm)],[2816,theory(equality)]) ).
cnf(2824,plain,
( ~ knows(X1)
| ~ knows(head(tail(X1)))
| ~ knows(inverse(head(tail(X1)))) ),
inference(sr,[status(thm)],[2747,2817,theory(equality)]) ).
cnf(2825,plain,
( ~ knows(inverse(head(X2)))
| ~ knows(head(X2))
| ~ knows(concatenate(X1,X2)) ),
inference(spm,[status(thm)],[2824,50,theory(equality)]) ).
cnf(2831,plain,
( ~ knows(inverse(X1))
| ~ knows(concatenate(X3,concatenate(X1,X2)))
| ~ knows(X1) ),
inference(spm,[status(thm)],[2825,74,theory(equality)]) ).
cnf(2897,plain,
( ~ knows(inverse(X2))
| ~ knows(X2)
| ~ knows(X1)
| ~ knows(concatenate(X2,X3)) ),
inference(spm,[status(thm)],[2831,34,theory(equality)]) ).
cnf(2913,plain,
( ~ knows(concatenate(X2,X3))
| ~ knows(inverse(X2))
| ~ knows(X1) ),
inference(csr,[status(thm)],[2897,48]) ).
fof(2914,plain,
( ~ epred35_0
<=> ! [X3,X2] :
( ~ knows(inverse(X2))
| ~ knows(concatenate(X2,X3)) ) ),
introduced(definition),
[split] ).
cnf(2915,plain,
( epred35_0
| ~ knows(inverse(X2))
| ~ knows(concatenate(X2,X3)) ),
inference(split_equiv,[status(thm)],[2914]) ).
fof(2916,plain,
( ~ epred36_0
<=> ! [X1] : ~ knows(X1) ),
introduced(definition),
[split] ).
cnf(2917,plain,
( epred36_0
| ~ knows(X1) ),
inference(split_equiv,[status(thm)],[2916]) ).
cnf(2918,plain,
( ~ epred36_0
| ~ epred35_0 ),
inference(apply_def,[status(esa)],[inference(apply_def,[status(esa)],[2913,2914,theory(equality)]),2916,theory(equality)]),
[split] ).
cnf(2919,plain,
epred36_0,
inference(spm,[status(thm)],[2917,77,theory(equality)]) ).
cnf(2982,plain,
( $false
| ~ epred35_0 ),
inference(rw,[status(thm)],[2918,2919,theory(equality)]) ).
cnf(2983,plain,
~ epred35_0,
inference(cn,[status(thm)],[2982,theory(equality)]) ).
cnf(2984,plain,
( ~ knows(inverse(X2))
| ~ knows(concatenate(X2,X3)) ),
inference(sr,[status(thm)],[2915,2983,theory(equality)]) ).
cnf(2996,plain,
( ~ knows(inverse(X1))
| ~ knows(X1) ),
inference(spm,[status(thm)],[2984,2641,theory(equality)]) ).
cnf(3012,plain,
~ knows(k_a),
inference(spm,[status(thm)],[2996,76,theory(equality)]) ).
cnf(3013,plain,
$false,
inference(rw,[status(thm)],[3012,75,theory(equality)]) ).
cnf(3014,plain,
$false,
inference(cn,[status(thm)],[3013,theory(equality)]) ).
cnf(3015,plain,
$false,
3014,
[proof] ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % SZS status Started for /home/graph/tptp/TPTP/Problems/SWV/SWV233+1.p
% --creating new selector for []
% -running prover on /tmp/tmpN77VOv/sel_SWV233+1.p_1 with time limit 29
% -prover status Theorem
% Problem SWV233+1.p solved in phase 0.
% % SZS status Theorem for /home/graph/tptp/TPTP/Problems/SWV/SWV233+1.p
% % SZS status Ended for /home/graph/tptp/TPTP/Problems/SWV/SWV233+1.p
% Solved 1 out of 1.
% # Problem is unsatisfiable (or provable), constructing proof object
% # SZS status Theorem
% # SZS output start CNFRefutation.
% See solution above
% # SZS output end CNFRefutation
%
%------------------------------------------------------------------------------