TSTP Solution File: SWV017+1 by Prover9---1109a

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Prover9---1109a
% Problem  : SWV017+1 : TPTP v8.1.0. Released v2.4.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : tptp2X_and_run_prover9 %d %s

% 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  : 600s
% DateTime : Wed Jul 20 21:10:15 EDT 2022

% Result   : Timeout 300.03s 300.30s
% Output   : None 
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----No solution output by system
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem  : SWV017+1 : TPTP v8.1.0. Released v2.4.0.
% 0.07/0.13  % Command  : tptp2X_and_run_prover9 %d %s
% 0.14/0.34  % Computer : n015.cluster.edu
% 0.14/0.34  % Model    : x86_64 x86_64
% 0.14/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.34  % Memory   : 8042.1875MB
% 0.14/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.34  % CPULimit : 300
% 0.14/0.34  % WCLimit  : 600
% 0.14/0.34  % DateTime : Wed Jun 15 16:38:55 EDT 2022
% 0.14/0.34  % CPUTime  : 
% 0.77/1.03  ============================== Prover9 ===============================
% 0.77/1.03  Prover9 (32) version 2009-11A, November 2009.
% 0.77/1.03  Process 30774 was started by sandbox2 on n015.cluster.edu,
% 0.77/1.03  Wed Jun 15 16:38:56 2022
% 0.77/1.03  The command was "/export/starexec/sandbox2/solver/bin/prover9 -t 300 -f /tmp/Prover9_30610_n015.cluster.edu".
% 0.77/1.03  ============================== end of head ===========================
% 0.77/1.03  
% 0.77/1.03  ============================== INPUT =================================
% 0.77/1.03  
% 0.77/1.03  % Reading from file /tmp/Prover9_30610_n015.cluster.edu
% 0.77/1.03  
% 0.77/1.03  set(prolog_style_variables).
% 0.77/1.03  set(auto2).
% 0.77/1.03      % set(auto2) -> set(auto).
% 0.77/1.03      % set(auto) -> set(auto_inference).
% 0.77/1.03      % set(auto) -> set(auto_setup).
% 0.77/1.03      % set(auto_setup) -> set(predicate_elim).
% 0.77/1.03      % set(auto_setup) -> assign(eq_defs, unfold).
% 0.77/1.03      % set(auto) -> set(auto_limits).
% 0.77/1.03      % set(auto_limits) -> assign(max_weight, "100.000").
% 0.77/1.03      % set(auto_limits) -> assign(sos_limit, 20000).
% 0.77/1.03      % set(auto) -> set(auto_denials).
% 0.77/1.03      % set(auto) -> set(auto_process).
% 0.77/1.03      % set(auto2) -> assign(new_constants, 1).
% 0.77/1.03      % set(auto2) -> assign(fold_denial_max, 3).
% 0.77/1.03      % set(auto2) -> assign(max_weight, "200.000").
% 0.77/1.03      % set(auto2) -> assign(max_hours, 1).
% 0.77/1.03      % assign(max_hours, 1) -> assign(max_seconds, 3600).
% 0.77/1.03      % set(auto2) -> assign(max_seconds, 0).
% 0.77/1.03      % set(auto2) -> assign(max_minutes, 5).
% 0.77/1.03      % assign(max_minutes, 5) -> assign(max_seconds, 300).
% 0.77/1.03      % set(auto2) -> set(sort_initial_sos).
% 0.77/1.03      % set(auto2) -> assign(sos_limit, -1).
% 0.77/1.03      % set(auto2) -> assign(lrs_ticks, 3000).
% 0.77/1.03      % set(auto2) -> assign(max_megs, 400).
% 0.77/1.03      % set(auto2) -> assign(stats, some).
% 0.77/1.03      % set(auto2) -> clear(echo_input).
% 0.77/1.03      % set(auto2) -> set(quiet).
% 0.77/1.03      % set(auto2) -> clear(print_initial_clauses).
% 0.77/1.03      % set(auto2) -> clear(print_given).
% 0.77/1.03  assign(lrs_ticks,-1).
% 0.77/1.03  assign(sos_limit,10000).
% 0.77/1.03  assign(order,kbo).
% 0.77/1.03  set(lex_order_vars).
% 0.77/1.03  clear(print_given).
% 0.77/1.03  
% 0.77/1.03  % formulas(sos).  % not echoed (33 formulas)
% 0.77/1.03  
% 0.77/1.03  ============================== end of input ==========================
% 0.77/1.03  
% 0.77/1.03  % From the command line: assign(max_seconds, 300).
% 0.77/1.03  
% 0.77/1.03  ============================== PROCESS NON-CLAUSAL FORMULAS ==========
% 0.77/1.03  
% 0.77/1.03  % Formulas that are not ordinary clauses:
% 0.77/1.03  1 (all U all V all W all X all Y all Z (message(sent(t,a,triple(encrypt(quadruple(Y,Z,W,V),at),X,U))) & a_stored(pair(Y,Z)) -> message(sent(a,Y,pair(X,encrypt(U,W)))) & a_holds(key(W,Y)))) # label(a_forwards_secure) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.03  2 (all U all V (message(sent(U,b,pair(U,V))) & fresh_to_b(V) -> message(sent(b,t,triple(b,generate_b_nonce(V),encrypt(triple(U,V,generate_expiration_time(V)),bt)))) & b_stored(pair(U,V)))) # label(b_creates_freash_nonces_in_time) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.03  3 (all V all X all Y (message(sent(X,b,pair(encrypt(triple(X,V,generate_expiration_time(Y)),bt),encrypt(generate_b_nonce(Y),V)))) & a_key(V) & b_stored(pair(X,Y)) -> b_holds(key(V,X)))) # label(b_accepts_secure_session_key) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.03  4 (all U all V all W all X all Y all Z all X1 (message(sent(U,t,triple(U,V,encrypt(triple(W,X,Y),Z)))) & t_holds(key(Z,U)) & t_holds(key(X1,W)) & a_nonce(X) -> message(sent(t,W,triple(encrypt(quadruple(U,X,generate_key(X),Y),X1),encrypt(triple(W,generate_key(X),Y),Z),V))))) # label(server_t_generates_key) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.03  5 (all U all V all W (message(sent(U,V,W)) -> intruder_message(W))) # label(intruder_can_record) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.03  6 (all U all V (intruder_message(pair(U,V)) -> intruder_message(U) & intruder_message(V))) # label(intruder_decomposes_pairs) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.03  7 (all U all V all W (intruder_message(triple(U,V,W)) -> intruder_message(U) & intruder_message(V) & intruder_message(W))) # label(intruder_decomposes_triples) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.03  8 (all U all V all W all X (intruder_message(quadruple(U,V,W,X)) -> intruder_message(U) & intruder_message(V) & intruder_message(W) & intruder_message(X))) # label(intruder_decomposes_quadruples) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  9 (all U all V (intruder_message(U) & intruder_message(V) -> intruder_message(pair(U,V)))) # label(intruder_composes_pairs) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  10 (all U all V all W (intruder_message(U) & intruder_message(V) & intruder_message(W) -> intruder_message(triple(U,V,W)))) # label(intruder_composes_triples) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  11 (all U all V all W all X (intruder_message(U) & intruder_message(V) & intruder_message(W) & intruder_message(X) -> intruder_message(quadruple(U,V,W,X)))) # label(intruder_composes_quadruples) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  12 (all U all V all W (intruder_message(encrypt(U,V)) & intruder_holds(key(V,W)) & party_of_protocol(W) -> intruder_message(V))) # label(intruder_interception) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  13 (all U all V all W (intruder_message(U) & party_of_protocol(V) & party_of_protocol(W) -> message(sent(V,W,U)))) # label(intruder_message_sent) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  14 (all V all W (intruder_message(V) & party_of_protocol(W) -> intruder_holds(key(V,W)))) # label(intruder_holds_key) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  15 (all U all V all W (intruder_message(U) & intruder_holds(key(V,W)) & party_of_protocol(W) -> intruder_message(encrypt(U,V)))) # label(intruder_key_encrypts) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  16 (all U -a_nonce(generate_key(U))) # label(generated_keys_are_not_nonces) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  17 (all U (a_nonce(generate_expiration_time(U)) & a_nonce(generate_b_nonce(U)))) # label(generated_times_and_nonces_are_nonces) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  18 (all U -(a_key(U) & a_nonce(U))) # label(nothing_is_a_nonce_and_a_key) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  19 (all U a_key(generate_key(U))) # label(generated_keys_are_keys) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  20 (all U (fresh_intruder_nonce(U) -> fresh_intruder_nonce(generate_intruder_nonce(U)))) # label(can_generate_more_fresh_intruder_nonces) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  21 (all U (fresh_intruder_nonce(U) -> fresh_to_b(U) & intruder_message(U))) # label(fresh_intruder_nonces_are_fresh_to_b) # label(axiom) # label(non_clause).  [assumption].
% 0.77/1.04  
% 0.77/1.04  ============================== end of process non-clausal formulas ===
% 0.77/1.04  
% 0.77/1.04  ============================== PROCESS INITIAL CLAUSES ===============
% 0.77/1.04  
% 0.77/1.04  ============================== PREDICATE ELIMINATION =================
% 0.77/1.04  22 -message(sent(A,b,pair(A,B))) | -fresh_to_b(B) | b_stored(pair(A,B)) # label(b_creates_freash_nonces_in_time) # label(axiom).  [clausify(2)].
% 0.77/1.04  23 fresh_to_b(an_a_nonce) # label(nonce_a_is_fresh_to_b) # label(axiom).  [assumption].
% 0.77/1.04  24 -fresh_intruder_nonce(A) | fresh_to_b(A) # label(fresh_intruder_nonces_are_fresh_to_b) # label(axiom).  [clausify(21)].
% 0.77/1.04  Derived: -message(sent(A,b,pair(A,an_a_nonce))) | b_stored(pair(A,an_a_nonce)).  [resolve(22,b,23,a)].
% 0.77/1.04  Derived: -message(sent(A,b,pair(A,B))) | b_stored(pair(A,B)) | -fresh_intruder_nonce(B).  [resolve(22,b,24,b)].
% 0.77/1.04  25 -message(sent(A,b,pair(A,B))) | -fresh_to_b(B) | message(sent(b,t,triple(b,generate_b_nonce(B),encrypt(triple(A,B,generate_expiration_time(B)),bt)))) # label(b_creates_freash_nonces_in_time) # label(axiom).  [clausify(2)].
% 0.77/1.04  Derived: -message(sent(A,b,pair(A,an_a_nonce))) | 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)))).  [resolve(25,b,23,a)].
% 0.77/1.04  Derived: -message(sent(A,b,pair(A,B))) | message(sent(b,t,triple(b,generate_b_nonce(B),encrypt(triple(A,B,generate_expiration_time(B)),bt)))) | -fresh_intruder_nonce(B).  [resolve(25,b,24,b)].
% 0.77/1.04  26 -a_nonce(generate_key(A)) # label(generated_keys_are_not_nonces) # label(axiom).  [clausify(16)].
% 0.77/1.04  27 a_nonce(an_a_nonce) # label(an_a_nonce_is_a_nonce) # label(axiom).  [assumption].
% 0.77/1.04  28 a_nonce(generate_expiration_time(A)) # label(generated_times_and_nonces_are_nonces) # label(axiom).  [clausify(17)].
% 0.77/1.04  29 a_nonce(generate_b_nonce(A)) # label(generated_times_and_nonces_are_nonces) # label(axiom).  [clausify(17)].
% 1.12/1.44  30 -a_key(A) | -a_nonce(A) # label(nothing_is_a_nonce_and_a_key) # label(axiom).  [clausify(18)].
% 1.12/1.44  Derived: -a_key(an_a_nonce).  [resolve(30,b,27,a)].
% 1.12/1.44  Derived: -a_key(generate_expiration_time(A)).  [resolve(30,b,28,a)].
% 1.12/1.44  Derived: -a_key(generate_b_nonce(A)).  [resolve(30,b,29,a)].
% 1.12/1.44  31 -message(sent(A,t,triple(A,B,encrypt(triple(C,D,E),F)))) | -t_holds(key(F,A)) | -t_holds(key(V6,C)) | -a_nonce(D) | message(sent(t,C,triple(encrypt(quadruple(A,D,generate_key(D),E),V6),encrypt(triple(C,generate_key(D),E),F),B))) # label(server_t_generates_key) # label(axiom).  [clausify(4)].
% 1.12/1.44  Derived: -message(sent(A,t,triple(A,B,encrypt(triple(C,an_a_nonce,D),E)))) | -t_holds(key(E,A)) | -t_holds(key(F,C)) | message(sent(t,C,triple(encrypt(quadruple(A,an_a_nonce,generate_key(an_a_nonce),D),F),encrypt(triple(C,generate_key(an_a_nonce),D),E),B))).  [resolve(31,d,27,a)].
% 1.12/1.44  Derived: -message(sent(A,t,triple(A,B,encrypt(triple(C,generate_expiration_time(D),E),F)))) | -t_holds(key(F,A)) | -t_holds(key(V6,C)) | message(sent(t,C,triple(encrypt(quadruple(A,generate_expiration_time(D),generate_key(generate_expiration_time(D)),E),V6),encrypt(triple(C,generate_key(generate_expiration_time(D)),E),F),B))).  [resolve(31,d,28,a)].
% 1.12/1.44  Derived: -message(sent(A,t,triple(A,B,encrypt(triple(C,generate_b_nonce(D),E),F)))) | -t_holds(key(F,A)) | -t_holds(key(V6,C)) | message(sent(t,C,triple(encrypt(quadruple(A,generate_b_nonce(D),generate_key(generate_b_nonce(D)),E),V6),encrypt(triple(C,generate_key(generate_b_nonce(D)),E),F),B))).  [resolve(31,d,29,a)].
% 1.12/1.44  32 -message(sent(A,b,pair(encrypt(triple(A,B,generate_expiration_time(C)),bt),encrypt(generate_b_nonce(C),B)))) | -a_key(B) | -b_stored(pair(A,C)) | b_holds(key(B,A)) # label(b_accepts_secure_session_key) # label(axiom).  [clausify(3)].
% 1.12/1.44  33 a_key(generate_key(A)) # label(generated_keys_are_keys) # label(axiom).  [clausify(19)].
% 1.12/1.44  Derived: -message(sent(A,b,pair(encrypt(triple(A,generate_key(B),generate_expiration_time(C)),bt),encrypt(generate_b_nonce(C),generate_key(B))))) | -b_stored(pair(A,C)) | b_holds(key(generate_key(B),A)).  [resolve(32,b,33,a)].
% 1.12/1.44  34 -a_key(an_a_nonce).  [resolve(30,b,27,a)].
% 1.12/1.44  35 -a_key(generate_expiration_time(A)).  [resolve(30,b,28,a)].
% 1.12/1.44  36 -a_key(generate_b_nonce(A)).  [resolve(30,b,29,a)].
% 1.12/1.44  37 -message(sent(t,a,triple(encrypt(quadruple(A,B,C,D),at),E,F))) | -a_stored(pair(A,B)) | message(sent(a,A,pair(E,encrypt(F,C)))) # label(a_forwards_secure) # label(axiom).  [clausify(1)].
% 1.12/1.44  38 a_stored(pair(b,an_a_nonce)) # label(a_stored_message_i) # label(axiom).  [assumption].
% 1.12/1.44  Derived: -message(sent(t,a,triple(encrypt(quadruple(b,an_a_nonce,A,B),at),C,D))) | message(sent(a,b,pair(C,encrypt(D,A)))).  [resolve(37,b,38,a)].
% 1.12/1.44  39 -intruder_message(encrypt(A,B)) | -intruder_holds(key(B,C)) | -party_of_protocol(C) | intruder_message(B) # label(intruder_interception) # label(axiom).  [clausify(12)].
% 1.12/1.44  40 -intruder_message(A) | -party_of_protocol(B) | intruder_holds(key(A,B)) # label(intruder_holds_key) # label(axiom).  [clausify(14)].
% 1.12/1.44  41 -intruder_message(A) | -intruder_holds(key(B,C)) | -party_of_protocol(C) | intruder_message(encrypt(A,B)) # label(intruder_key_encrypts) # label(axiom).  [clausify(15)].
% 1.12/1.44  Derived: -intruder_message(A) | -party_of_protocol(B) | intruder_message(encrypt(A,C)) | -intruder_message(C) | -party_of_protocol(B).  [resolve(41,b,40,c)].
% 1.12/1.44  
% 1.12/1.44  ============================== end predicate elimination =============
% 1.12/1.44  
% 1.12/1.44  Auto_denials:  (no changes).
% 1.12/1.44  
% 1.12/1.44  Term ordering decisions:
% 1.12/1.44  Function symbol KB weights:  b=1. an_a_nonce=1. t=1. a=1. bt=1. at=1. an_intruder_nonce=1. encrypt=1. key=1. pair=1. generate_b_nonce=1. generate_expiration_time=1. generate_key=1. generate_intruder_nonce=1. triple=1. sent=1. quadruple=1.
% 1.12/1.44  
% 1.12/1.44  ============================== end of process initial clauses ========
% 1.12/1.44  
% 1.12/1.44  ============================== CLAUSES FOR SEARCH ====================
% 1.12/1.44  
% 1.12/1.44  ============================== end of clauses for search =============
% 1.12/1.44  
% 1.12/1.44  ============================== SEARCH ================================
% 1.12/1.44  
% 1.12/1.44  % Starting search at 0.02 seconds.
% 1.12/1.44  
% 1.12/1.44  Low Water (keep): wt=1Cputime limit exceeded (core dumped)
%------------------------------------------------------------------------------