%------------------------------------------------------------------------------
% File : LisaST---0.9
% Problem : SWV014+1 : TPTP v9.3.1. Released v2.4.0.
% Transfm : none
% Format : tptp:raw
% Command : casc-portfolio.sh -t 300 /export/starexec/sandbox2/benchmark/theBenchmark.p
% Computer : n003.cluster.edu
% Model : x86_64 x86_64
% CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory : 8046.5625MB
% OS : Linux 6.8.0-71-generic
% CPULimit : 300s
% WCLimit : 300s
% DateTime : Sun Sep 27 09:01:15 AM UTC 2026
% Result : Theorem 10.41s 4.55s
% Output : CNFRefutation 10.41s
% Verified :
% SZS Type : Refutation
% Derivation depth : 11
% Number of leaves : 14
% Syntax : Number of formulae : 55 ( 19 unt; 0 def)
% Number of atoms : 128 ( 0 equ)
% Maximal formula atoms : 5 ( 2 avg)
% Number of connectives : 128 ( 55 ~; 50 |; 14 &)
% ( 0 <=>; 9 =>; 0 <=; 0 <~>)
% Maximal formula depth : 7 ( 3 avg)
% Maximal term depth : 6 ( 2 avg)
% Number of predicates : 8 ( 7 usr; 1 prp; 0-1 aty)
% Number of functors : 12 ( 12 usr; 5 con; 0-3 aty)
% Number of variables : 71 ( 9 sgn 23 !; 2 ?)
% Comments :
%------------------------------------------------------------------------------
fof(a_is_party_of_protocol,axiom,
'party$uof$uprotocol'(a) ).
fof(a_sent_message_i_to_b,axiom,
message(sent(a,b,pair(a,'an$ua$unonce'))) ).
fof(b_is_party_of_protocol,axiom,
'party$uof$uprotocol'(b) ).
fof(nonce_a_is_fresh_to_b,axiom,
'fresh$uto$ub'('an$ua$unonce') ).
fof(b_creates_freash_nonces_in_time,axiom,
! [X0,X1] :
( ( 'fresh$uto$ub'(X1)
& message(sent(X0,b,pair(X0,X1))) )
=> ( 'b$ustored'(pair(X0,X1))
& message(sent(b,t,triple(b,'generate$ub$unonce'(X1),encrypt(triple(X0,X1,'generate$uexpiration$utime'(X1)),bt)))) ) ) ).
fof(b_accepts_secure_session_key,axiom,
! [X0,X1,X2] :
( ( 'b$ustored'(pair(X1,X2))
& message(sent(X1,b,pair(encrypt(triple(X1,X0,'generate$uexpiration$utime'(X2)),bt),encrypt('generate$ub$unonce'(X2),X0)))) )
=> 'b$uholds'(key(X0,X1)) ) ).
fof(intruder_can_record,axiom,
! [X0,X1,X2] :
( message(sent(X0,X1,X2))
=> 'intruder$umessage'(X2) ) ).
fof(intruder_decomposes_pairs,axiom,
! [X0,X1] :
( 'intruder$umessage'(pair(X0,X1))
=> ( 'intruder$umessage'(X1)
& 'intruder$umessage'(X0) ) ) ).
fof(intruder_decomposes_triples,axiom,
! [X0,X1,X2] :
( 'intruder$umessage'(triple(X0,X1,X2))
=> ( 'intruder$umessage'(X2)
& 'intruder$umessage'(X1)
& 'intruder$umessage'(X0) ) ) ).
fof(intruder_composes_pairs,axiom,
! [X0,X1] :
( ( 'intruder$umessage'(X1)
& 'intruder$umessage'(X0) )
=> 'intruder$umessage'(pair(X0,X1)) ) ).
fof(intruder_message_sent,axiom,
! [X0,X1,X2] :
( ( 'party$uof$uprotocol'(X2)
& 'party$uof$uprotocol'(X1)
& 'intruder$umessage'(X0) )
=> message(sent(X1,X2,X0)) ) ).
fof(intruder_holds_key,axiom,
! [X0,X1] :
( ( 'party$uof$uprotocol'(X1)
& 'intruder$umessage'(X0) )
=> 'intruder$uholds'(key(X0,X1)) ) ).
fof(intruder_key_encrypts,axiom,
! [X0,X1,X2] :
( ( 'party$uof$uprotocol'(X2)
& 'intruder$uholds'(key(X1,X2))
& 'intruder$umessage'(X0) )
=> 'intruder$umessage'(encrypt(X0,X1)) ) ).
fof(co1,conjecture,
? [X0] :
( 'b$uholds'(key(X0,a))
& 'intruder$uholds'(key(X0,b)) ) ).
fof(negated_conjecture,negated_conjecture,
~ ? [X0] :
( 'b$uholds'(key(X0,a))
& 'intruder$uholds'(key(X0,b)) ),
inference(negate_conjecture,[status(cth)],[co1]) ).
cnf(c1,plain,
'party$uof$uprotocol'(a),
inference(clausification,[status(esa)],[a_is_party_of_protocol]) ).
cnf(c2,plain,
message(sent(a,b,pair(a,'an$ua$unonce'))),
inference(clausification,[status(esa)],[a_sent_message_i_to_b]) ).
cnf(c7,plain,
'party$uof$uprotocol'(b),
inference(clausification,[status(esa)],[b_is_party_of_protocol]) ).
cnf(c8,plain,
'fresh$uto$ub'('an$ua$unonce'),
inference(clausification,[status(esa)],[nonce_a_is_fresh_to_b]) ).
cnf(c9,plain,
( message(sent(b,t,triple(b,'generate$ub$unonce'(X1),encrypt(triple(X0,X1,'generate$uexpiration$utime'(X1)),bt))))
| ~ 'fresh$uto$ub'(X1)
| ~ message(sent(X0,b,pair(X0,X1))) ),
inference(clausification,[status(esa)],[b_creates_freash_nonces_in_time]) ).
cnf(c10,plain,
( 'b$ustored'(pair(X0,X1))
| ~ 'fresh$uto$ub'(X1)
| ~ message(sent(X0,b,pair(X0,X1))) ),
inference(clausification,[status(esa)],[b_creates_freash_nonces_in_time]) ).
cnf(c11,plain,
( 'b$uholds'(key(X1,X0))
| ~ 'b$ustored'(pair(X0,X2))
| ~ message(sent(X0,b,pair(encrypt(triple(X0,X1,'generate$uexpiration$utime'(X2)),bt),encrypt('generate$ub$unonce'(X2),X1)))) ),
inference(clausification,[status(esa)],[b_accepts_secure_session_key]) ).
cnf(c16,plain,
( 'intruder$umessage'(X2)
| ~ message(sent(X0,X1,X2)) ),
inference(clausification,[status(esa)],[intruder_can_record]) ).
cnf(c18,plain,
( 'intruder$umessage'(X1)
| ~ 'intruder$umessage'(pair(X0,X1)) ),
inference(clausification,[status(esa)],[intruder_decomposes_pairs]) ).
cnf(c20,plain,
( 'intruder$umessage'(X1)
| ~ 'intruder$umessage'(triple(X0,X1,X2)) ),
inference(clausification,[status(esa)],[intruder_decomposes_triples]) ).
cnf(c21,plain,
( 'intruder$umessage'(X2)
| ~ 'intruder$umessage'(triple(X0,X1,X2)) ),
inference(clausification,[status(esa)],[intruder_decomposes_triples]) ).
cnf(c26,plain,
( 'intruder$umessage'(pair(X0,X1))
| ~ 'intruder$umessage'(X1)
| ~ 'intruder$umessage'(X0) ),
inference(clausification,[status(esa)],[intruder_composes_pairs]) ).
cnf(c30,plain,
( message(sent(X1,X2,X0))
| ~ 'party$uof$uprotocol'(X2)
| ~ 'party$uof$uprotocol'(X1)
| ~ 'intruder$umessage'(X0) ),
inference(clausification,[status(esa)],[intruder_message_sent]) ).
cnf(c31,plain,
( 'intruder$uholds'(key(X0,X1))
| ~ 'party$uof$uprotocol'(X1)
| ~ 'intruder$umessage'(X0) ),
inference(clausification,[status(esa)],[intruder_holds_key]) ).
cnf(c32,plain,
( 'intruder$umessage'(encrypt(X0,X1))
| ~ 'party$uof$uprotocol'(X2)
| ~ 'intruder$uholds'(key(X1,X2))
| ~ 'intruder$umessage'(X0) ),
inference(clausification,[status(esa)],[intruder_key_encrypts]) ).
cnf(c37,plain,
( ~ 'b$uholds'(key(X0,a))
| ~ 'intruder$uholds'(key(X0,b)) ),
inference(clausification,[status(esa)],[negated_conjecture]) ).
cnf(d0,plain,
( ~ 'b$uholds'(key(X0,a))
| ~ 'intruder$umessage'(X0)
| ~ 'party$uof$uprotocol'(b) ),
inference(resolution,[status(thm)],[c31,c37]) ).
cnf(d1,plain,
( ~ 'intruder$umessage'(X0)
| ~ 'b$uholds'(key(X0,a)) ),
inference(resolution,[status(thm)],[c7,d0]) ).
cnf(d2,plain,
( ~ 'b$ustored'(pair(X0,X2))
| 'b$uholds'(key(X1,X0))
| ~ 'intruder$umessage'(pair(encrypt(triple(X0,X1,'generate$uexpiration$utime'(X2)),bt),encrypt('generate$ub$unonce'(X2),X1)))
| ~ 'party$uof$uprotocol'(b)
| ~ 'party$uof$uprotocol'(X0) ),
inference(resolution,[status(thm)],[c30,c11]) ).
cnf(d3,plain,
( ~ 'intruder$umessage'(pair(encrypt(triple(X0,X1,'generate$uexpiration$utime'(X2)),bt),encrypt('generate$ub$unonce'(X2),X1)))
| ~ 'b$ustored'(pair(X0,X2))
| 'b$uholds'(key(X1,X0))
| ~ 'party$uof$uprotocol'(X0) ),
inference(resolution,[status(thm)],[c7,d2]) ).
cnf(d4,plain,
( ~ 'intruder$umessage'(encrypt('generate$ub$unonce'(X2),X1))
| ~ 'intruder$umessage'(encrypt(triple(X0,X1,'generate$uexpiration$utime'(X2)),bt))
| ~ 'b$ustored'(pair(X0,X2))
| 'b$uholds'(key(X1,X0))
| ~ 'party$uof$uprotocol'(X0) ),
inference(resolution,[status(thm)],[d3,c26]) ).
cnf(d5,plain,
( ~ 'fresh$uto$ub'('an$ua$unonce')
| message(sent(b,t,triple(b,'generate$ub$unonce'('an$ua$unonce'),encrypt(triple(a,'an$ua$unonce','generate$uexpiration$utime'('an$ua$unonce')),bt)))) ),
inference(resolution,[status(thm)],[c9,c2]) ).
cnf(d6,plain,
message(sent(b,t,triple(b,'generate$ub$unonce'('an$ua$unonce'),encrypt(triple(a,'an$ua$unonce','generate$uexpiration$utime'('an$ua$unonce')),bt)))),
inference(resolution,[status(thm)],[c8,d5]) ).
cnf(d7,plain,
'intruder$umessage'(triple(b,'generate$ub$unonce'('an$ua$unonce'),encrypt(triple(a,'an$ua$unonce','generate$uexpiration$utime'('an$ua$unonce')),bt))),
inference(resolution,[status(thm)],[d6,c16]) ).
cnf(d8,plain,
'intruder$umessage'(encrypt(triple(a,'an$ua$unonce','generate$uexpiration$utime'('an$ua$unonce')),bt)),
inference(resolution,[status(thm)],[d7,c21]) ).
cnf(d9,plain,
( ~ 'intruder$umessage'(encrypt('generate$ub$unonce'('an$ua$unonce'),'an$ua$unonce'))
| ~ 'b$ustored'(pair(a,'an$ua$unonce'))
| 'b$uholds'(key('an$ua$unonce',a))
| ~ 'party$uof$uprotocol'(a) ),
inference(resolution,[status(thm)],[d8,d4]) ).
cnf(d10,plain,
( ~ 'intruder$umessage'(encrypt('generate$ub$unonce'('an$ua$unonce'),'an$ua$unonce'))
| ~ 'b$ustored'(pair(a,'an$ua$unonce'))
| 'b$uholds'(key('an$ua$unonce',a)) ),
inference(resolution,[status(thm)],[c1,d9]) ).
cnf(d11,plain,
( 'b$ustored'(pair(a,'an$ua$unonce'))
| ~ 'fresh$uto$ub'('an$ua$unonce') ),
inference(resolution,[status(thm)],[c10,c2]) ).
cnf(d12,plain,
'b$ustored'(pair(a,'an$ua$unonce')),
inference(resolution,[status(thm)],[c8,d11]) ).
cnf(d13,plain,
( ~ 'intruder$umessage'(encrypt('generate$ub$unonce'('an$ua$unonce'),'an$ua$unonce'))
| 'b$uholds'(key('an$ua$unonce',a)) ),
inference(resolution,[status(thm)],[d12,d10]) ).
cnf(d14,plain,
'intruder$umessage'(pair(a,'an$ua$unonce')),
inference(resolution,[status(thm)],[c16,c2]) ).
cnf(d15,plain,
'intruder$umessage'('an$ua$unonce'),
inference(resolution,[status(thm)],[d14,c18]) ).
cnf(d16,plain,
( ~ 'intruder$umessage'(X2)
| ~ 'party$uof$uprotocol'(X0)
| 'intruder$umessage'(encrypt(X1,X2))
| ~ 'intruder$umessage'(X1)
| ~ 'party$uof$uprotocol'(X0) ),
inference(resolution,[status(thm)],[c32,c31]) ).
cnf(d17,plain,
'intruder$umessage'('generate$ub$unonce'('an$ua$unonce')),
inference(resolution,[status(thm)],[d7,c20]) ).
cnf(d18,plain,
( 'intruder$umessage'(encrypt('generate$ub$unonce'('an$ua$unonce'),X1))
| ~ 'intruder$umessage'(X1)
| ~ 'party$uof$uprotocol'(X0) ),
inference(resolution,[status(thm)],[d17,d16]) ).
cnf(d19,plain,
( 'intruder$umessage'(encrypt('generate$ub$unonce'('an$ua$unonce'),'an$ua$unonce'))
| ~ 'party$uof$uprotocol'(X0) ),
inference(resolution,[status(thm)],[d18,d15]) ).
cnf(d20,plain,
'intruder$umessage'(encrypt('generate$ub$unonce'('an$ua$unonce'),'an$ua$unonce')),
inference(resolution,[status(thm)],[d19,c1]) ).
cnf(d21,plain,
'b$uholds'(key('an$ua$unonce',a)),
inference(resolution,[status(thm)],[d20,d13]) ).
cnf(d22,plain,
~ 'intruder$umessage'('an$ua$unonce'),
inference(resolution,[status(thm)],[d21,d1]) ).
cnf(d23,plain,
$false,
inference(resolution,[status(thm)],[d15,d22]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.04 % Problem : SWV014+1 : TPTP v9.3.1. Released v2.4.0.
% 0.00/0.06 % Command : casc-portfolio.sh -t 300 /export/starexec/sandbox2/benchmark/theBenchmark.p
% 0.16/0.43 % Computer : n003.cluster.edu
% 0.16/0.43 % Model : x86_64 x86_64
% 0.16/0.43 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.16/0.43 % Memory : 8046.5625MB
% 0.16/0.43 % OS : Linux 6.8.0-71-generic
% 0.16/0.44 % CPULimit : 300
% 0.16/0.44 % WCLimit : 300
% 0.16/0.44 % DateTime : Sat Sep 26 13:06:54 UTC 2026
% 0.16/0.44 % CPUTime :
% 0.16/0.44 Running casc-portfolio.sh -t 300 /export/starexec/sandbox2/benchmark/theBenchmark.p
% 10.41/4.55 % SZS status Theorem for theBenchmark.p
% 10.41/4.55 % SZS output start CNFRefutation for theBenchmark.p
% See solution above
%------------------------------------------------------------------------------