TSTP Solution File: SWV013+1 by iProver---3.8
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : iProver---3.8
% Problem : SWV013+1 : TPTP v8.1.2. Released v2.4.0.
% Transfm : none
% Format : tptp:raw
% Command : run_iprover %s %d THM
% Computer : n015.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 : Thu Aug 31 22:30:43 EDT 2023
% Result : Satisfiable 1.35s 1.18s
% Output : Saturation 1.35s
% Verified :
% SZS Type : ERROR: Analysing output (MakeTreeStats fails)
% Comments :
%------------------------------------------------------------------------------
fof(f2,axiom,
party_of_protocol(a),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',a_is_party_of_protocol) ).
fof(f3,axiom,
message(sent(a,b,pair(a,an_a_nonce))),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',a_sent_message_i_to_b) ).
fof(f4,axiom,
a_stored(pair(b,an_a_nonce)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',a_stored_message_i) ).
fof(f5,axiom,
! [X0,X1,X2,X3,X4,X5] :
( ( a_stored(pair(X4,X5))
& message(sent(t,a,triple(encrypt(quadruple(X4,X5,X2,X1),at),X3,X0))) )
=> ( a_holds(key(X2,X4))
& message(sent(a,X4,pair(X3,encrypt(X0,X2)))) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',a_forwards_secure) ).
fof(f7,axiom,
party_of_protocol(b),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',b_is_party_of_protocol) ).
fof(f8,axiom,
fresh_to_b(an_a_nonce),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',nonce_a_is_fresh_to_b) ).
fof(f9,axiom,
! [X0,X1] :
( ( fresh_to_b(X1)
& message(sent(X0,b,pair(X0,X1))) )
=> ( b_stored(pair(X0,X1))
& message(sent(b,t,triple(b,generate_b_nonce(X1),encrypt(triple(X0,X1,generate_expiration_time(X1)),bt)))) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',b_creates_freash_nonces_in_time) ).
fof(f11,axiom,
t_holds(key(at,a)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',t_holds_key_at_for_a) ).
fof(f12,axiom,
t_holds(key(bt,b)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',t_holds_key_bt_for_b) ).
fof(f13,axiom,
party_of_protocol(t),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',t_is_party_of_protocol) ).
fof(f14,axiom,
! [X0,X1,X2,X3,X4,X5,X6] :
( ( a_nonce(X3)
& t_holds(key(X6,X2))
& t_holds(key(X5,X0))
& message(sent(X0,t,triple(X0,X1,encrypt(triple(X2,X3,X4),X5)))) )
=> message(sent(t,X2,triple(encrypt(quadruple(X0,X3,generate_key(X3),X4),X6),encrypt(triple(X2,generate_key(X3),X4),X5),X1))) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',server_t_generates_key) ).
fof(f15,axiom,
! [X0,X1,X2] :
( message(sent(X0,X1,X2))
=> intruder_message(X2) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_can_record) ).
fof(f16,axiom,
! [X0,X1] :
( intruder_message(pair(X0,X1))
=> ( intruder_message(X1)
& intruder_message(X0) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_decomposes_pairs) ).
fof(f17,axiom,
! [X0,X1,X2] :
( intruder_message(triple(X0,X1,X2))
=> ( intruder_message(X2)
& intruder_message(X1)
& intruder_message(X0) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_decomposes_triples) ).
fof(f18,axiom,
! [X0,X1,X2,X3] :
( intruder_message(quadruple(X0,X1,X2,X3))
=> ( intruder_message(X3)
& intruder_message(X2)
& intruder_message(X1)
& intruder_message(X0) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_decomposes_quadruples) ).
fof(f19,axiom,
! [X0,X1] :
( ( intruder_message(X1)
& intruder_message(X0) )
=> intruder_message(pair(X0,X1)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_composes_pairs) ).
fof(f20,axiom,
! [X0,X1,X2] :
( ( intruder_message(X2)
& intruder_message(X1)
& intruder_message(X0) )
=> intruder_message(triple(X0,X1,X2)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_composes_triples) ).
fof(f21,axiom,
! [X0,X1,X2,X3] :
( ( intruder_message(X3)
& intruder_message(X2)
& intruder_message(X1)
& intruder_message(X0) )
=> intruder_message(quadruple(X0,X1,X2,X3)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_composes_quadruples) ).
fof(f22,axiom,
! [X0,X1,X2] :
( ( party_of_protocol(X2)
& intruder_holds(key(X1,X2))
& intruder_message(encrypt(X0,X1)) )
=> intruder_message(X1) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_interception) ).
fof(f23,axiom,
! [X0,X1,X2] :
( ( party_of_protocol(X2)
& party_of_protocol(X1)
& intruder_message(X0) )
=> message(sent(X1,X2,X0)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_message_sent) ).
fof(f24,axiom,
! [X1,X2] :
( ( party_of_protocol(X2)
& intruder_message(X1) )
=> intruder_holds(key(X1,X2)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_holds_key) ).
fof(f25,axiom,
! [X0,X1,X2] :
( ( party_of_protocol(X2)
& intruder_holds(key(X1,X2))
& intruder_message(X0) )
=> intruder_message(encrypt(X0,X1)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',intruder_key_encrypts) ).
fof(f26,axiom,
a_nonce(an_a_nonce),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',an_a_nonce_is_a_nonce) ).
fof(f27,axiom,
! [X0] : ~ a_nonce(generate_key(X0)),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',generated_keys_are_not_nonces) ).
fof(f28,axiom,
! [X0] :
( a_nonce(generate_b_nonce(X0))
& a_nonce(generate_expiration_time(X0)) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',generated_times_and_nonces_are_nonces) ).
fof(f30,plain,
! [X0,X1] :
( ( party_of_protocol(X1)
& intruder_message(X0) )
=> intruder_holds(key(X0,X1)) ),
inference(rectify,[],[f24]) ).
fof(f33,plain,
! [X0,X1] :
( ( fresh_to_b(X1)
& message(sent(X0,b,pair(X0,X1))) )
=> message(sent(b,t,triple(b,generate_b_nonce(X1),encrypt(triple(X0,X1,generate_expiration_time(X1)),bt)))) ),
inference(pure_predicate_removal,[],[f9]) ).
fof(f35,plain,
! [X0,X1,X2,X3,X4,X5] :
( ( a_stored(pair(X4,X5))
& message(sent(t,a,triple(encrypt(quadruple(X4,X5,X2,X1),at),X3,X0))) )
=> message(sent(a,X4,pair(X3,encrypt(X0,X2)))) ),
inference(pure_predicate_removal,[],[f5]) ).
fof(f36,plain,
! [X0,X1,X2,X3,X4,X5] :
( message(sent(a,X4,pair(X3,encrypt(X0,X2))))
| ~ a_stored(pair(X4,X5))
| ~ message(sent(t,a,triple(encrypt(quadruple(X4,X5,X2,X1),at),X3,X0))) ),
inference(ennf_transformation,[],[f35]) ).
fof(f37,plain,
! [X0,X1,X2,X3,X4,X5] :
( message(sent(a,X4,pair(X3,encrypt(X0,X2))))
| ~ a_stored(pair(X4,X5))
| ~ message(sent(t,a,triple(encrypt(quadruple(X4,X5,X2,X1),at),X3,X0))) ),
inference(flattening,[],[f36]) ).
fof(f38,plain,
! [X0,X1] :
( message(sent(b,t,triple(b,generate_b_nonce(X1),encrypt(triple(X0,X1,generate_expiration_time(X1)),bt))))
| ~ fresh_to_b(X1)
| ~ message(sent(X0,b,pair(X0,X1))) ),
inference(ennf_transformation,[],[f33]) ).
fof(f39,plain,
! [X0,X1] :
( message(sent(b,t,triple(b,generate_b_nonce(X1),encrypt(triple(X0,X1,generate_expiration_time(X1)),bt))))
| ~ fresh_to_b(X1)
| ~ message(sent(X0,b,pair(X0,X1))) ),
inference(flattening,[],[f38]) ).
fof(f40,plain,
! [X0,X1,X2,X3,X4,X5,X6] :
( message(sent(t,X2,triple(encrypt(quadruple(X0,X3,generate_key(X3),X4),X6),encrypt(triple(X2,generate_key(X3),X4),X5),X1)))
| ~ a_nonce(X3)
| ~ t_holds(key(X6,X2))
| ~ t_holds(key(X5,X0))
| ~ message(sent(X0,t,triple(X0,X1,encrypt(triple(X2,X3,X4),X5)))) ),
inference(ennf_transformation,[],[f14]) ).
fof(f41,plain,
! [X0,X1,X2,X3,X4,X5,X6] :
( message(sent(t,X2,triple(encrypt(quadruple(X0,X3,generate_key(X3),X4),X6),encrypt(triple(X2,generate_key(X3),X4),X5),X1)))
| ~ a_nonce(X3)
| ~ t_holds(key(X6,X2))
| ~ t_holds(key(X5,X0))
| ~ message(sent(X0,t,triple(X0,X1,encrypt(triple(X2,X3,X4),X5)))) ),
inference(flattening,[],[f40]) ).
fof(f42,plain,
! [X0,X1,X2] :
( intruder_message(X2)
| ~ message(sent(X0,X1,X2)) ),
inference(ennf_transformation,[],[f15]) ).
fof(f43,plain,
! [X0,X1] :
( ( intruder_message(X1)
& intruder_message(X0) )
| ~ intruder_message(pair(X0,X1)) ),
inference(ennf_transformation,[],[f16]) ).
fof(f44,plain,
! [X0,X1,X2] :
( ( intruder_message(X2)
& intruder_message(X1)
& intruder_message(X0) )
| ~ intruder_message(triple(X0,X1,X2)) ),
inference(ennf_transformation,[],[f17]) ).
fof(f45,plain,
! [X0,X1,X2,X3] :
( ( intruder_message(X3)
& intruder_message(X2)
& intruder_message(X1)
& intruder_message(X0) )
| ~ intruder_message(quadruple(X0,X1,X2,X3)) ),
inference(ennf_transformation,[],[f18]) ).
fof(f46,plain,
! [X0,X1] :
( intruder_message(pair(X0,X1))
| ~ intruder_message(X1)
| ~ intruder_message(X0) ),
inference(ennf_transformation,[],[f19]) ).
fof(f47,plain,
! [X0,X1] :
( intruder_message(pair(X0,X1))
| ~ intruder_message(X1)
| ~ intruder_message(X0) ),
inference(flattening,[],[f46]) ).
fof(f48,plain,
! [X0,X1,X2] :
( intruder_message(triple(X0,X1,X2))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ intruder_message(X0) ),
inference(ennf_transformation,[],[f20]) ).
fof(f49,plain,
! [X0,X1,X2] :
( intruder_message(triple(X0,X1,X2))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ intruder_message(X0) ),
inference(flattening,[],[f48]) ).
fof(f50,plain,
! [X0,X1,X2,X3] :
( intruder_message(quadruple(X0,X1,X2,X3))
| ~ intruder_message(X3)
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ intruder_message(X0) ),
inference(ennf_transformation,[],[f21]) ).
fof(f51,plain,
! [X0,X1,X2,X3] :
( intruder_message(quadruple(X0,X1,X2,X3))
| ~ intruder_message(X3)
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ intruder_message(X0) ),
inference(flattening,[],[f50]) ).
fof(f52,plain,
! [X0,X1,X2] :
( intruder_message(X1)
| ~ party_of_protocol(X2)
| ~ intruder_holds(key(X1,X2))
| ~ intruder_message(encrypt(X0,X1)) ),
inference(ennf_transformation,[],[f22]) ).
fof(f53,plain,
! [X0,X1,X2] :
( intruder_message(X1)
| ~ party_of_protocol(X2)
| ~ intruder_holds(key(X1,X2))
| ~ intruder_message(encrypt(X0,X1)) ),
inference(flattening,[],[f52]) ).
fof(f54,plain,
! [X0,X1,X2] :
( message(sent(X1,X2,X0))
| ~ party_of_protocol(X2)
| ~ party_of_protocol(X1)
| ~ intruder_message(X0) ),
inference(ennf_transformation,[],[f23]) ).
fof(f55,plain,
! [X0,X1,X2] :
( message(sent(X1,X2,X0))
| ~ party_of_protocol(X2)
| ~ party_of_protocol(X1)
| ~ intruder_message(X0) ),
inference(flattening,[],[f54]) ).
fof(f56,plain,
! [X0,X1] :
( intruder_holds(key(X0,X1))
| ~ party_of_protocol(X1)
| ~ intruder_message(X0) ),
inference(ennf_transformation,[],[f30]) ).
fof(f57,plain,
! [X0,X1] :
( intruder_holds(key(X0,X1))
| ~ party_of_protocol(X1)
| ~ intruder_message(X0) ),
inference(flattening,[],[f56]) ).
fof(f58,plain,
! [X0,X1,X2] :
( intruder_message(encrypt(X0,X1))
| ~ party_of_protocol(X2)
| ~ intruder_holds(key(X1,X2))
| ~ intruder_message(X0) ),
inference(ennf_transformation,[],[f25]) ).
fof(f59,plain,
! [X0,X1,X2] :
( intruder_message(encrypt(X0,X1))
| ~ party_of_protocol(X2)
| ~ intruder_holds(key(X1,X2))
| ~ intruder_message(X0) ),
inference(flattening,[],[f58]) ).
fof(f60,plain,
party_of_protocol(a),
inference(cnf_transformation,[],[f2]) ).
fof(f61,plain,
message(sent(a,b,pair(a,an_a_nonce))),
inference(cnf_transformation,[],[f3]) ).
fof(f62,plain,
a_stored(pair(b,an_a_nonce)),
inference(cnf_transformation,[],[f4]) ).
fof(f63,plain,
! [X2,X3,X0,X1,X4,X5] :
( message(sent(a,X4,pair(X3,encrypt(X0,X2))))
| ~ a_stored(pair(X4,X5))
| ~ message(sent(t,a,triple(encrypt(quadruple(X4,X5,X2,X1),at),X3,X0))) ),
inference(cnf_transformation,[],[f37]) ).
fof(f64,plain,
party_of_protocol(b),
inference(cnf_transformation,[],[f7]) ).
fof(f65,plain,
fresh_to_b(an_a_nonce),
inference(cnf_transformation,[],[f8]) ).
fof(f66,plain,
! [X0,X1] :
( message(sent(b,t,triple(b,generate_b_nonce(X1),encrypt(triple(X0,X1,generate_expiration_time(X1)),bt))))
| ~ fresh_to_b(X1)
| ~ message(sent(X0,b,pair(X0,X1))) ),
inference(cnf_transformation,[],[f39]) ).
fof(f67,plain,
t_holds(key(at,a)),
inference(cnf_transformation,[],[f11]) ).
fof(f68,plain,
t_holds(key(bt,b)),
inference(cnf_transformation,[],[f12]) ).
fof(f69,plain,
party_of_protocol(t),
inference(cnf_transformation,[],[f13]) ).
fof(f70,plain,
! [X2,X3,X0,X1,X6,X4,X5] :
( message(sent(t,X2,triple(encrypt(quadruple(X0,X3,generate_key(X3),X4),X6),encrypt(triple(X2,generate_key(X3),X4),X5),X1)))
| ~ a_nonce(X3)
| ~ t_holds(key(X6,X2))
| ~ t_holds(key(X5,X0))
| ~ message(sent(X0,t,triple(X0,X1,encrypt(triple(X2,X3,X4),X5)))) ),
inference(cnf_transformation,[],[f41]) ).
fof(f71,plain,
! [X2,X0,X1] :
( intruder_message(X2)
| ~ message(sent(X0,X1,X2)) ),
inference(cnf_transformation,[],[f42]) ).
fof(f72,plain,
! [X0,X1] :
( intruder_message(X0)
| ~ intruder_message(pair(X0,X1)) ),
inference(cnf_transformation,[],[f43]) ).
fof(f73,plain,
! [X0,X1] :
( intruder_message(X1)
| ~ intruder_message(pair(X0,X1)) ),
inference(cnf_transformation,[],[f43]) ).
fof(f74,plain,
! [X2,X0,X1] :
( intruder_message(X0)
| ~ intruder_message(triple(X0,X1,X2)) ),
inference(cnf_transformation,[],[f44]) ).
fof(f75,plain,
! [X2,X0,X1] :
( intruder_message(X1)
| ~ intruder_message(triple(X0,X1,X2)) ),
inference(cnf_transformation,[],[f44]) ).
fof(f76,plain,
! [X2,X0,X1] :
( intruder_message(X2)
| ~ intruder_message(triple(X0,X1,X2)) ),
inference(cnf_transformation,[],[f44]) ).
fof(f77,plain,
! [X2,X3,X0,X1] :
( intruder_message(X0)
| ~ intruder_message(quadruple(X0,X1,X2,X3)) ),
inference(cnf_transformation,[],[f45]) ).
fof(f78,plain,
! [X2,X3,X0,X1] :
( intruder_message(X1)
| ~ intruder_message(quadruple(X0,X1,X2,X3)) ),
inference(cnf_transformation,[],[f45]) ).
fof(f79,plain,
! [X2,X3,X0,X1] :
( intruder_message(X2)
| ~ intruder_message(quadruple(X0,X1,X2,X3)) ),
inference(cnf_transformation,[],[f45]) ).
fof(f80,plain,
! [X2,X3,X0,X1] :
( intruder_message(X3)
| ~ intruder_message(quadruple(X0,X1,X2,X3)) ),
inference(cnf_transformation,[],[f45]) ).
fof(f81,plain,
! [X0,X1] :
( intruder_message(pair(X0,X1))
| ~ intruder_message(X1)
| ~ intruder_message(X0) ),
inference(cnf_transformation,[],[f47]) ).
fof(f82,plain,
! [X2,X0,X1] :
( intruder_message(triple(X0,X1,X2))
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ intruder_message(X0) ),
inference(cnf_transformation,[],[f49]) ).
fof(f83,plain,
! [X2,X3,X0,X1] :
( intruder_message(quadruple(X0,X1,X2,X3))
| ~ intruder_message(X3)
| ~ intruder_message(X2)
| ~ intruder_message(X1)
| ~ intruder_message(X0) ),
inference(cnf_transformation,[],[f51]) ).
fof(f84,plain,
! [X2,X0,X1] :
( intruder_message(X1)
| ~ party_of_protocol(X2)
| ~ intruder_holds(key(X1,X2))
| ~ intruder_message(encrypt(X0,X1)) ),
inference(cnf_transformation,[],[f53]) ).
fof(f85,plain,
! [X2,X0,X1] :
( message(sent(X1,X2,X0))
| ~ party_of_protocol(X2)
| ~ party_of_protocol(X1)
| ~ intruder_message(X0) ),
inference(cnf_transformation,[],[f55]) ).
fof(f86,plain,
! [X0,X1] :
( intruder_holds(key(X0,X1))
| ~ party_of_protocol(X1)
| ~ intruder_message(X0) ),
inference(cnf_transformation,[],[f57]) ).
fof(f87,plain,
! [X2,X0,X1] :
( intruder_message(encrypt(X0,X1))
| ~ party_of_protocol(X2)
| ~ intruder_holds(key(X1,X2))
| ~ intruder_message(X0) ),
inference(cnf_transformation,[],[f59]) ).
fof(f88,plain,
a_nonce(an_a_nonce),
inference(cnf_transformation,[],[f26]) ).
fof(f89,plain,
! [X0] : ~ a_nonce(generate_key(X0)),
inference(cnf_transformation,[],[f27]) ).
fof(f90,plain,
! [X0] : a_nonce(generate_expiration_time(X0)),
inference(cnf_transformation,[],[f28]) ).
fof(f91,plain,
! [X0] : a_nonce(generate_b_nonce(X0)),
inference(cnf_transformation,[],[f28]) ).
cnf(c_49,plain,
party_of_protocol(a),
inference(cnf_transformation,[],[f60]) ).
cnf(c_50,plain,
message(sent(a,b,pair(a,an_a_nonce))),
inference(cnf_transformation,[],[f61]) ).
cnf(c_51,plain,
a_stored(pair(b,an_a_nonce)),
inference(cnf_transformation,[],[f62]) ).
cnf(c_52,plain,
( ~ message(sent(t,a,triple(encrypt(quadruple(X0,X1,X2,X3),at),X4,X5)))
| ~ a_stored(pair(X0,X1))
| message(sent(a,X0,pair(X4,encrypt(X5,X2)))) ),
inference(cnf_transformation,[],[f63]) ).
cnf(c_53,plain,
party_of_protocol(b),
inference(cnf_transformation,[],[f64]) ).
cnf(c_54,plain,
fresh_to_b(an_a_nonce),
inference(cnf_transformation,[],[f65]) ).
cnf(c_55,plain,
( ~ message(sent(X0,b,pair(X0,X1)))
| ~ fresh_to_b(X1)
| message(sent(b,t,triple(b,generate_b_nonce(X1),encrypt(triple(X0,X1,generate_expiration_time(X1)),bt)))) ),
inference(cnf_transformation,[],[f66]) ).
cnf(c_56,plain,
t_holds(key(at,a)),
inference(cnf_transformation,[],[f67]) ).
cnf(c_57,plain,
t_holds(key(bt,b)),
inference(cnf_transformation,[],[f68]) ).
cnf(c_58,plain,
party_of_protocol(t),
inference(cnf_transformation,[],[f69]) ).
cnf(c_59,plain,
( ~ message(sent(X0,t,triple(X0,X1,encrypt(triple(X2,X3,X4),X5))))
| ~ t_holds(key(X5,X0))
| ~ t_holds(key(X6,X2))
| ~ a_nonce(X3)
| message(sent(t,X2,triple(encrypt(quadruple(X0,X3,generate_key(X3),X4),X6),encrypt(triple(X2,generate_key(X3),X4),X5),X1))) ),
inference(cnf_transformation,[],[f70]) ).
cnf(c_60,plain,
( ~ message(sent(X0,X1,X2))
| intruder_message(X2) ),
inference(cnf_transformation,[],[f71]) ).
cnf(c_61,plain,
( ~ intruder_message(pair(X0,X1))
| intruder_message(X1) ),
inference(cnf_transformation,[],[f73]) ).
cnf(c_62,plain,
( ~ intruder_message(pair(X0,X1))
| intruder_message(X0) ),
inference(cnf_transformation,[],[f72]) ).
cnf(c_63,plain,
( ~ intruder_message(triple(X0,X1,X2))
| intruder_message(X2) ),
inference(cnf_transformation,[],[f76]) ).
cnf(c_64,plain,
( ~ intruder_message(triple(X0,X1,X2))
| intruder_message(X1) ),
inference(cnf_transformation,[],[f75]) ).
cnf(c_65,plain,
( ~ intruder_message(triple(X0,X1,X2))
| intruder_message(X0) ),
inference(cnf_transformation,[],[f74]) ).
cnf(c_66,plain,
( ~ intruder_message(quadruple(X0,X1,X2,X3))
| intruder_message(X3) ),
inference(cnf_transformation,[],[f80]) ).
cnf(c_67,plain,
( ~ intruder_message(quadruple(X0,X1,X2,X3))
| intruder_message(X2) ),
inference(cnf_transformation,[],[f79]) ).
cnf(c_68,plain,
( ~ intruder_message(quadruple(X0,X1,X2,X3))
| intruder_message(X1) ),
inference(cnf_transformation,[],[f78]) ).
cnf(c_69,plain,
( ~ intruder_message(quadruple(X0,X1,X2,X3))
| intruder_message(X0) ),
inference(cnf_transformation,[],[f77]) ).
cnf(c_70,plain,
( ~ intruder_message(X0)
| ~ intruder_message(X1)
| intruder_message(pair(X0,X1)) ),
inference(cnf_transformation,[],[f81]) ).
cnf(c_71,plain,
( ~ intruder_message(X0)
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| intruder_message(triple(X0,X2,X1)) ),
inference(cnf_transformation,[],[f82]) ).
cnf(c_72,plain,
( ~ intruder_message(X0)
| ~ intruder_message(X1)
| ~ intruder_message(X2)
| ~ intruder_message(X3)
| intruder_message(quadruple(X1,X3,X2,X0)) ),
inference(cnf_transformation,[],[f83]) ).
cnf(c_73,plain,
( ~ intruder_message(encrypt(X0,X1))
| ~ intruder_holds(key(X1,X2))
| ~ party_of_protocol(X2)
| intruder_message(X1) ),
inference(cnf_transformation,[],[f84]) ).
cnf(c_74,plain,
( ~ party_of_protocol(X0)
| ~ party_of_protocol(X1)
| ~ intruder_message(X2)
| message(sent(X1,X0,X2)) ),
inference(cnf_transformation,[],[f85]) ).
cnf(c_75,plain,
( ~ party_of_protocol(X0)
| ~ intruder_message(X1)
| intruder_holds(key(X1,X0)) ),
inference(cnf_transformation,[],[f86]) ).
cnf(c_76,plain,
( ~ intruder_holds(key(X0,X1))
| ~ party_of_protocol(X1)
| ~ intruder_message(X2)
| intruder_message(encrypt(X2,X0)) ),
inference(cnf_transformation,[],[f87]) ).
cnf(c_77,plain,
a_nonce(an_a_nonce),
inference(cnf_transformation,[],[f88]) ).
cnf(c_78,plain,
~ a_nonce(generate_key(X0)),
inference(cnf_transformation,[],[f89]) ).
cnf(c_79,plain,
a_nonce(generate_b_nonce(X0)),
inference(cnf_transformation,[],[f91]) ).
cnf(c_80,plain,
a_nonce(generate_expiration_time(X0)),
inference(cnf_transformation,[],[f90]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12 % Problem : SWV013+1 : TPTP v8.1.2. Released v2.4.0.
% 0.00/0.13 % Command : run_iprover %s %d THM
% 0.18/0.34 % Computer : n015.cluster.edu
% 0.18/0.34 % Model : x86_64 x86_64
% 0.18/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.18/0.34 % Memory : 8042.1875MB
% 0.18/0.34 % OS : Linux 3.10.0-693.el7.x86_64
% 0.18/0.34 % CPULimit : 300
% 0.18/0.34 % WCLimit : 300
% 0.18/0.34 % DateTime : Tue Aug 29 04:46:41 EDT 2023
% 0.18/0.35 % CPUTime :
% 0.21/0.47 Running first-order theorem proving
% 0.21/0.47 Running: /export/starexec/sandbox2/solver/bin/run_problem --schedule fof_schedule --no_cores 8 /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 1.35/1.18 % SZS status Started for theBenchmark.p
% 1.35/1.18 % SZS status Satisfiable for theBenchmark.p
% 1.35/1.18
% 1.35/1.18 %---------------- iProver v3.8 (pre SMT-COMP 2023/CASC 2023) ----------------%
% 1.35/1.18
% 1.35/1.18 ------ iProver source info
% 1.35/1.18
% 1.35/1.18 git: date: 2023-05-31 18:12:56 +0000
% 1.35/1.18 git: sha1: 8abddc1f627fd3ce0bcb8b4cbf113b3cc443d7b6
% 1.35/1.18 git: non_committed_changes: false
% 1.35/1.18 git: last_make_outside_of_git: false
% 1.35/1.18
% 1.35/1.18 ------ Parsing...
% 1.35/1.18 ------ Clausification by vclausify_rel & Parsing by iProver...
% 1.35/1.18
% 1.35/1.18 ------ Preprocessing... sf_s rm: 32 0s sf_e pe_s pe_e sf_s rm: 0 0s sf_e pe_s pe_e
% 1.35/1.18
% 1.35/1.18 ------ Preprocessing...------ preprocesses with Option_epr_horn
% 1.35/1.18 gs_s sp: 0 0s gs_e snvd_s sp: 0 0s snvd_e
% 1.35/1.18 ------ Proving...
% 1.35/1.18 ------ Problem Properties
% 1.35/1.18
% 1.35/1.18
% 1.35/1.18 clauses 0
% 1.35/1.18 conjectures 0
% 1.35/1.18 EPR 0
% 1.35/1.18 Horn 0
% 1.35/1.18 unary 0
% 1.35/1.18 binary 0
% 1.35/1.18 lits 0
% 1.35/1.18 lits eq 0
% 1.35/1.18 fd_pure 0
% 1.35/1.18 fd_pseudo 0
% 1.35/1.18 fd_cond 0
% 1.35/1.18 fd_pseudo_cond 0
% 1.35/1.18 AC symbols 0
% 1.35/1.18
% 1.35/1.18 ------ Schedule EPR Horn non eq is on
% 1.35/1.18
% 1.35/1.18 ------ no conjectures: strip conj schedule
% 1.35/1.18
% 1.35/1.18 ------ no equalities: superposition off
% 1.35/1.18
% 1.35/1.18 ------ Option_epr_horn stripped conjectures Time Limit: Unbounded
% 1.35/1.18
% 1.35/1.18
% 1.35/1.18
% 1.35/1.18
% 1.35/1.18 % SZS status Satisfiable for theBenchmark.p
% 1.35/1.18
% 1.35/1.18 % SZS output start Saturation for theBenchmark.p
% See solution above
% 1.35/1.18
% 1.35/1.18
%------------------------------------------------------------------------------