TSTP Solution File: SWV014-1 by SnakeForV---1.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : SnakeForV---1.0
% Problem  : SWV014-1 : TPTP v8.1.0. Released v2.4.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : vampire --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule snake_tptp_uns --cores 0 -t %d %s

% Computer : n003.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 : Wed Aug 31 18:43:50 EDT 2022

% Result   : Unsatisfiable 0.17s 0.52s
% Output   : Refutation 0.17s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   17
%            Number of leaves      :   19
% Syntax   : Number of formulae    :   50 (  10 unt;   0 def)
%            Number of atoms       :  147 (   0 equ)
%            Maximal formula atoms :    6 (   2 avg)
%            Number of connectives :  213 ( 116   ~;  95   |;   0   &)
%                                         (   2 <=>;   0  =>;   0  <=;   0 <~>)
%            Maximal formula depth :    9 (   5 avg)
%            Maximal term depth    :    6 (   2 avg)
%            Number of predicates  :   10 (   9 usr;   1 prp; 0-1 aty)
%            Number of functors    :   12 (  12 usr;   5 con; 0-3 aty)
%            Number of variables   :   82 (  82   !;   0   ?)

% Comments : 
%------------------------------------------------------------------------------
fof(f86,plain,
    $false,
    inference(unit_resulting_resolution,[],[f1,f40,f64,f83]) ).

fof(f83,plain,
    ! [X0,X1] :
      ( ~ intruder_message(encrypt(triple(a,X0,generate_expiration_time(an_a_nonce)),bt))
      | ~ intruder_message(X0)
      | ~ party_of_protocol(X1) ),
    inference(duplicate_literal_removal,[],[f82]) ).

fof(f82,plain,
    ! [X0,X1] :
      ( ~ intruder_message(encrypt(triple(a,X0,generate_expiration_time(an_a_nonce)),bt))
      | ~ party_of_protocol(X1)
      | ~ intruder_message(X0)
      | ~ party_of_protocol(X1) ),
    inference(resolution,[],[f81,f29]) ).

fof(f29,axiom,
    ! [X0,X4] :
      ( intruder_holds(key(X0,X4))
      | ~ party_of_protocol(X4)
      | ~ intruder_message(X0) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_holds_key_32) ).

fof(f81,plain,
    ! [X0,X1] :
      ( ~ intruder_holds(key(X0,X1))
      | ~ intruder_message(encrypt(triple(a,X0,generate_expiration_time(an_a_nonce)),bt))
      | ~ party_of_protocol(X1) ),
    inference(subsumption_resolution,[],[f80,f48]) ).

fof(f48,plain,
    ! [X2,X0,X1] :
      ( ~ intruder_holds(key(X0,X2))
      | ~ intruder_message(X1)
      | intruder_message(X0)
      | ~ party_of_protocol(X2) ),
    inference(subsumption_resolution,[],[f47,f35]) ).

fof(f35,plain,
    ! [X3,X4] :
      ( sP0(X4)
      | ~ party_of_protocol(X3)
      | ~ intruder_holds(key(X4,X3)) ),
    inference(cnf_transformation,[],[f35_D]) ).

fof(f35_D,plain,
    ! [X4] :
      ( ! [X3] :
          ( ~ party_of_protocol(X3)
          | ~ intruder_holds(key(X4,X3)) )
    <=> ~ sP0(X4) ),
    introduced(general_splitting_component_introduction,[new_symbols(naming,[sP0])]) ).

fof(f47,plain,
    ! [X2,X0,X1] :
      ( ~ sP0(X0)
      | ~ intruder_message(X1)
      | ~ intruder_holds(key(X0,X2))
      | intruder_message(X0)
      | ~ party_of_protocol(X2) ),
    inference(resolution,[],[f46,f37]) ).

fof(f37,plain,
    ! [X3,X4] :
      ( sP1(X4)
      | ~ party_of_protocol(X3)
      | ~ intruder_holds(key(X4,X3)) ),
    inference(cnf_transformation,[],[f37_D]) ).

