%------------------------------------------------------------------------------
% File : CSE_E---1.7
% Problem : SWV017+1 : TPTP v9.2.1. Released v2.4.0.
% Transfm : none
% Format : tptp:raw
% Command : /export/starexec/sandbox2/solver/bin/lemma_parallel_prover %s --lemma-prover /export/starexec/sandbox2/solver/bin/cse --final-prover /export/starexec/sandbox2/solver/bin/eprover --proof-time %d --global-time-limit %d
% Computer : n014.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 : Tue May 5 05:20:37 PM UTC 2026
% Result : Satisfiable 1.30s 1.74s
% Output : Saturation 1.30s
% Verified :
% SZS Type : ERROR: Analysing output (MakeTreeStats fails)
% Comments :
%------------------------------------------------------------------------------
fof(server_t_generates_key,axiom,
! [X1,X2,X3,X4,X5,X6,X7] :
( ( message(sent(X1,t,triple(X1,X2,encrypt(triple(X3,X4,X5),X6))))
& t_holds(key(X6,X1))
& t_holds(key(X7,X3))
& a_nonce(X4) )
=> message(sent(t,X3,triple(encrypt(quadruple(X1,X4,generate_key(X4),X5),X7),encrypt(triple(X3,generate_key(X4),X5),X6),X2))) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',server_t_generates_key) ).
fof(b_creates_freash_nonces_in_time,axiom,
! [X1,X2] :
( ( message(sent(X1,b,pair(X1,X2)))
& fresh_to_b(X2) )
=> ( message(sent(b,t,triple(b,generate_b_nonce(X2),encrypt(triple(X1,X2,generate_expiration_time(X2)),bt))))
& b_stored(pair(X1,X2)) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',b_creates_freash_nonces_in_time) ).
fof(intruder_message_sent,axiom,
! [X1,X2,X3] :
( ( intruder_message(X1)
& party_of_protocol(X2)
& party_of_protocol(X3) )
=> message(sent(X2,X3,X1)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_message_sent) ).
fof(t_holds_key_at_for_a,axiom,
t_holds(key(at,a)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',t_holds_key_at_for_a) ).
fof(intruder_can_record,axiom,
! [X1,X2,X3] :
( message(sent(X1,X2,X3))
=> intruder_message(X3) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_can_record) ).
fof(a_sent_message_i_to_b,axiom,
message(sent(a,b,pair(a,an_a_nonce))),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',a_sent_message_i_to_b) ).
fof(nonce_a_is_fresh_to_b,axiom,
fresh_to_b(an_a_nonce),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',nonce_a_is_fresh_to_b) ).
fof(t_holds_key_bt_for_b,axiom,
t_holds(key(bt,b)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',t_holds_key_bt_for_b) ).
fof(b_is_party_of_protocol,axiom,
party_of_protocol(b),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',b_is_party_of_protocol) ).
fof(intruder_composes_pairs,axiom,
! [X1,X2] :
( ( intruder_message(X1)
& intruder_message(X2) )
=> intruder_message(pair(X1,X2)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_composes_pairs) ).
fof(a_forwards_secure,axiom,
! [X1,X2,X3,X4,X5,X6] :
( ( message(sent(t,a,triple(encrypt(quadruple(X5,X6,X3,X2),at),X4,X1)))
& a_stored(pair(X5,X6)) )
=> ( message(sent(a,X5,pair(X4,encrypt(X1,X3))))
& a_holds(key(X3,X5)) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',a_forwards_secure) ).
fof(intruder_decomposes_triples,axiom,
! [X1,X2,X3] :
( intruder_message(triple(X1,X2,X3))
=> ( intruder_message(X1)
& intruder_message(X2)
& intruder_message(X3) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_decomposes_triples) ).
fof(a_stored_message_i,axiom,
a_stored(pair(b,an_a_nonce)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',a_stored_message_i) ).
fof(an_a_nonce_is_a_nonce,axiom,
a_nonce(an_a_nonce),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',an_a_nonce_is_a_nonce) ).
fof(t_is_party_of_protocol,axiom,
party_of_protocol(t),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',t_is_party_of_protocol) ).
fof(intruder_composes_triples,axiom,
! [X1,X2,X3] :
( ( intruder_message(X1)
& intruder_message(X2)
& intruder_message(X3) )
=> intruder_message(triple(X1,X2,X3)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_composes_triples) ).
fof(b_accepts_secure_session_key,axiom,
! [X2,X4,X5] :
( ( message(sent(X4,b,pair(encrypt(triple(X4,X2,generate_expiration_time(X5)),bt),encrypt(generate_b_nonce(X5),X2))))
& a_key(X2)
& b_stored(pair(X4,X5)) )
=> b_holds(key(X2,X4)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',b_accepts_secure_session_key) ).
fof(a_is_party_of_protocol,axiom,
party_of_protocol(a),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',a_is_party_of_protocol) ).
fof(intruder_key_encrypts,axiom,
! [X1,X2,X3] :
( ( intruder_message(X1)
& intruder_holds(key(X2,X3))
& party_of_protocol(X3) )
=> intruder_message(encrypt(X1,X2)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_key_encrypts) ).
fof(intruder_holds_key,axiom,
! [X2,X3] :
( ( intruder_message(X2)
& party_of_protocol(X3) )
=> intruder_holds(key(X2,X3)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_holds_key) ).
fof(intruder_decomposes_pairs,axiom,
! [X1,X2] :
( intruder_message(pair(X1,X2))
=> ( intruder_message(X1)
& intruder_message(X2) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_decomposes_pairs) ).
fof(generated_keys_are_keys,axiom,
! [X1] : a_key(generate_key(X1)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',generated_keys_are_keys) ).
fof(fresh_intruder_nonces_are_fresh_to_b,axiom,
! [X1] :
( fresh_intruder_nonce(X1)
=> ( fresh_to_b(X1)
& intruder_message(X1) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',fresh_intruder_nonces_are_fresh_to_b) ).
fof(can_generate_more_fresh_intruder_nonces,axiom,
! [X1] :
( fresh_intruder_nonce(X1)
=> fresh_intruder_nonce(generate_intruder_nonce(X1)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',can_generate_more_fresh_intruder_nonces) ).
fof(generated_keys_are_not_nonces,axiom,
! [X1] : ~ a_nonce(generate_key(X1)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',generated_keys_are_not_nonces) ).
fof(intruder_composes_quadruples,axiom,
! [X1,X2,X3,X4] :
( ( intruder_message(X1)
& intruder_message(X2)
& intruder_message(X3)
& intruder_message(X4) )
=> intruder_message(quadruple(X1,X2,X3,X4)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_composes_quadruples) ).
fof(intruder_interception,axiom,
! [X1,X2,X3] :
( ( intruder_message(encrypt(X1,X2))
& intruder_holds(key(X2,X3))
& party_of_protocol(X3) )
=> intruder_message(X2) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_interception) ).
fof(intruder_decomposes_quadruples,axiom,
! [X1,X2,X3,X4] :
( intruder_message(quadruple(X1,X2,X3,X4))
=> ( intruder_message(X1)
& intruder_message(X2)
& intruder_message(X3)
& intruder_message(X4) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_decomposes_quadruples) ).
fof(nothing_is_a_nonce_and_a_key,axiom,
! [X1] :
~ ( a_key(X1)
& a_nonce(X1) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',nothing_is_a_nonce_and_a_key) ).
fof(generated_times_and_nonces_are_nonces,axiom,
! [X1] :
( a_nonce(generate_expiration_time(X1))
& a_nonce(generate_b_nonce(X1)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',generated_times_and_nonces_are_nonces) ).
fof(an_intruder_nonce_is_a_fresh_intruder_nonce,axiom,
fresh_intruder_nonce(an_intruder_nonce),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',an_intruder_nonce_is_a_fresh_intruder_nonce) ).
fof(b_hold_key_bt_for_t,axiom,
b_holds(key(bt,t)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',b_hold_key_bt_for_t) ).
fof(a_holds_key_at_for_t,axiom,
a_holds(key(at,t)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',a_holds_key_at_for_t) ).
fof(c_0_33,plain,
! [X75,X76,X77,X78,X79,X80,X81] :
( ~ message(sent(X75,t,triple(X75,X76,encrypt(triple(X77,X78,X79),X80))))
| ~ t_holds(key(X80,X75))
| ~ t_holds(key(X81,X77))
| ~ a_nonce(X78)
| message(sent(t,X77,triple(encrypt(quadruple(X75,X78,generate_key(X78),X79),X81),encrypt(triple(X77,generate_key(X78),X79),X80),X76))) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[server_t_generates_key])]) ).
fof(c_0_34,plain,
! [X70,X71] :
( ( message(sent(b,t,triple(b,generate_b_nonce(X71),encrypt(triple(X70,X71,generate_expiration_time(X71)),bt))))
| ~ message(sent(X70,b,pair(X70,X71)))
| ~ fresh_to_b(X71) )
& ( b_stored(pair(X70,X71))
| ~ message(sent(X70,b,pair(X70,X71)))
| ~ fresh_to_b(X71) ) ),
inference(distribute,[status(thm)],[inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[b_creates_freash_nonces_in_time])])]) ).
fof(c_0_35,plain,
! [X106,X107,X108] :
( ~ intruder_message(X106)
| ~ party_of_protocol(X107)
| ~ party_of_protocol(X108)
| message(sent(X107,X108,X106)) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_message_sent])]) ).
cnf(c_0_36,plain,
( message(sent(t,X3,triple(encrypt(quadruple(X1,X4,generate_key(X4),X5),X7),encrypt(triple(X3,generate_key(X4),X5),X6),X2)))
| ~ message(sent(X1,t,triple(X1,X2,encrypt(triple(X3,X4,X5),X6))))
| ~ t_holds(key(X6,X1))
| ~ t_holds(key(X7,X3))
| ~ a_nonce(X4) ),
inference(split_conjunct,[status(thm)],[c_0_33]),
[final] ).
cnf(c_0_37,plain,
t_holds(key(at,a)),
inference(split_conjunct,[status(thm)],[t_holds_key_at_for_a]),
[final] ).
fof(c_0_38,plain,
! [X82,X83,X84] :
( ~ message(sent(X82,X83,X84))
| intruder_message(X84) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_can_record])]) ).
cnf(c_0_39,plain,
( message(sent(b,t,triple(b,generate_b_nonce(X1),encrypt(triple(X2,X1,generate_expiration_time(X1)),bt))))
| ~ message(sent(X2,b,pair(X2,X1)))
| ~ fresh_to_b(X1) ),
inference(split_conjunct,[status(thm)],[c_0_34]),
[final] ).
cnf(c_0_40,plain,
message(sent(a,b,pair(a,an_a_nonce))),
inference(split_conjunct,[status(thm)],[a_sent_message_i_to_b]),
[final] ).
cnf(c_0_41,plain,
fresh_to_b(an_a_nonce),
inference(split_conjunct,[status(thm)],[nonce_a_is_fresh_to_b]),
[final] ).
cnf(c_0_42,plain,
t_holds(key(bt,b)),
inference(split_conjunct,[status(thm)],[t_holds_key_bt_for_b]),
[final] ).
cnf(c_0_43,plain,
( message(sent(X2,X3,X1))
| ~ intruder_message(X1)
| ~ party_of_protocol(X2)
| ~ party_of_protocol(X3) ),
inference(split_conjunct,[status(thm)],[c_0_35]),
[final] ).
cnf(c_0_44,plain,
party_of_protocol(b),
inference(split_conjunct,[status(thm)],[b_is_party_of_protocol]),
[final] ).
fof(c_0_45,plain,
! [X94,X95] :
( ~ intruder_message(X94)
| ~ intruder_message(X95)
| intruder_message(pair(X94,X95)) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_composes_pairs])]) ).
fof(c_0_46,plain,
! [X64,X65,X66,X67,X68,X69] :
( ( message(sent(a,X68,pair(X67,encrypt(X64,X66))))
| ~ message(sent(t,a,triple(encrypt(quadruple(X68,X69,X66,X65),at),X67,X64)))
| ~ a_stored(pair(X68,X69)) )
& ( a_holds(key(X66,X68))
| ~ message(sent(t,a,triple(encrypt(quadruple(X68,X69,X66,X65),at),X67,X64)))
| ~ a_stored(pair(X68,X69)) ) ),
inference(distribute,[status(thm)],[inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[a_forwards_secure])])]) ).
cnf(c_0_47,plain,
( message(sent(t,a,triple(encrypt(quadruple(X1,X2,generate_key(X2),X3),at),encrypt(triple(a,generate_key(X2),X3),X4),X5)))
| ~ a_nonce(X2)
| ~ t_holds(key(X4,X1))
| ~ message(sent(X1,t,triple(X1,X5,encrypt(triple(a,X2,X3),X4)))) ),
inference(spm,[status(thm)],[c_0_36,c_0_37]),
[final] ).
fof(c_0_48,plain,
! [X87,X88,X89] :
( ( intruder_message(X87)
| ~ intruder_message(triple(X87,X88,X89)) )
& ( intruder_message(X88)
| ~ intruder_message(triple(X87,X88,X89)) )
& ( intruder_message(X89)
| ~ intruder_message(triple(X87,X88,X89)) ) ),
inference(distribute,[status(thm)],[inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_decomposes_triples])])]) ).
cnf(c_0_49,plain,
( intruder_message(X3)
| ~ message(sent(X1,X2,X3)) ),
inference(split_conjunct,[status(thm)],[c_0_38]),
[final] ).
cnf(c_0_50,plain,
message(sent(b,t,triple(b,generate_b_nonce(an_a_nonce),encrypt(triple(a,an_a_nonce,generate_expiration_time(an_a_nonce)),bt)))),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_39,c_0_40]),c_0_41])]),
[final] ).
cnf(c_0_51,plain,
( b_stored(pair(X1,X2))
| ~ message(sent(X1,b,pair(X1,X2)))
| ~ fresh_to_b(X2) ),
inference(split_conjunct,[status(thm)],[c_0_34]),
[final] ).
cnf(c_0_52,plain,
( message(sent(t,b,triple(encrypt(quadruple(X1,X2,generate_key(X2),X3),bt),encrypt(triple(b,generate_key(X2),X3),X4),X5)))
| ~ a_nonce(X2)
| ~ t_holds(key(X4,X1))
| ~ message(sent(X1,t,triple(X1,X5,encrypt(triple(b,X2,X3),X4)))) ),
inference(spm,[status(thm)],[c_0_36,c_0_42]),
[final] ).
cnf(c_0_53,plain,
( message(sent(b,t,triple(b,generate_b_nonce(X1),encrypt(triple(X2,X1,generate_expiration_time(X1)),bt))))
| ~ intruder_message(pair(X2,X1))
| ~ fresh_to_b(X1)
| ~ party_of_protocol(X2) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_39,c_0_43]),c_0_44])]),
[final] ).
cnf(c_0_54,plain,
( intruder_message(pair(X1,X2))
| ~ intruder_message(X1)
| ~ intruder_message(X2) ),
inference(split_conjunct,[status(thm)],[c_0_45]),
[final] ).
cnf(c_0_55,plain,
( message(sent(a,X1,pair(X2,encrypt(X3,X4))))
| ~ message(sent(t,a,triple(encrypt(quadruple(X1,X5,X4,X6),at),X2,X3)))
| ~ a_stored(pair(X1,X5)) ),
inference(split_conjunct,[status(thm)],[c_0_46]),
[final] ).
cnf(c_0_56,plain,
a_stored(pair(b,an_a_nonce)),
inference(split_conjunct,[status(thm)],[a_stored_message_i]),
[final] ).
cnf(c_0_57,plain,
( message(sent(t,a,triple(encrypt(quadruple(b,X1,generate_key(X1),X2),at),encrypt(triple(a,generate_key(X1),X2),bt),X3)))
| ~ a_nonce(X1)
| ~ message(sent(b,t,triple(b,X3,encrypt(triple(a,X1,X2),bt)))) ),
inference(spm,[status(thm)],[c_0_47,c_0_42]),
[final] ).
cnf(c_0_58,plain,
a_nonce(an_a_nonce),
inference(split_conjunct,[status(thm)],[an_a_nonce_is_a_nonce]),
[final] ).
cnf(c_0_59,plain,
party_of_protocol(t),
inference(split_conjunct,[status(thm)],[t_is_party_of_protocol]),
[final] ).
fof(c_0_60,plain,
! [X96,X97,X98] :
( ~ intruder_message(X96)
| ~ intruder_message(X97)
| ~ intruder_message(X98)
| intruder_message(triple(X96,X97,X98)) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_composes_triples])]) ).
cnf(c_0_61,plain,
( intruder_message(X1)
| ~ intruder_message(triple(X1,X2,X3)) ),
inference(split_conjunct,[status(thm)],[c_0_48]),
[final] ).
cnf(c_0_62,plain,
intruder_message(triple(b,generate_b_nonce(an_a_nonce),encrypt(triple(a,an_a_nonce,generate_expiration_time(an_a_nonce)),bt))),
inference(spm,[status(thm)],[c_0_49,c_0_50]),
[final] ).
fof(c_0_63,plain,
! [X72,X73,X74] :
( ~ message(sent(X73,b,pair(encrypt(triple(X73,X72,generate_expiration_time(X74)),bt),encrypt(generate_b_nonce(X74),X72))))
| ~ a_key(X72)
| ~ b_stored(pair(X73,X74))
| b_holds(key(X72,X73)) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[b_accepts_secure_session_key])]) ).
cnf(c_0_64,plain,
( b_stored(pair(X1,X2))
| ~ intruder_message(pair(X1,X2))
| ~ fresh_to_b(X2)
| ~ party_of_protocol(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_51,c_0_43]),c_0_44])]),
[final] ).
cnf(c_0_65,plain,
( message(sent(t,b,triple(encrypt(quadruple(b,X1,generate_key(X1),X2),bt),encrypt(triple(b,generate_key(X1),X2),bt),X3)))
| ~ a_nonce(X1)
| ~ message(sent(b,t,triple(b,X3,encrypt(triple(b,X1,X2),bt)))) ),
inference(spm,[status(thm)],[c_0_52,c_0_42]),
[final] ).
cnf(c_0_66,plain,
( message(sent(b,t,triple(b,generate_b_nonce(X1),encrypt(triple(X2,X1,generate_expiration_time(X1)),bt))))
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| ~ fresh_to_b(X1)
| ~ party_of_protocol(X2) ),
inference(spm,[status(thm)],[c_0_53,c_0_54]),
[final] ).
cnf(c_0_67,plain,
( message(sent(a,b,pair(X1,encrypt(X2,X3))))
| ~ message(sent(t,a,triple(encrypt(quadruple(b,an_a_nonce,X3,X4),at),X1,X2))) ),
inference(spm,[status(thm)],[c_0_55,c_0_56]),
[final] ).
cnf(c_0_68,plain,
party_of_protocol(a),
inference(split_conjunct,[status(thm)],[a_is_party_of_protocol]),
[final] ).
cnf(c_0_69,plain,
message(sent(t,a,triple(encrypt(quadruple(b,an_a_nonce,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),at),encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),generate_b_nonce(an_a_nonce)))),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_57,c_0_50]),c_0_58])]),
[final] ).
cnf(c_0_70,plain,
( message(sent(t,a,triple(encrypt(quadruple(b,X1,generate_key(X1),X2),at),encrypt(triple(a,generate_key(X1),X2),bt),X3)))
| ~ intruder_message(triple(b,X3,encrypt(triple(a,X1,X2),bt)))
| ~ a_nonce(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_57,c_0_43]),c_0_59]),c_0_44])]),
[final] ).
cnf(c_0_71,plain,
( intruder_message(triple(X1,X2,X3))
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| ~ intruder_message(X3) ),
inference(split_conjunct,[status(thm)],[c_0_60]),
[final] ).
cnf(c_0_72,plain,
intruder_message(b),
inference(spm,[status(thm)],[c_0_61,c_0_62]),
[final] ).
cnf(c_0_73,plain,
( intruder_message(X1)
| ~ intruder_message(triple(X2,X3,X1)) ),
inference(split_conjunct,[status(thm)],[c_0_48]),
[final] ).
cnf(c_0_74,plain,
( b_holds(key(X2,X1))
| ~ message(sent(X1,b,pair(encrypt(triple(X1,X2,generate_expiration_time(X3)),bt),encrypt(generate_b_nonce(X3),X2))))
| ~ a_key(X2)
| ~ b_stored(pair(X1,X3)) ),
inference(split_conjunct,[status(thm)],[c_0_63]),
[final] ).
cnf(c_0_75,plain,
( b_stored(pair(X1,X2))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ fresh_to_b(X2)
| ~ party_of_protocol(X1) ),
inference(spm,[status(thm)],[c_0_64,c_0_54]),
[final] ).
fof(c_0_76,plain,
! [X111,X112,X113] :
( ~ intruder_message(X111)
| ~ intruder_holds(key(X112,X113))
| ~ party_of_protocol(X113)
| intruder_message(encrypt(X111,X112)) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_key_encrypts])]) ).
fof(c_0_77,plain,
! [X109,X110] :
( ~ intruder_message(X109)
| ~ party_of_protocol(X110)
| intruder_holds(key(X109,X110)) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_holds_key])]) ).
fof(c_0_78,plain,
! [X85,X86] :
( ( intruder_message(X85)
| ~ intruder_message(pair(X85,X86)) )
& ( intruder_message(X86)
| ~ intruder_message(pair(X85,X86)) ) ),
inference(distribute,[status(thm)],[inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_decomposes_pairs])])]) ).
cnf(c_0_79,plain,
( message(sent(t,b,triple(encrypt(quadruple(b,X1,generate_key(X1),X2),bt),encrypt(triple(b,generate_key(X1),X2),bt),X3)))
| ~ intruder_message(triple(b,X3,encrypt(triple(b,X1,X2),bt)))
| ~ a_nonce(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_65,c_0_43]),c_0_59]),c_0_44])]),
[final] ).
cnf(c_0_80,plain,
( intruder_message(triple(b,generate_b_nonce(X1),encrypt(triple(X2,X1,generate_expiration_time(X1)),bt)))
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| ~ fresh_to_b(X1)
| ~ party_of_protocol(X2) ),
inference(spm,[status(thm)],[c_0_49,c_0_66]),
[final] ).
cnf(c_0_81,plain,
( message(sent(a,b,pair(X1,encrypt(X2,X3))))
| ~ intruder_message(triple(encrypt(quadruple(b,an_a_nonce,X3,X4),at),X1,X2)) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_67,c_0_43]),c_0_68]),c_0_59])]),
[final] ).
cnf(c_0_82,plain,
intruder_message(triple(encrypt(quadruple(b,an_a_nonce,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),at),encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),generate_b_nonce(an_a_nonce))),
inference(spm,[status(thm)],[c_0_49,c_0_69]),
[final] ).
cnf(c_0_83,plain,
b_stored(pair(a,an_a_nonce)),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_51,c_0_40]),c_0_41])]),
[final] ).
cnf(c_0_84,plain,
( message(sent(t,a,triple(encrypt(quadruple(b,X1,generate_key(X1),X2),at),encrypt(triple(a,generate_key(X1),X2),bt),X3)))
| ~ intruder_message(encrypt(triple(a,X1,X2),bt))
| ~ intruder_message(X3)
| ~ a_nonce(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_70,c_0_71]),c_0_72])]),
[final] ).
cnf(c_0_85,plain,
intruder_message(encrypt(triple(a,an_a_nonce,generate_expiration_time(an_a_nonce)),bt)),
inference(spm,[status(thm)],[c_0_73,c_0_62]),
[final] ).
cnf(c_0_86,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(X3)
| ~ intruder_message(X2)
| ~ a_key(X1)
| ~ fresh_to_b(X3)
| ~ message(sent(X2,b,pair(encrypt(triple(X2,X1,generate_expiration_time(X3)),bt),encrypt(generate_b_nonce(X3),X1))))
| ~ party_of_protocol(X2) ),
inference(spm,[status(thm)],[c_0_74,c_0_75]),
[final] ).
cnf(c_0_87,plain,
( intruder_message(encrypt(X1,X2))
| ~ intruder_message(X1)
| ~ intruder_holds(key(X2,X3))
| ~ party_of_protocol(X3) ),
inference(split_conjunct,[status(thm)],[c_0_76]),
[final] ).
cnf(c_0_88,plain,
( intruder_holds(key(X1,X2))
| ~ intruder_message(X1)
| ~ party_of_protocol(X2) ),
inference(split_conjunct,[status(thm)],[c_0_77]),
[final] ).
cnf(c_0_89,plain,
( intruder_message(X1)
| ~ intruder_message(pair(X1,X2)) ),
inference(split_conjunct,[status(thm)],[c_0_78]),
[final] ).
cnf(c_0_90,plain,
intruder_message(pair(a,an_a_nonce)),
inference(spm,[status(thm)],[c_0_49,c_0_40]),
[final] ).
cnf(c_0_91,plain,
( message(sent(t,b,triple(encrypt(quadruple(b,X1,generate_key(X1),X2),bt),encrypt(triple(b,generate_key(X1),X2),bt),X3)))
| ~ intruder_message(encrypt(triple(b,X1,X2),bt))
| ~ intruder_message(X3)
| ~ a_nonce(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_79,c_0_71]),c_0_72])]),
[final] ).
cnf(c_0_92,plain,
( intruder_message(encrypt(triple(X1,X2,generate_expiration_time(X2)),bt))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ fresh_to_b(X2)
| ~ party_of_protocol(X1) ),
inference(spm,[status(thm)],[c_0_73,c_0_80]),
[final] ).
cnf(c_0_93,plain,
( message(sent(a,b,pair(X1,encrypt(X2,X3))))
| ~ intruder_message(encrypt(quadruple(b,an_a_nonce,X3,X4),at))
| ~ intruder_message(X2)
| ~ intruder_message(X1) ),
inference(spm,[status(thm)],[c_0_81,c_0_71]),
[final] ).
cnf(c_0_94,plain,
intruder_message(encrypt(quadruple(b,an_a_nonce,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),at)),
inference(spm,[status(thm)],[c_0_61,c_0_82]),
[final] ).
cnf(c_0_95,plain,
( b_holds(key(X1,a))
| ~ a_key(X1)
| ~ message(sent(a,b,pair(encrypt(triple(a,X1,generate_expiration_time(an_a_nonce)),bt),encrypt(generate_b_nonce(an_a_nonce),X1)))) ),
inference(spm,[status(thm)],[c_0_74,c_0_83]),
[final] ).
cnf(c_0_96,plain,
message(sent(a,b,pair(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce))))),
inference(spm,[status(thm)],[c_0_67,c_0_69]),
[final] ).
cnf(c_0_97,plain,
( message(sent(t,a,triple(encrypt(quadruple(b,an_a_nonce,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),at),encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),X1)))
| ~ intruder_message(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_84,c_0_85]),c_0_58])]),
[final] ).
cnf(c_0_98,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(pair(encrypt(triple(X2,X1,generate_expiration_time(X3)),bt),encrypt(generate_b_nonce(X3),X1)))
| ~ intruder_message(X3)
| ~ intruder_message(X2)
| ~ a_key(X1)
| ~ fresh_to_b(X3)
| ~ party_of_protocol(X2) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_86,c_0_43]),c_0_44])]),
[final] ).
cnf(c_0_99,plain,
( intruder_message(encrypt(X1,X2))
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| ~ party_of_protocol(X3) ),
inference(spm,[status(thm)],[c_0_87,c_0_88]) ).
cnf(c_0_100,plain,
( message(sent(t,b,triple(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),bt),encrypt(triple(b,generate_key(X1),generate_expiration_time(X1)),bt),generate_b_nonce(X1))))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_65,c_0_66]),c_0_72]),c_0_44])]),
[final] ).
cnf(c_0_101,plain,
intruder_message(a),
inference(spm,[status(thm)],[c_0_89,c_0_90]),
[final] ).
cnf(c_0_102,plain,
( message(sent(t,b,triple(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),bt),encrypt(triple(b,generate_key(X1),generate_expiration_time(X1)),bt),X2)))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_91,c_0_92]),c_0_72]),c_0_44])]),
[final] ).
cnf(c_0_103,plain,
( message(sent(a,b,pair(X1,encrypt(X2,generate_key(an_a_nonce)))))
| ~ intruder_message(X2)
| ~ intruder_message(X1) ),
inference(spm,[status(thm)],[c_0_93,c_0_94]),
[final] ).
fof(c_0_104,plain,
! [X117] : a_key(generate_key(X117)),
inference(variable_rename,[status(thm)],[generated_keys_are_keys]) ).
cnf(c_0_105,plain,
( intruder_message(X1)
| ~ intruder_message(triple(X2,X1,X3)) ),
inference(split_conjunct,[status(thm)],[c_0_48]),
[final] ).
cnf(c_0_106,plain,
( b_holds(key(X1,a))
| ~ intruder_message(pair(encrypt(triple(a,X1,generate_expiration_time(an_a_nonce)),bt),encrypt(generate_b_nonce(an_a_nonce),X1)))
| ~ a_key(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_95,c_0_43]),c_0_44]),c_0_68])]),
[final] ).
cnf(c_0_107,plain,
( a_holds(key(X1,X2))
| ~ message(sent(t,a,triple(encrypt(quadruple(X2,X3,X1,X4),at),X5,X6)))
| ~ a_stored(pair(X2,X3)) ),
inference(split_conjunct,[status(thm)],[c_0_46]),
[final] ).
cnf(c_0_108,plain,
( intruder_message(X1)
| ~ intruder_message(pair(X2,X1)) ),
inference(split_conjunct,[status(thm)],[c_0_78]),
[final] ).
cnf(c_0_109,plain,
intruder_message(pair(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce)))),
inference(spm,[status(thm)],[c_0_49,c_0_96]),
[final] ).
cnf(c_0_110,plain,
( message(sent(a,b,pair(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(X1,generate_key(an_a_nonce)))))
| ~ intruder_message(X1) ),
inference(spm,[status(thm)],[c_0_67,c_0_97]),
[final] ).
cnf(c_0_111,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(encrypt(triple(X2,X1,generate_expiration_time(X3)),bt))
| ~ intruder_message(encrypt(generate_b_nonce(X3),X1))
| ~ intruder_message(X3)
| ~ intruder_message(X2)
| ~ a_key(X1)
| ~ fresh_to_b(X3)
| ~ party_of_protocol(X2) ),
inference(spm,[status(thm)],[c_0_98,c_0_54]),
[final] ).
cnf(c_0_112,plain,
( intruder_message(encrypt(X1,X2))
| ~ intruder_message(X1)
| ~ intruder_message(X2) ),
inference(spm,[status(thm)],[c_0_99,c_0_44]),
[final] ).
cnf(c_0_113,plain,
( intruder_message(triple(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),bt),encrypt(triple(b,generate_key(X1),generate_expiration_time(X1)),bt),generate_b_nonce(X1)))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_49,c_0_100]),
[final] ).
cnf(c_0_114,plain,
( message(sent(t,a,triple(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),at),encrypt(triple(a,generate_key(X1),generate_expiration_time(X1)),bt),generate_b_nonce(X1))))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_57,c_0_66]),c_0_101]),c_0_68])]),
[final] ).
cnf(c_0_115,plain,
( intruder_message(triple(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),bt),encrypt(triple(b,generate_key(X1),generate_expiration_time(X1)),bt),X2))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_49,c_0_102]),
[final] ).
cnf(c_0_116,plain,
( intruder_message(pair(X1,encrypt(X2,generate_key(an_a_nonce))))
| ~ intruder_message(X2)
| ~ intruder_message(X1) ),
inference(spm,[status(thm)],[c_0_49,c_0_103]),
[final] ).
cnf(c_0_117,plain,
a_key(generate_key(X1)),
inference(split_conjunct,[status(thm)],[c_0_104]),
[final] ).
cnf(c_0_118,plain,
( intruder_message(generate_b_nonce(X1))
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| ~ fresh_to_b(X1)
| ~ party_of_protocol(X2) ),
inference(spm,[status(thm)],[c_0_105,c_0_80]),
[final] ).
cnf(c_0_119,plain,
( message(sent(t,a,triple(encrypt(quadruple(a,X1,generate_key(X1),X2),at),encrypt(triple(a,generate_key(X1),X2),at),X3)))
| ~ a_nonce(X1)
| ~ message(sent(a,t,triple(a,X3,encrypt(triple(a,X1,X2),at)))) ),
inference(spm,[status(thm)],[c_0_47,c_0_37]),
[final] ).
cnf(c_0_120,plain,
( message(sent(t,b,triple(encrypt(quadruple(a,X1,generate_key(X1),X2),bt),encrypt(triple(b,generate_key(X1),X2),at),X3)))
| ~ a_nonce(X1)
| ~ message(sent(a,t,triple(a,X3,encrypt(triple(b,X1,X2),at)))) ),
inference(spm,[status(thm)],[c_0_52,c_0_37]),
[final] ).
cnf(c_0_121,plain,
( b_holds(key(X1,a))
| ~ intruder_message(encrypt(triple(a,X1,generate_expiration_time(an_a_nonce)),bt))
| ~ intruder_message(encrypt(generate_b_nonce(an_a_nonce),X1))
| ~ a_key(X1) ),
inference(spm,[status(thm)],[c_0_106,c_0_54]),
[final] ).
cnf(c_0_122,plain,
( a_holds(key(X1,b))
| ~ message(sent(t,a,triple(encrypt(quadruple(b,an_a_nonce,X1,X2),at),X3,X4))) ),
inference(spm,[status(thm)],[c_0_107,c_0_56]),
[final] ).
cnf(c_0_123,plain,
intruder_message(encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce))),
inference(spm,[status(thm)],[c_0_108,c_0_109]),
[final] ).
cnf(c_0_124,plain,
intruder_message(an_a_nonce),
inference(spm,[status(thm)],[c_0_108,c_0_90]),
[final] ).
fof(c_0_125,plain,
! [X119] :
( ( fresh_to_b(X119)
| ~ fresh_intruder_nonce(X119) )
& ( intruder_message(X119)
| ~ fresh_intruder_nonce(X119) ) ),
inference(distribute,[status(thm)],[inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[fresh_intruder_nonces_are_fresh_to_b])])]) ).
cnf(c_0_126,plain,
( intruder_message(pair(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(X1,generate_key(an_a_nonce))))
| ~ intruder_message(X1) ),
inference(spm,[status(thm)],[c_0_49,c_0_110]),
[final] ).
cnf(c_0_127,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(encrypt(triple(X2,X1,generate_expiration_time(X3)),bt))
| ~ intruder_message(generate_b_nonce(X3))
| ~ intruder_message(X3)
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ a_key(X1)
| ~ fresh_to_b(X3)
| ~ party_of_protocol(X2) ),
inference(spm,[status(thm)],[c_0_111,c_0_112]),
[final] ).
cnf(c_0_128,plain,
( intruder_message(generate_b_nonce(X1))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_73,c_0_113]),
[final] ).
cnf(c_0_129,plain,
( intruder_message(triple(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),at),encrypt(triple(a,generate_key(X1),generate_expiration_time(X1)),bt),generate_b_nonce(X1)))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_49,c_0_114]),
[final] ).
cnf(c_0_130,plain,
( intruder_message(encrypt(triple(b,generate_key(X1),generate_expiration_time(X1)),bt))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_105,c_0_115]) ).
cnf(c_0_131,plain,
( b_holds(key(generate_key(an_a_nonce),X1))
| ~ intruder_message(encrypt(triple(X1,generate_key(an_a_nonce),generate_expiration_time(X2)),bt))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ fresh_to_b(X2)
| ~ party_of_protocol(X1) ),
inference(csr,[status(thm)],[inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_98,c_0_116]),c_0_117])]),c_0_118]),
[final] ).
cnf(c_0_132,plain,
( message(sent(t,a,triple(encrypt(quadruple(a,X1,generate_key(X1),X2),at),encrypt(triple(a,generate_key(X1),X2),at),X3)))
| ~ intruder_message(triple(a,X3,encrypt(triple(a,X1,X2),at)))
| ~ a_nonce(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_119,c_0_43]),c_0_59]),c_0_68])]),
[final] ).
cnf(c_0_133,plain,
( message(sent(t,b,triple(encrypt(quadruple(a,X1,generate_key(X1),X2),bt),encrypt(triple(b,generate_key(X1),X2),at),X3)))
| ~ intruder_message(triple(a,X3,encrypt(triple(b,X1,X2),at)))
| ~ a_nonce(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_120,c_0_43]),c_0_59]),c_0_68])]),
[final] ).
cnf(c_0_134,plain,
intruder_message(generate_b_nonce(an_a_nonce)),
inference(spm,[status(thm)],[c_0_105,c_0_62]),
[final] ).
cnf(c_0_135,plain,
( b_holds(key(X1,a))
| ~ intruder_message(encrypt(triple(a,X1,generate_expiration_time(an_a_nonce)),bt))
| ~ intruder_message(generate_b_nonce(an_a_nonce))
| ~ intruder_message(X1)
| ~ a_key(X1) ),
inference(spm,[status(thm)],[c_0_121,c_0_112]) ).
cnf(c_0_136,plain,
( a_holds(key(X1,b))
| ~ intruder_message(triple(encrypt(quadruple(b,an_a_nonce,X1,X2),at),X3,X4)) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_122,c_0_43]),c_0_68]),c_0_59])]),
[final] ).
fof(c_0_137,plain,
! [X118] :
( ~ fresh_intruder_nonce(X118)
| fresh_intruder_nonce(generate_intruder_nonce(X118)) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[can_generate_more_fresh_intruder_nonces])]) ).
fof(c_0_138,plain,
! [X1] : ~ a_nonce(generate_key(X1)),
inference(fof_simplification,[status(thm)],[generated_keys_are_not_nonces]) ).
cnf(c_0_139,plain,
( b_holds(key(generate_key(an_a_nonce),X1))
| ~ intruder_message(encrypt(triple(X1,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt))
| ~ intruder_message(X1)
| ~ party_of_protocol(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_111,c_0_123]),c_0_124]),c_0_117]),c_0_41])]),
[final] ).
cnf(c_0_140,plain,
( message(sent(b,t,triple(b,generate_b_nonce(encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce))),encrypt(triple(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce)),generate_expiration_time(encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce)))),bt))))
| ~ fresh_to_b(encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce)))
| ~ party_of_protocol(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt)) ),
inference(spm,[status(thm)],[c_0_53,c_0_109]),
[final] ).
cnf(c_0_141,plain,
( fresh_to_b(X1)
| ~ fresh_intruder_nonce(X1) ),
inference(split_conjunct,[status(thm)],[c_0_125]),
[final] ).
cnf(c_0_142,plain,
( message(sent(b,t,triple(b,generate_b_nonce(encrypt(X1,generate_key(an_a_nonce))),encrypt(triple(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(X1,generate_key(an_a_nonce)),generate_expiration_time(encrypt(X1,generate_key(an_a_nonce)))),bt))))
| ~ intruder_message(X1)
| ~ fresh_to_b(encrypt(X1,generate_key(an_a_nonce)))
| ~ party_of_protocol(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt)) ),
inference(spm,[status(thm)],[c_0_53,c_0_126]),
[final] ).
cnf(c_0_143,plain,
( message(sent(t,a,triple(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),at),encrypt(triple(a,generate_key(X1),generate_expiration_time(X1)),bt),X2)))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_84,c_0_92]),c_0_101]),c_0_68])]),
[final] ).
cnf(c_0_144,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(encrypt(triple(X2,X1,generate_expiration_time(X3)),bt))
| ~ intruder_message(X3)
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ a_nonce(X3)
| ~ a_key(X1)
| ~ fresh_to_b(X3)
| ~ party_of_protocol(X2) ),
inference(spm,[status(thm)],[c_0_127,c_0_128]),
[final] ).
cnf(c_0_145,plain,
( intruder_message(encrypt(triple(a,generate_key(X1),generate_expiration_time(X1)),bt))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_105,c_0_129]),
[final] ).
cnf(c_0_146,plain,
( intruder_message(encrypt(triple(b,generate_key(X1),generate_expiration_time(X1)),bt))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_130,c_0_82]),
[final] ).
cnf(c_0_147,plain,
( intruder_message(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),bt))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_61,c_0_115]) ).
cnf(c_0_148,plain,
( b_stored(pair(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(X1,generate_key(an_a_nonce))))
| ~ intruder_message(X1)
| ~ fresh_to_b(encrypt(X1,generate_key(an_a_nonce)))
| ~ party_of_protocol(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt)) ),
inference(spm,[status(thm)],[c_0_64,c_0_126]),
[final] ).
cnf(c_0_149,plain,
( message(sent(b,t,triple(b,generate_b_nonce(encrypt(X1,generate_key(an_a_nonce))),encrypt(triple(X2,encrypt(X1,generate_key(an_a_nonce)),generate_expiration_time(encrypt(X1,generate_key(an_a_nonce)))),bt))))
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| ~ fresh_to_b(encrypt(X1,generate_key(an_a_nonce)))
| ~ party_of_protocol(X2) ),
inference(spm,[status(thm)],[c_0_53,c_0_116]),
[final] ).
cnf(c_0_150,plain,
( message(sent(b,t,triple(b,generate_b_nonce(encrypt(X1,generate_key(an_a_nonce))),encrypt(triple(a,encrypt(X1,generate_key(an_a_nonce)),generate_expiration_time(encrypt(X1,generate_key(an_a_nonce)))),bt))))
| ~ intruder_message(X1)
| ~ fresh_to_b(encrypt(X1,generate_key(an_a_nonce))) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_39,c_0_103]),c_0_101])]),
[final] ).
cnf(c_0_151,plain,
( b_stored(pair(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce))))
| ~ fresh_to_b(encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce)))
| ~ party_of_protocol(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt)) ),
inference(spm,[status(thm)],[c_0_64,c_0_109]),
[final] ).
cnf(c_0_152,plain,
( b_holds(key(generate_key(an_a_nonce),X1))
| ~ intruder_message(generate_key(an_a_nonce))
| ~ intruder_message(X1)
| ~ fresh_to_b(generate_key(an_a_nonce))
| ~ party_of_protocol(X1) ),
inference(spm,[status(thm)],[c_0_131,c_0_92]),
[final] ).
cnf(c_0_153,plain,
( intruder_message(X1)
| ~ fresh_intruder_nonce(X1) ),
inference(split_conjunct,[status(thm)],[c_0_125]),
[final] ).
cnf(c_0_154,plain,
( b_stored(pair(X1,encrypt(X2,generate_key(an_a_nonce))))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ fresh_to_b(encrypt(X2,generate_key(an_a_nonce)))
| ~ party_of_protocol(X1) ),
inference(spm,[status(thm)],[c_0_64,c_0_116]),
[final] ).
cnf(c_0_155,plain,
( b_stored(pair(a,encrypt(X1,generate_key(an_a_nonce))))
| ~ intruder_message(X1)
| ~ fresh_to_b(encrypt(X1,generate_key(an_a_nonce))) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_51,c_0_103]),c_0_101])]),
[final] ).
cnf(c_0_156,plain,
( intruder_message(encrypt(X1,generate_key(an_a_nonce)))
| ~ intruder_message(X1)
| ~ intruder_message(X2) ),
inference(spm,[status(thm)],[c_0_108,c_0_116]) ).
cnf(c_0_157,plain,
( message(sent(t,a,triple(encrypt(quadruple(a,X1,generate_key(X1),X2),at),encrypt(triple(a,generate_key(X1),X2),at),X3)))
| ~ intruder_message(encrypt(triple(a,X1,X2),at))
| ~ intruder_message(X3)
| ~ a_nonce(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_132,c_0_71]),c_0_101])]),
[final] ).
cnf(c_0_158,plain,
( message(sent(t,b,triple(encrypt(quadruple(a,X1,generate_key(X1),X2),bt),encrypt(triple(b,generate_key(X1),X2),at),X3)))
| ~ intruder_message(encrypt(triple(b,X1,X2),at))
| ~ intruder_message(X3)
| ~ a_nonce(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_133,c_0_71]),c_0_101])]),
[final] ).
cnf(c_0_159,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(encrypt(triple(X2,X1,generate_expiration_time(X3)),bt))
| ~ intruder_message(X3)
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ intruder_message(X4)
| ~ a_key(X1)
| ~ fresh_to_b(X3)
| ~ party_of_protocol(X2)
| ~ party_of_protocol(X4) ),
inference(spm,[status(thm)],[c_0_127,c_0_118]),
[final] ).
cnf(c_0_160,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(encrypt(triple(X2,X1,generate_expiration_time(an_a_nonce)),bt))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ a_key(X1)
| ~ party_of_protocol(X2) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_127,c_0_134]),c_0_124]),c_0_41])]),
[final] ).
cnf(c_0_161,plain,
( b_holds(key(X1,a))
| ~ intruder_message(encrypt(triple(a,X1,generate_expiration_time(an_a_nonce)),bt))
| ~ intruder_message(X1)
| ~ a_key(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_135,c_0_134])]),
[final] ).
cnf(c_0_162,plain,
( a_holds(key(X1,b))
| ~ intruder_message(encrypt(quadruple(b,an_a_nonce,X1,X2),at))
| ~ intruder_message(X3)
| ~ intruder_message(X4) ),
inference(spm,[status(thm)],[c_0_136,c_0_71]),
[final] ).
fof(c_0_163,plain,
! [X99,X100,X101,X102] :
( ~ intruder_message(X99)
| ~ intruder_message(X100)
| ~ intruder_message(X101)
| ~ intruder_message(X102)
| intruder_message(quadruple(X99,X100,X101,X102)) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_composes_quadruples])]) ).
fof(c_0_164,plain,
! [X103,X104,X105] :
( ~ intruder_message(encrypt(X103,X104))
| ~ intruder_holds(key(X104,X105))
| ~ party_of_protocol(X105)
| intruder_message(X104) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_interception])]) ).
fof(c_0_165,plain,
! [X90,X91,X92,X93] :
( ( intruder_message(X90)
| ~ intruder_message(quadruple(X90,X91,X92,X93)) )
& ( intruder_message(X91)
| ~ intruder_message(quadruple(X90,X91,X92,X93)) )
& ( intruder_message(X92)
| ~ intruder_message(quadruple(X90,X91,X92,X93)) )
& ( intruder_message(X93)
| ~ intruder_message(quadruple(X90,X91,X92,X93)) ) ),
inference(distribute,[status(thm)],[inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_decomposes_quadruples])])]) ).
cnf(c_0_166,plain,
( fresh_intruder_nonce(generate_intruder_nonce(X1))
| ~ fresh_intruder_nonce(X1) ),
inference(split_conjunct,[status(thm)],[c_0_137]),
[final] ).
fof(c_0_167,plain,
! [X116] :
( ~ a_key(X116)
| ~ a_nonce(X116) ),
inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[nothing_is_a_nonce_and_a_key])]) ).
fof(c_0_168,plain,
! [X114] : ~ a_nonce(generate_key(X114)),
inference(variable_rename,[status(thm)],[c_0_138]) ).
cnf(c_0_169,plain,
( b_holds(key(generate_key(an_a_nonce),b))
| ~ intruder_message(X1) ),
inference(cn,[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_139,c_0_130]),c_0_72]),c_0_44]),c_0_124]),c_0_58]),c_0_41])]) ).
fof(c_0_170,plain,
! [X115] :
( a_nonce(generate_expiration_time(X115))
& a_nonce(generate_b_nonce(X115)) ),
inference(variable_rename,[status(thm)],[generated_times_and_nonces_are_nonces]) ).
cnf(c_0_171,plain,
fresh_intruder_nonce(an_intruder_nonce),
inference(split_conjunct,[status(thm)],[an_intruder_nonce_is_a_fresh_intruder_nonce]),
[final] ).
cnf(c_0_172,plain,
( message(sent(b,t,triple(b,generate_b_nonce(encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce))),encrypt(triple(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce)),generate_expiration_time(encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce)))),bt))))
| ~ fresh_intruder_nonce(encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce)))
| ~ party_of_protocol(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt)) ),
inference(spm,[status(thm)],[c_0_140,c_0_141]),
[final] ).
cnf(c_0_173,plain,
( message(sent(b,t,triple(b,generate_b_nonce(encrypt(X1,generate_key(an_a_nonce))),encrypt(triple(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(X1,generate_key(an_a_nonce)),generate_expiration_time(encrypt(X1,generate_key(an_a_nonce)))),bt))))
| ~ fresh_intruder_nonce(encrypt(X1,generate_key(an_a_nonce)))
| ~ intruder_message(X1)
| ~ party_of_protocol(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt)) ),
inference(spm,[status(thm)],[c_0_142,c_0_141]),
[final] ).
cnf(c_0_174,plain,
( intruder_message(triple(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),at),encrypt(triple(a,generate_key(X1),generate_expiration_time(X1)),bt),X2))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_49,c_0_143]),
[final] ).
cnf(c_0_175,plain,
( intruder_message(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),at))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_61,c_0_129]),
[final] ).
cnf(c_0_176,plain,
( b_holds(key(generate_key(X1),a))
| ~ intruder_message(generate_key(X1))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_144,c_0_145]),c_0_101]),c_0_117]),c_0_68])]),
[final] ).
cnf(c_0_177,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(triple(X2,X1,generate_expiration_time(X3)))
| ~ intruder_message(bt)
| ~ intruder_message(X3)
| ~ a_nonce(X3)
| ~ a_key(X1)
| ~ fresh_to_b(X3)
| ~ party_of_protocol(X2) ),
inference(csr,[status(thm)],[inference(csr,[status(thm)],[inference(spm,[status(thm)],[c_0_144,c_0_112]),c_0_105]),c_0_61]),
[final] ).
cnf(c_0_178,plain,
( b_holds(key(generate_key(X1),b))
| ~ intruder_message(generate_key(X1))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_144,c_0_146]),c_0_72]),c_0_117]),c_0_44])]),
[final] ).
cnf(c_0_179,plain,
( intruder_message(triple(encrypt(quadruple(b,an_a_nonce,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),at),encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),X1))
| ~ intruder_message(X1) ),
inference(spm,[status(thm)],[c_0_49,c_0_97]),
[final] ).
cnf(c_0_180,plain,
( intruder_message(encrypt(quadruple(b,X1,generate_key(X1),generate_expiration_time(X1)),bt))
| ~ intruder_message(X1)
| ~ a_nonce(X1)
| ~ fresh_to_b(X1) ),
inference(spm,[status(thm)],[c_0_147,c_0_82]),
[final] ).
cnf(c_0_181,plain,
( b_stored(pair(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(X1,generate_key(an_a_nonce))))
| ~ fresh_intruder_nonce(encrypt(X1,generate_key(an_a_nonce)))
| ~ intruder_message(X1)
| ~ party_of_protocol(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt)) ),
inference(spm,[status(thm)],[c_0_148,c_0_141]),
[final] ).
cnf(c_0_182,plain,
( message(sent(b,t,triple(b,generate_b_nonce(encrypt(X1,generate_key(an_a_nonce))),encrypt(triple(X2,encrypt(X1,generate_key(an_a_nonce)),generate_expiration_time(encrypt(X1,generate_key(an_a_nonce)))),bt))))
| ~ fresh_intruder_nonce(encrypt(X1,generate_key(an_a_nonce)))
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| ~ party_of_protocol(X2) ),
inference(spm,[status(thm)],[c_0_149,c_0_141]),
[final] ).
cnf(c_0_183,plain,
( message(sent(b,t,triple(b,generate_b_nonce(encrypt(X1,generate_key(an_a_nonce))),encrypt(triple(a,encrypt(X1,generate_key(an_a_nonce)),generate_expiration_time(encrypt(X1,generate_key(an_a_nonce)))),bt))))
| ~ fresh_intruder_nonce(encrypt(X1,generate_key(an_a_nonce)))
| ~ intruder_message(X1) ),
inference(spm,[status(thm)],[c_0_150,c_0_141]),
[final] ).
cnf(c_0_184,plain,
( b_stored(pair(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt),encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce))))
| ~ fresh_intruder_nonce(encrypt(generate_b_nonce(an_a_nonce),generate_key(an_a_nonce)))
| ~ party_of_protocol(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt)) ),
inference(spm,[status(thm)],[c_0_151,c_0_141]),
[final] ).
cnf(c_0_185,plain,
( b_holds(key(generate_key(an_a_nonce),X1))
| ~ intruder_message(triple(X1,generate_key(an_a_nonce),generate_expiration_time(X2)))
| ~ intruder_message(bt)
| ~ intruder_message(X2)
| ~ fresh_to_b(X2)
| ~ party_of_protocol(X1) ),
inference(csr,[status(thm)],[inference(spm,[status(thm)],[c_0_131,c_0_112]),c_0_61]),
[final] ).
cnf(c_0_186,plain,
( b_holds(key(generate_key(an_a_nonce),X1))
| ~ fresh_intruder_nonce(generate_key(an_a_nonce))
| ~ intruder_message(X1)
| ~ party_of_protocol(X1) ),
inference(csr,[status(thm)],[inference(spm,[status(thm)],[c_0_152,c_0_141]),c_0_153]),
[final] ).
cnf(c_0_187,plain,
( b_stored(pair(X1,encrypt(X2,generate_key(an_a_nonce))))
| ~ fresh_intruder_nonce(encrypt(X2,generate_key(an_a_nonce)))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ party_of_protocol(X1) ),
inference(spm,[status(thm)],[c_0_154,c_0_141]),
[final] ).
cnf(c_0_188,plain,
( b_stored(pair(a,encrypt(X1,generate_key(an_a_nonce))))
| ~ fresh_intruder_nonce(encrypt(X1,generate_key(an_a_nonce)))
| ~ intruder_message(X1) ),
inference(spm,[status(thm)],[c_0_155,c_0_141]),
[final] ).
cnf(c_0_189,plain,
( intruder_message(encrypt(X1,generate_key(an_a_nonce)))
| ~ intruder_message(X1) ),
inference(spm,[status(thm)],[c_0_156,c_0_82]),
[final] ).
cnf(c_0_190,plain,
( b_holds(key(generate_key(an_a_nonce),X1))
| ~ intruder_message(triple(X1,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)))
| ~ intruder_message(bt)
| ~ party_of_protocol(X1) ),
inference(csr,[status(thm)],[inference(spm,[status(thm)],[c_0_139,c_0_112]),c_0_61]),
[final] ).
cnf(c_0_191,plain,
( message(sent(t,a,triple(encrypt(quadruple(a,X1,generate_key(X1),X2),at),encrypt(triple(a,generate_key(X1),X2),at),X3)))
| ~ intruder_message(triple(a,X1,X2))
| ~ intruder_message(at)
| ~ intruder_message(X3)
| ~ a_nonce(X1) ),
inference(spm,[status(thm)],[c_0_157,c_0_112]),
[final] ).
cnf(c_0_192,plain,
( message(sent(t,a,triple(encrypt(quadruple(b,X1,generate_key(X1),X2),at),encrypt(triple(a,generate_key(X1),X2),bt),X3)))
| ~ intruder_message(triple(a,X1,X2))
| ~ intruder_message(bt)
| ~ intruder_message(X3)
| ~ a_nonce(X1) ),
inference(spm,[status(thm)],[c_0_84,c_0_112]),
[final] ).
cnf(c_0_193,plain,
( message(sent(t,b,triple(encrypt(quadruple(a,X1,generate_key(X1),X2),bt),encrypt(triple(b,generate_key(X1),X2),at),X3)))
| ~ intruder_message(triple(b,X1,X2))
| ~ intruder_message(at)
| ~ intruder_message(X3)
| ~ a_nonce(X1) ),
inference(spm,[status(thm)],[c_0_158,c_0_112]),
[final] ).
cnf(c_0_194,plain,
( message(sent(t,b,triple(encrypt(quadruple(b,X1,generate_key(X1),X2),bt),encrypt(triple(b,generate_key(X1),X2),bt),X3)))
| ~ intruder_message(triple(b,X1,X2))
| ~ intruder_message(bt)
| ~ intruder_message(X3)
| ~ a_nonce(X1) ),
inference(spm,[status(thm)],[c_0_91,c_0_112]),
[final] ).
cnf(c_0_195,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(triple(X2,X1,generate_expiration_time(X3)))
| ~ intruder_message(bt)
| ~ intruder_message(X3)
| ~ intruder_message(X4)
| ~ a_key(X1)
| ~ fresh_to_b(X3)
| ~ party_of_protocol(X2)
| ~ party_of_protocol(X4) ),
inference(csr,[status(thm)],[inference(csr,[status(thm)],[inference(spm,[status(thm)],[c_0_159,c_0_112]),c_0_105]),c_0_61]),
[final] ).
cnf(c_0_196,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| ~ intruder_message(X3)
| ~ a_key(X1)
| ~ fresh_to_b(X1)
| ~ party_of_protocol(X2)
| ~ party_of_protocol(X3) ),
inference(spm,[status(thm)],[c_0_159,c_0_92]),
[final] ).
cnf(c_0_197,plain,
( b_holds(key(an_a_nonce,X1))
| ~ intruder_message(X1)
| ~ a_key(an_a_nonce)
| ~ party_of_protocol(X1) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_160,c_0_92]),c_0_124]),c_0_41])]),
[final] ).
cnf(c_0_198,plain,
( b_holds(key(X1,X2))
| ~ intruder_message(triple(X2,X1,generate_expiration_time(an_a_nonce)))
| ~ intruder_message(bt)
| ~ a_key(X1)
| ~ party_of_protocol(X2) ),
inference(csr,[status(thm)],[inference(csr,[status(thm)],[inference(spm,[status(thm)],[c_0_160,c_0_112]),c_0_105]),c_0_61]),
[final] ).
cnf(c_0_199,plain,
( b_holds(key(X1,a))
| ~ intruder_message(triple(a,X1,generate_expiration_time(an_a_nonce)))
| ~ intruder_message(bt)
| ~ a_key(X1) ),
inference(csr,[status(thm)],[inference(spm,[status(thm)],[c_0_161,c_0_112]),c_0_105]),
[final] ).
cnf(c_0_200,plain,
( b_holds(key(an_a_nonce,a))
| ~ a_key(an_a_nonce) ),
inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_161,c_0_85]),c_0_124])]),
[final] ).
cnf(c_0_201,plain,
( message(sent(a,b,pair(X1,encrypt(X2,X3))))
| ~ intruder_message(quadruple(b,an_a_nonce,X3,X4))
| ~ intruder_message(at)
| ~ intruder_message(X2)
| ~ intruder_message(X1) ),
inference(spm,[status(thm)],[c_0_93,c_0_112]),
[final] ).
cnf(c_0_202,plain,
( a_holds(key(X1,b))
| ~ intruder_message(quadruple(b,an_a_nonce,X1,X2))
| ~ intruder_message(at)
| ~ intruder_message(X3)
| ~ intruder_message(X4) ),
inference(spm,[status(thm)],[c_0_162,c_0_112]),
[final] ).
cnf(c_0_203,plain,
( intruder_message(quadruple(X1,X2,X3,X4))
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| ~ intruder_message(X3)
| ~ intruder_message(X4) ),
inference(split_conjunct,[status(thm)],[c_0_163]),
[final] ).
cnf(c_0_204,plain,
( intruder_message(X2)
| ~ intruder_message(encrypt(X1,X2))
| ~ intruder_holds(key(X2,X3))
| ~ party_of_protocol(X3) ),
inference(split_conjunct,[status(thm)],[c_0_164]),
[final] ).
cnf(c_0_205,plain,
( intruder_message(X1)
| ~ intruder_message(quadruple(X1,X2,X3,X4)) ),
inference(split_conjunct,[status(thm)],[c_0_165]),
[final] ).
cnf(c_0_206,plain,
( intruder_message(X1)
| ~ intruder_message(quadruple(X2,X1,X3,X4)) ),
inference(split_conjunct,[status(thm)],[c_0_165]),
[final] ).
cnf(c_0_207,plain,
( intruder_message(X1)
| ~ intruder_message(quadruple(X2,X3,X1,X4)) ),
inference(split_conjunct,[status(thm)],[c_0_165]),
[final] ).
cnf(c_0_208,plain,
( intruder_message(X1)
| ~ intruder_message(quadruple(X2,X3,X4,X1)) ),
inference(split_conjunct,[status(thm)],[c_0_165]),
[final] ).
cnf(c_0_209,plain,
( intruder_message(generate_intruder_nonce(X1))
| ~ fresh_intruder_nonce(X1) ),
inference(spm,[status(thm)],[c_0_153,c_0_166]),
[final] ).
cnf(c_0_210,plain,
( ~ a_key(X1)
| ~ a_nonce(X1) ),
inference(split_conjunct,[status(thm)],[c_0_167]),
[final] ).
cnf(c_0_211,plain,
~ a_nonce(generate_key(X1)),
inference(split_conjunct,[status(thm)],[c_0_168]),
[final] ).
cnf(c_0_212,plain,
b_holds(key(generate_key(an_a_nonce),b)),
inference(spm,[status(thm)],[c_0_169,c_0_82]),
[final] ).
cnf(c_0_213,plain,
intruder_message(encrypt(triple(a,generate_key(an_a_nonce),generate_expiration_time(an_a_nonce)),bt)),
inference(spm,[status(thm)],[c_0_89,c_0_109]),
[final] ).
cnf(c_0_214,plain,
b_holds(key(generate_key(an_a_nonce),a)),
inference(cn,[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_86,c_0_96]),c_0_124]),c_0_101]),c_0_117]),c_0_41]),c_0_68])]),
[final] ).
cnf(c_0_215,plain,
a_holds(key(generate_key(an_a_nonce),b)),
inference(spm,[status(thm)],[c_0_122,c_0_69]),
[final] ).
cnf(c_0_216,plain,
b_holds(key(bt,t)),
inference(split_conjunct,[status(thm)],[b_hold_key_bt_for_t]),
[final] ).
cnf(c_0_217,plain,
a_holds(key(at,t)),
inference(split_conjunct,[status(thm)],[a_holds_key_at_for_t]),
[final] ).
cnf(c_0_218,plain,
a_nonce(generate_expiration_time(X1)),
inference(split_conjunct,[status(thm)],[c_0_170]),
[final] ).
cnf(c_0_219,plain,
intruder_message(an_intruder_nonce),
inference(spm,[status(thm)],[c_0_153,c_0_171]),
[final] ).
cnf(c_0_220,plain,
a_nonce(generate_b_nonce(X1)),
inference(split_conjunct,[status(thm)],[c_0_170]),
[final] ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12 % Problem : SWV017+1 : TPTP v9.2.1. Released v2.4.0.
% 0.00/0.12 % Command : /export/starexec/sandbox2/solver/bin/lemma_parallel_prover %s --lemma-prover /export/starexec/sandbox2/solver/bin/cse --final-prover /export/starexec/sandbox2/solver/bin/eprover --proof-time %d --global-time-limit %d
% 0.15/0.33 % Computer : n014.cluster.edu
% 0.15/0.33 % Model : x86_64 x86_64
% 0.15/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.15/0.33 % Memory : 8042.1875MB
% 0.15/0.33 % OS : Linux 3.10.0-693.el7.x86_64
% 0.15/0.33 % CPULimit : 300
% 0.15/0.33 % WCLimit : 300
% 0.15/0.33 % DateTime : Tue May 5 04:55:06 EDT 2026
% 0.15/0.33 % CPUTime :
% 0.15/0.34 % start to proof: theBenchmark
% 1.30/1.74 % Version : CSE_E---1.7
% 1.30/1.74 % Problem : theBenchmark.p
% 1.30/1.74 % SZS status Satisfiable for theBenchmark.p
% 1.30/1.74 % SZS output start Saturation
% See solution above
% 1.30/1.74 % Total time : 1.370s
%------------------------------------------------------------------------------