fof(f37_D,plain,
    ! [X4] :
      ( ! [X3] :
          ( ~ party_of_protocol(X3)
          | ~ intruder_holds(key(X4,X3)) )
    <=> ~ sP1(X4) ),
    introduced(general_splitting_component_introduction,[new_symbols(naming,[sP1])]) ).

fof(f46,plain,
    ! [X0,X1] :
      ( ~ sP1(X1)
      | ~ sP0(X1)
      | intruder_message(X1)
      | ~ intruder_message(X0) ),
    inference(resolution,[],[f38,f36]) ).

fof(f36,plain,
    ! [X0,X4] :
      ( ~ intruder_message(encrypt(X0,X4))
      | intruder_message(X4)
      | ~ sP0(X4) ),
    inference(general_splitting,[],[f27,f35_D]) ).

fof(f27,axiom,
    ! [X3,X0,X4] :
      ( ~ party_of_protocol(X3)
      | ~ intruder_message(encrypt(X0,X4))
      | ~ intruder_holds(key(X4,X3))
      | intruder_message(X4) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_interception_30) ).

fof(f38,plain,
    ! [X0,X4] :
      ( intruder_message(encrypt(X0,X4))
      | ~ intruder_message(X0)
      | ~ sP1(X4) ),
    inference(general_splitting,[],[f30,f37_D]) ).

fof(f30,axiom,
    ! [X3,X0,X4] :
      ( intruder_message(encrypt(X0,X4))
      | ~ party_of_protocol(X3)
      | ~ intruder_message(X0)
      | ~ intruder_holds(key(X4,X3)) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_key_encrypts_33) ).

fof(f80,plain,
    ! [X0,X1] :
      ( ~ intruder_message(X0)
      | ~ intruder_holds(key(X0,X1))
      | ~ intruder_message(encrypt(triple(a,X0,generate_expiration_time(an_a_nonce)),bt))
      | ~ party_of_protocol(X1) ),
    inference(resolution,[],[f79,f37]) ).

fof(f79,plain,
    ! [X0] :
      ( ~ sP1(X0)
      | ~ intruder_message(encrypt(triple(a,X0,generate_expiration_time(an_a_nonce)),bt))
      | ~ intruder_message(X0) ),
    inference(subsumption_resolution,[],[f78,f6]) ).

fof(f6,axiom,
    fresh_to_b(an_a_nonce),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',nonce_a_is_fresh_to_b_9) ).

fof(f78,plain,
    ! [X0] :
      ( ~ fresh_to_b(an_a_nonce)
      | ~ intruder_message(encrypt(triple(a,X0,generate_expiration_time(an_a_nonce)),bt))
      | ~ intruder_message(X0)
      | ~ sP1(X0) ),
    inference(subsumption_resolution,[],[f77,f2]) ).

fof(f2,axiom,
    message(sent(a,b,pair(a,an_a_nonce))),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',a_sent_message_i_to_b_3) ).

fof(f77,plain,
    ! [X0] :
      ( ~ message(sent(a,b,pair(a,an_a_nonce)))
      | ~ intruder_message(X0)
      | ~ intruder_message(encrypt(triple(a,X0,generate_expiration_time(an_a_nonce)),bt))
      | ~ sP1(X0)
      | ~ fresh_to_b(an_a_nonce) ),
    inference(resolution,[],[f76,f65]) ).

fof(f65,plain,
    intruder_message(generate_b_nonce(an_a_nonce)),
    inference(resolution,[],[f61,f18]) ).

fof(f18,axiom,
    ! [X3,X0,X4] :
      ( ~ intruder_message(triple(X0,X4,X3))
      | intruder_message(X4) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_decomposes_triples_21) ).

fof(f61,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(resolution,[],[f60,f2]) ).

fof(f60,plain,
    ! [X0] :
      ( ~ message(sent(X0,b,pair(X0,an_a_nonce)))
      | intruder_message(triple(b,generate_b_nonce(an_a_nonce),encrypt(triple(X0,an_a_nonce,generate_expiration_time(an_a_nonce)),bt))) ),
    inference(resolution,[],[f59,f6]) ).

fof(f59,plain,
    ! [X0,X1] :
      ( ~ fresh_to_b(X1)
      | intruder_message(triple(b,generate_b_nonce(X1),encrypt(triple(X0,X1,generate_expiration_time(X1)),bt)))
      | ~ message(sent(X0,b,pair(X0,X1))) ),
    inference(resolution,[],[f7,f14]) ).

fof(f14,axiom,
    ! [X3,X0,X4] :
      ( ~ message(sent(X0,X4,X3))
      | intruder_message(X3) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_can_record_17) ).

fof(f7,axiom,
    ! [X0,X4] :
      ( message(sent(b,t,triple(b,generate_b_nonce(X4),encrypt(triple(X0,X4,generate_expiration_time(X4)),bt))))
      | ~ message(sent(X0,b,pair(X0,X4)))
      | ~ fresh_to_b(X4) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',b_creates_freash_nonces_in_time_10) ).

fof(f76,plain,
    ! [X0,X1] :
      ( ~ intruder_message(generate_b_nonce(X1))
      | ~ intruder_message(encrypt(triple(a,X0,generate_expiration_time(X1)),bt))
      | ~ message(sent(a,b,pair(a,X1)))
      | ~ sP1(X0)
      | ~ fresh_to_b(X1)
      | ~ intruder_message(X0) ),
    inference(resolution,[],[f75,f38]) ).

fof(f75,plain,
    ! [X0,X1] :
      ( ~ intruder_message(encrypt(generate_b_nonce(X0),X1))
      | ~ intruder_message(X1)
      | ~ fresh_to_b(X0)
      | ~ message(sent(a,b,pair(a,X0)))
      | ~ intruder_message(encrypt(triple(a,X1,generate_expiration_time(X0)),bt)) ),
    inference(resolution,[],[f74,f24]) ).

fof(f24,axiom,
    ! [X0,X4] :
      ( intruder_message(pair(X0,X4))
      | ~ intruder_message(X0)
      | ~ intruder_message(X4) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_composes_pairs_27) ).

fof(f74,plain,
    ! [X0,X1] :
      ( ~ intruder_message(pair(encrypt(triple(a,X1,generate_expiration_time(X0)),bt),encrypt(generate_b_nonce(X0),X1)))
      | ~ message(sent(a,b,pair(a,X0)))
      | ~ intruder_message(X1)
      | ~ fresh_to_b(X0) ),
    inference(subsumption_resolution,[],[f73,f5]) ).

fof(f5,axiom,
    party_of_protocol(b),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',b_is_party_of_protocol_8) ).

fof(f73,plain,
    ! [X0,X1] :
      ( ~ intruder_message(pair(encrypt(triple(a,X1,generate_expiration_time(X0)),bt),encrypt(generate_b_nonce(X0),X1)))
      | ~ intruder_message(X1)
      | ~ message(sent(a,b,pair(a,X0)))
      | ~ fresh_to_b(X0)
      | ~ party_of_protocol(b) ),
    inference(subsumption_resolution,[],[f72,f1]) ).

fof(f72,plain,
    ! [X0,X1] :
      ( ~ intruder_message(pair(encrypt(triple(a,X1,generate_expiration_time(X0)),bt),encrypt(generate_b_nonce(X0),X1)))
      | ~ fresh_to_b(X0)
      | ~ party_of_protocol(a)
      | ~ party_of_protocol(b)
      | ~ message(sent(a,b,pair(a,X0)))
      | ~ intruder_message(X1) ),
    inference(resolution,[],[f71,f28]) ).

fof(f28,axiom,
    ! [X3,X0,X4] :
      ( message(sent(X4,X3,X0))
      | ~ intruder_message(X0)
      | ~ party_of_protocol(X4)
      | ~ party_of_protocol(X3) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_message_sent_31) ).

fof(f71,plain,
    ! [X0,X1] :
      ( ~ message(sent(a,b,pair(encrypt(triple(a,X0,generate_expiration_time(X1)),bt),encrypt(generate_b_nonce(X1),X0))))
      | ~ fresh_to_b(X1)
      | ~ message(sent(a,b,pair(a,X1)))
      | ~ intruder_message(X0) ),
    inference(resolution,[],[f67,f8]) ).

fof(f8,axiom,
    ! [X0,X4] :
      ( b_stored(pair(X0,X4))
      | ~ fresh_to_b(X4)
      | ~ message(sent(X0,b,pair(X0,X4))) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',b_creates_freash_nonces_in_time_11) ).

fof(f67,plain,
    ! [X0,X1] :
      ( ~ b_stored(pair(a,X0))
      | ~ intruder_message(X1)
      | ~ message(sent(a,b,pair(encrypt(triple(a,X1,generate_expiration_time(X0)),bt),encrypt(generate_b_nonce(X0),X1)))) ),
    inference(resolution,[],[f9,f45]) ).

fof(f45,plain,
    ! [X0] :
      ( ~ b_holds(key(X0,a))
      | ~ intruder_message(X0) ),
    inference(subsumption_resolution,[],[f44,f5]) ).

fof(f44,plain,
    ! [X0] :
      ( ~ b_holds(key(X0,a))
      | ~ intruder_message(X0)
      | ~ party_of_protocol(b) ),
    inference(resolution,[],[f29,f34]) ).

fof(f34,axiom,
    ! [X0] :
      ( ~ intruder_holds(key(X0,b))
      | ~ b_holds(key(X0,a)) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',co1_38) ).

fof(f9,axiom,
    ! [X3,X0,X4] :
      ( b_holds(key(X4,X0))
      | ~ b_stored(pair(X0,X3))
      | ~ message(sent(X0,b,pair(encrypt(triple(X0,X4,generate_expiration_time(X3)),bt),encrypt(generate_b_nonce(X3),X4)))) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',b_accepts_secure_session_key_12) ).

fof(f64,plain,
    intruder_message(encrypt(triple(a,an_a_nonce,generate_expiration_time(an_a_nonce)),bt)),
    inference(resolution,[],[f61,f19]) ).

fof(f19,axiom,
    ! [X3,X0,X4] :
      ( ~ intruder_message(triple(X0,X4,X3))
      | intruder_message(X3) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_decomposes_triples_22) ).

fof(f40,plain,
    intruder_message(an_a_nonce),
    inference(resolution,[],[f39,f16]) ).

fof(f16,axiom,
    ! [X0,X4] :
      ( ~ intruder_message(pair(X0,X4))
      | intruder_message(X4) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_decomposes_pairs_19) ).

fof(f39,plain,
    intruder_message(pair(a,an_a_nonce)),
    inference(resolution,[],[f14,f2]) ).

fof(f1,axiom,
    party_of_protocol(a),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',a_is_party_of_protocol_2) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.03/0.11  % Problem    : SWV014-1 : TPTP v8.1.0. Released v2.4.0.
% 0.03/0.12  % Command    : vampire --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule snake_tptp_uns --cores 0 -t %d %s
% 0.11/0.32  % Computer : n003.cluster.edu
% 0.11/0.32  % Model    : x86_64 x86_64
% 0.11/0.32  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.11/0.32  % Memory   : 8042.1875MB
% 0.11/0.32  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.11/0.32  % CPULimit   : 300
% 0.11/0.32  % WCLimit    : 300
% 0.11/0.32  % DateTime   : Tue Aug 30 18:55:52 EDT 2022
% 0.11/0.33  % CPUTime    : 
% 0.17/0.49  % (24976)dis+1011_3:29_av=off:awrs=decay:awrsf=32:bce=on:drc=off:fde=unused:gsp=on:irw=on:nwc=2.0:spb=goal_then_units:updr=off:urr=ec_only:i=29:si=on:rawr=on:rtra=on_0 on theBenchmark for (2999ds/29Mi)
% 0.17/0.49  % (24974)lrs+10_1:1_drc=off:sp=reverse_frequency:spb=goal:to=lpo:i=5:si=on:rawr=on:rtra=on_0 on theBenchmark for (2999ds/5Mi)
% 0.17/0.50  % (24974)Instruction limit reached!
% 0.17/0.50  % (24974)------------------------------
% 0.17/0.50  % (24974)Version: Vampire 4.7 (commit 807e37dd9 on 2022-08-23 09:55:27 +0200)
% 0.17/0.50  % (24990)lrs+10_1:1_sos=all:ss=axioms:st=1.5:i=20:si=on:rawr=on:rtra=on_0 on theBenchmark for (2999ds/20Mi)
% 0.17/0.50  % (24976)First to succeed.
% 0.17/0.50  % (24968)dis+21_1:1_av=off:er=filter:slsq=on:slsqc=0:slsqr=1,1:sp=frequency:to=lpo:i=49:si=on:rawr=on:rtra=on_0 on theBenchmark for (2999ds/49Mi)
% 0.17/0.51  % (24982)lrs+10_1:7_av=off:awrs=converge:awrsf=40:br=off:bsd=on:cond=on:drc=off:nwc=3.0:plsq=on:plsqc=1:s2a=on:s2agt=16:to=lpo:urr=on:i=6:si=on:rawr=on:rtra=on_0 on theBenchmark for (2999ds/6Mi)
% 0.17/0.51  % (24974)Linked with Z3 4.8.13.0 f03d756e086f81f2596157241e0decfb1c982299 z3-4.8.4-5390-gf03d756e0
% 0.17/0.51  % (24974)Termination reason: Unknown
% 0.17/0.51  % (24974)Termination phase: Saturation
% 0.17/0.51  
% 0.17/0.51  % (24974)Memory used [KB]: 5884
% 0.17/0.51  % (24974)Time elapsed: 0.110 s
% 0.17/0.51  % (24974)Instructions burned: 6 (million)
% 0.17/0.51  % (24974)------------------------------
% 0.17/0.51  % (24974)------------------------------
% 0.17/0.51  % (24982)Instruction limit reached!
% 0.17/0.51  % (24982)------------------------------
% 0.17/0.51  % (24982)Version: Vampire 4.7 (commit 807e37dd9 on 2022-08-23 09:55:27 +0200)
% 0.17/0.51  % (24984)ott+21_1:1_erd=off:s2a=on:sac=on:sd=1:sgt=64:sos=on:ss=included:st=3.0:to=lpo:urr=on:i=97:si=on:rawr=on:rtra=on_0 on theBenchmark for (2999ds/97Mi)
% 0.17/0.51  % (24982)Linked with Z3 4.8.13.0 f03d756e086f81f2596157241e0decfb1c982299 z3-4.8.4-5390-gf03d756e0
% 0.17/0.51  % (24982)Termination reason: Unknown
% 0.17/0.51  % (24982)Termination phase: Saturation
% 0.17/0.51  
% 0.17/0.51  % (24982)Memory used [KB]: 1407
% 0.17/0.51  % (24982)Time elapsed: 0.125 s
% 0.17/0.51  % (24982)Instructions burned: 6 (million)
% 0.17/0.51  % (24982)------------------------------
% 0.17/0.51  % (24982)------------------------------
% 0.17/0.52  % (24968)Also succeeded, but the first one will report.
% 0.17/0.52  % (24976)Refutation found. Thanks to Tanya!
% 0.17/0.52  % SZS status Unsatisfiable for theBenchmark
% 0.17/0.52  % SZS output start Proof for theBenchmark
% See solution above
% 0.17/0.52  % (24976)------------------------------
% 0.17/0.52  % (24976)Version: Vampire 4.7 (commit 807e37dd9 on 2022-08-23 09:55:27 +0200)
% 0.17/0.52  % (24976)Linked with Z3 4.8.13.0 f03d756e086f81f2596157241e0decfb1c982299 z3-4.8.4-5390-gf03d756e0
% 0.17/0.52  % (24976)Termination reason: Refutation
% 0.17/0.52  
% 0.17/0.52  % (24976)Memory used [KB]: 1535
% 0.17/0.52  % (24976)Time elapsed: 0.112 s
% 0.17/0.52  % (24976)Instructions burned: 8 (million)
% 0.17/0.52  % (24976)------------------------------
% 0.17/0.52  % (24976)------------------------------
% 0.17/0.52  % (24961)Success in time 0.184 s
%------------------------------------------------------------------------------