TSTP Solution File: SWV014-1 by Beagle---0.9.51

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Beagle---0.9.51
% Problem  : SWV014-1 : TPTP v8.1.2. Released v2.4.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : java -Dfile.encoding=UTF-8 -Xms512M -Xmx4G -Xss10M -jar /export/starexec/sandbox/solver/bin/beagle.jar -auto -q -proof -print tff -smtsolver /export/starexec/sandbox/solver/bin/cvc4-1.4-x86_64-linux-opt -liasolver cooper -t %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  : 300s
% DateTime : Tue Aug 22 11:02:39 EDT 2023

% Result   : Unsatisfiable 3.73s 1.94s
% Output   : CNFRefutation 3.87s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   10
%            Number of leaves      :   41
% Syntax   : Number of formulae    :   84 (  22 unt;  25 typ;   0 def)
%            Number of atoms       :  129 (   0 equ)
%            Maximal formula atoms :    5 (   2 avg)
%            Number of connectives :  148 (  78   ~;  70   |;   0   &)
%                                         (   0 <=>;   0  =>;   0  <=;   0 <~>)
%            Maximal formula depth :    9 (   4 avg)
%            Maximal term depth    :    6 (   2 avg)
%            Number of types       :    2 (   0 usr)
%            Number of type conns  :   29 (  19   >;  10   *;   0   +;   0  <<)
%            Number of predicates  :   11 (  10 usr;   1 prp; 0-1 aty)
%            Number of functors    :   15 (  15 usr;   6 con; 0-4 aty)
%            Number of variables   :   77 (;  77   !;   0   ?;   0   :)

% Comments : 
%------------------------------------------------------------------------------
%$ t_holds > party_of_protocol > message > intruder_message > intruder_holds > fresh_to_b > b_stored > b_holds > a_stored > a_nonce > quadruple > triple > sent > pair > key > encrypt > #nlpp > generate_key > generate_expiration_time > generate_b_nonce > t > bt > b > at > an_a_nonce > a

%Foreground sorts:

%Background operators:

%Foreground operators:
tff(sent,type,
    sent: ( $i * $i * $i ) > $i ).

tff(b_stored,type,
    b_stored: $i > $o ).

tff(fresh_to_b,type,
    fresh_to_b: $i > $o ).

tff(a,type,
    a: $i ).

tff(t,type,
    t: $i ).

tff(encrypt,type,
    encrypt: ( $i * $i ) > $i ).

tff(key,type,
    key: ( $i * $i ) > $i ).

tff(b_holds,type,
    b_holds: $i > $o ).

tff(an_a_nonce,type,
    an_a_nonce: $i ).

tff(b,type,
    b: $i ).

tff(at,type,
    at: $i ).

tff(t_holds,type,
    t_holds: $i > $o ).

tff(message,type,
    message: $i > $o ).

tff(generate_key,type,
    generate_key: $i > $i ).

tff(a_stored,type,
    a_stored: $i > $o ).

tff(pair,type,
    pair: ( $i * $i ) > $i ).

tff(party_of_protocol,type,
    party_of_protocol: $i > $o ).

tff(triple,type,
    triple: ( $i * $i * $i ) > $i ).

tff(intruder_holds,type,
    intruder_holds: $i > $o ).

tff(generate_b_nonce,type,
    generate_b_nonce: $i > $i ).

tff(quadruple,type,
    quadruple: ( $i * $i * $i * $i ) > $i ).

tff(a_nonce,type,
    a_nonce: $i > $o ).

tff(intruder_message,type,
    intruder_message: $i > $o ).

tff(bt,type,
    bt: $i ).

tff(generate_expiration_time,type,
    generate_expiration_time: $i > $i ).

tff(f_24,axiom,
    message(sent(a,b,pair(a,an_a_nonce))),
    file(unknown,unknown) ).

tff(f_81,axiom,
    ! [C,A,B] :
      ( intruder_message(C)
      | ~ message(sent(A,B,C)) ),
    file(unknown,unknown) ).

tff(f_91,axiom,
    ! [B,A] :
      ( intruder_message(B)
      | ~ intruder_message(pair(A,B)) ),
    file(unknown,unknown) ).

tff(f_35,axiom,
    fresh_to_b(an_a_nonce),
    file(unknown,unknown) ).

tff(f_43,axiom,
    ! [B,A] :
      ( message(sent(b,t,triple(b,generate_b_nonce(B),encrypt(triple(A,B,generate_expiration_time(B)),bt))))
      | ~ fresh_to_b(B)
      | ~ message(sent(A,b,pair(A,B))) ),
    file(unknown,unknown) ).

tff(f_101,axiom,
    ! [B,A,C] :
      ( intruder_message(B)
      | ~ intruder_message(triple(A,B,C)) ),
    file(unknown,unknown) ).

tff(f_189,axiom,
    ! [A,B] :
      ( intruder_holds(key(A,B))
      | ~ intruder_message(A)
      | ~ party_of_protocol(B) ),
    file(unknown,unknown) ).

tff(f_200,axiom,
    ! [A,B,C] :
      ( intruder_message(encrypt(A,B))
      | ~ intruder_holds(key(B,C))
      | ~ intruder_message(A)
      | ~ party_of_protocol(C) ),
    file(unknown,unknown) ).

tff(f_34,axiom,
    party_of_protocol(b),
    file(unknown,unknown) ).

tff(f_23,axiom,
    party_of_protocol(a),
    file(unknown,unknown) ).

tff(f_51,axiom,
    ! [A,B] :
      ( b_stored(pair(A,B))
      | ~ fresh_to_b(B)
      | ~ message(sent(A,b,pair(A,B))) ),
    file(unknown,unknown) ).

tff(f_106,axiom,
    ! [C,A,B] :
      ( intruder_message(C)
      | ~ intruder_message(triple(A,B,C)) ),
    file(unknown,unknown) ).

tff(f_134,axiom,
    ! [A,B] :
      ( intruder_message(pair(A,B))
      | ~ intruder_message(B)
      | ~ intruder_message(A) ),
    file(unknown,unknown) ).

tff(f_181,axiom,
    ! [B,C,A] :
      ( message(sent(B,C,A))
      | ~ intruder_message(A)
      | ~ party_of_protocol(C)
      | ~ party_of_protocol(B) ),
    file(unknown,unknown) ).

tff(f_59,axiom,
    ! [B,A,C] :
      ( b_holds(key(B,A))
      | ~ b_stored(pair(A,C))
      | ~ message(sent(A,b,pair(encrypt(triple(A,B,generate_expiration_time(C)),bt),encrypt(generate_b_nonce(C),B)))) ),
    file(unknown,unknown) ).

tff(f_211,axiom,
    ! [A] :
      ( ~ b_holds(key(A,a))
      | ~ intruder_holds(key(A,b)) ),
    file(unknown,unknown) ).

tff(c_4,plain,
    message(sent(a,b,pair(a,an_a_nonce))),
    inference(cnfTransformation,[status(thm)],[f_24]) ).

tff(c_28,plain,
    ! [A_22,B_23,C_21] :
      ( ~ message(sent(A_22,B_23,C_21))
      | intruder_message(C_21) ),
    inference(cnfTransformation,[status(thm)],[f_81]) ).

tff(c_80,plain,
    intruder_message(pair(a,an_a_nonce)),
    inference(resolution,[status(thm)],[c_4,c_28]) ).

tff(c_32,plain,
    ! [A_27,B_26] :
      ( ~ intruder_message(pair(A_27,B_26))
      | intruder_message(B_26) ),
    inference(cnfTransformation,[status(thm)],[f_91]) ).

tff(c_88,plain,
    intruder_message(an_a_nonce),
    inference(resolution,[status(thm)],[c_80,c_32]) ).

tff(c_12,plain,
    fresh_to_b(an_a_nonce),
    inference(cnfTransformation,[status(thm)],[f_35]) ).

tff(c_207,plain,
    ! [A_149,B_150] :
      ( ~ message(sent(A_149,b,pair(A_149,B_150)))
      | ~ fresh_to_b(B_150)
      | message(sent(b,t,triple(b,generate_b_nonce(B_150),encrypt(triple(A_149,B_150,generate_expiration_time(B_150)),bt)))) ),
    inference(cnfTransformation,[status(thm)],[f_43]) ).

tff(c_212,plain,
    ( ~ fresh_to_b(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)))) ),
    inference(resolution,[status(thm)],[c_4,c_207]) ).

tff(c_218,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(demodulation,[status(thm),theory(equality)],[c_12,c_212]) ).

tff(c_222,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,[status(thm)],[c_218,c_28]) ).

tff(c_36,plain,
    ! [A_32,B_31,C_33] :
      ( ~ intruder_message(triple(A_32,B_31,C_33))
      | intruder_message(B_31) ),
    inference(cnfTransformation,[status(thm)],[f_101]) ).

tff(c_234,plain,
    intruder_message(generate_b_nonce(an_a_nonce)),
    inference(resolution,[status(thm)],[c_222,c_36]) ).

tff(c_58,plain,
    ! [B_69,A_68] :
      ( ~ party_of_protocol(B_69)
      | ~ intruder_message(A_68)
      | intruder_holds(key(A_68,B_69)) ),
    inference(cnfTransformation,[status(thm)],[f_189]) ).

tff(c_131,plain,
    ! [C_125,A_126,B_127] :
      ( ~ party_of_protocol(C_125)
      | ~ intruder_message(A_126)
      | ~ intruder_holds(key(B_127,C_125))
      | intruder_message(encrypt(A_126,B_127)) ),
    inference(cnfTransformation,[status(thm)],[f_200]) ).

tff(c_134,plain,
    ! [A_126,A_68,B_69] :
      ( ~ intruder_message(A_126)
      | intruder_message(encrypt(A_126,A_68))
      | ~ party_of_protocol(B_69)
      | ~ intruder_message(A_68) ),
    inference(resolution,[status(thm)],[c_58,c_131]) ).

tff(c_135,plain,
    ! [B_69] : ~ party_of_protocol(B_69),
    inference(splitLeft,[status(thm)],[c_134]) ).

tff(c_10,plain,
    party_of_protocol(b),
    inference(cnfTransformation,[status(thm)],[f_34]) ).

tff(c_139,plain,
    $false,
    inference(negUnitSimplification,[status(thm)],[c_135,c_10]) ).

tff(c_140,plain,
    ! [A_126,A_68] :
      ( ~ intruder_message(A_126)
      | intruder_message(encrypt(A_126,A_68))
      | ~ intruder_message(A_68) ),
    inference(splitRight,[status(thm)],[c_134]) ).

tff(c_2,plain,
    party_of_protocol(a),
    inference(cnfTransformation,[status(thm)],[f_23]) ).

tff(c_145,plain,
    ! [A_130,B_131] :
      ( ~ message(sent(A_130,b,pair(A_130,B_131)))
      | ~ fresh_to_b(B_131)
      | b_stored(pair(A_130,B_131)) ),
    inference(cnfTransformation,[status(thm)],[f_51]) ).

tff(c_152,plain,
    ( ~ fresh_to_b(an_a_nonce)
    | b_stored(pair(a,an_a_nonce)) ),
    inference(resolution,[status(thm)],[c_4,c_145]) ).

tff(c_158,plain,
    b_stored(pair(a,an_a_nonce)),
    inference(demodulation,[status(thm),theory(equality)],[c_12,c_152]) ).

tff(c_38,plain,
    ! [A_35,B_36,C_34] :
      ( ~ intruder_message(triple(A_35,B_36,C_34))
      | intruder_message(C_34) ),
    inference(cnfTransformation,[status(thm)],[f_106]) ).

tff(c_233,plain,
    intruder_message(encrypt(triple(a,an_a_nonce,generate_expiration_time(an_a_nonce)),bt)),
    inference(resolution,[status(thm)],[c_222,c_38]) ).

tff(c_48,plain,
    ! [A_53,B_54] :
      ( ~ intruder_message(A_53)
      | ~ intruder_message(B_54)
      | intruder_message(pair(A_53,B_54)) ),
    inference(cnfTransformation,[status(thm)],[f_134]) ).

tff(c_56,plain,
    ! [B_65,C_66,A_67] :
      ( ~ party_of_protocol(B_65)
      | ~ party_of_protocol(C_66)
      | ~ intruder_message(A_67)
      | message(sent(B_65,C_66,A_67)) ),
    inference(cnfTransformation,[status(thm)],[f_181]) ).

tff(c_188,plain,
    ! [A_140,B_141,C_142] :
      ( ~ message(sent(A_140,b,pair(encrypt(triple(A_140,B_141,generate_expiration_time(C_142)),bt),encrypt(generate_b_nonce(C_142),B_141))))
      | ~ b_stored(pair(A_140,C_142))
      | b_holds(key(B_141,A_140)) ),
    inference(cnfTransformation,[status(thm)],[f_59]) ).

tff(c_192,plain,
    ! [B_65,C_142,B_141] :
      ( ~ b_stored(pair(B_65,C_142))
      | b_holds(key(B_141,B_65))
      | ~ party_of_protocol(B_65)
      | ~ party_of_protocol(b)
      | ~ intruder_message(pair(encrypt(triple(B_65,B_141,generate_expiration_time(C_142)),bt),encrypt(generate_b_nonce(C_142),B_141))) ),
    inference(resolution,[status(thm)],[c_56,c_188]) ).

tff(c_196,plain,
    ! [B_143,C_144,B_145] :
      ( ~ b_stored(pair(B_143,C_144))
      | b_holds(key(B_145,B_143))
      | ~ party_of_protocol(B_143)
      | ~ intruder_message(pair(encrypt(triple(B_143,B_145,generate_expiration_time(C_144)),bt),encrypt(generate_b_nonce(C_144),B_145))) ),
    inference(demodulation,[status(thm),theory(equality)],[c_10,c_192]) ).

tff(c_200,plain,
    ! [B_143,C_144,B_145] :
      ( ~ b_stored(pair(B_143,C_144))
      | b_holds(key(B_145,B_143))
      | ~ party_of_protocol(B_143)
      | ~ intruder_message(encrypt(triple(B_143,B_145,generate_expiration_time(C_144)),bt))
      | ~ intruder_message(encrypt(generate_b_nonce(C_144),B_145)) ),
    inference(resolution,[status(thm)],[c_48,c_196]) ).

tff(c_244,plain,
    ( ~ b_stored(pair(a,an_a_nonce))
    | b_holds(key(an_a_nonce,a))
    | ~ party_of_protocol(a)
    | ~ intruder_message(encrypt(generate_b_nonce(an_a_nonce),an_a_nonce)) ),
    inference(resolution,[status(thm)],[c_233,c_200]) ).

tff(c_249,plain,
    ( b_holds(key(an_a_nonce,a))
    | ~ intruder_message(encrypt(generate_b_nonce(an_a_nonce),an_a_nonce)) ),
    inference(demodulation,[status(thm),theory(equality)],[c_2,c_158,c_244]) ).

tff(c_259,plain,
    ~ intruder_message(encrypt(generate_b_nonce(an_a_nonce),an_a_nonce)),
    inference(splitLeft,[status(thm)],[c_249]) ).

tff(c_262,plain,
    ( ~ intruder_message(generate_b_nonce(an_a_nonce))
    | ~ intruder_message(an_a_nonce) ),
    inference(resolution,[status(thm)],[c_140,c_259]) ).

tff(c_266,plain,
    $false,
    inference(demodulation,[status(thm),theory(equality)],[c_88,c_234,c_262]) ).

tff(c_267,plain,
    b_holds(key(an_a_nonce,a)),
    inference(splitRight,[status(thm)],[c_249]) ).

tff(c_101,plain,
    ! [B_105,A_106] :
      ( ~ party_of_protocol(B_105)
      | ~ intruder_message(A_106)
      | intruder_holds(key(A_106,B_105)) ),
    inference(cnfTransformation,[status(thm)],[f_189]) ).

tff(c_68,plain,
    ! [A_75] :
      ( ~ intruder_holds(key(A_75,b))
      | ~ b_holds(key(A_75,a)) ),
    inference(cnfTransformation,[status(thm)],[f_211]) ).

tff(c_105,plain,
    ! [A_106] :
      ( ~ b_holds(key(A_106,a))
      | ~ party_of_protocol(b)
      | ~ intruder_message(A_106) ),
    inference(resolution,[status(thm)],[c_101,c_68]) ).

tff(c_108,plain,
    ! [A_106] :
      ( ~ b_holds(key(A_106,a))
      | ~ intruder_message(A_106) ),
    inference(demodulation,[status(thm),theory(equality)],[c_10,c_105]) ).

tff(c_283,plain,
    ~ intruder_message(an_a_nonce),
    inference(resolution,[status(thm)],[c_267,c_108]) ).

tff(c_287,plain,
    $false,
    inference(demodulation,[status(thm),theory(equality)],[c_88,c_283]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.14  % Problem  : SWV014-1 : TPTP v8.1.2. Released v2.4.0.
% 0.00/0.15  % Command  : java -Dfile.encoding=UTF-8 -Xms512M -Xmx4G -Xss10M -jar /export/starexec/sandbox/solver/bin/beagle.jar -auto -q -proof -print tff -smtsolver /export/starexec/sandbox/solver/bin/cvc4-1.4-x86_64-linux-opt -liasolver cooper -t %d %s
% 0.14/0.36  % Computer : n015.cluster.edu
% 0.14/0.36  % Model    : x86_64 x86_64
% 0.14/0.36  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.36  % Memory   : 8042.1875MB
% 0.14/0.36  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.36  % CPULimit : 300
% 0.14/0.36  % WCLimit  : 300
% 0.14/0.36  % DateTime : Thu Aug  3 23:21:14 EDT 2023
% 0.14/0.36  % CPUTime  : 
% 3.73/1.94  % SZS status Unsatisfiable for /export/starexec/sandbox/benchmark/theBenchmark.p
% 3.73/1.95  
% 3.73/1.95  % SZS output start CNFRefutation for /export/starexec/sandbox/benchmark/theBenchmark.p
% See solution above
% 3.87/1.98  
% 3.87/1.98  Inference rules
% 3.87/1.98  ----------------------
% 3.87/1.98  #Ref     : 0
% 3.87/1.98  #Sup     : 37
% 3.87/1.98  #Fact    : 0
% 3.87/1.98  #Define  : 0
% 3.87/1.98  #Split   : 3
% 3.87/1.98  #Chain   : 0
% 3.87/1.98  #Close   : 0
% 3.87/1.98  
% 3.87/1.98  Ordering : KBO
% 3.87/1.98  
% 3.87/1.98  Simplification rules
% 3.87/1.98  ----------------------
% 3.87/1.98  #Subsume      : 5
% 3.87/1.98  #Demod        : 19
% 3.87/1.98  #Tautology    : 12
% 3.87/1.98  #SimpNegUnit  : 4
% 3.87/1.98  #BackRed      : 3
% 3.87/1.98  
% 3.87/1.98  #Partial instantiations: 0
% 3.87/1.98  #Strategies tried      : 1
% 3.87/1.98  
% 3.87/1.98  Timing (in seconds)
% 3.87/1.98  ----------------------
% 3.87/1.99  Preprocessing        : 0.51
% 3.87/1.99  Parsing              : 0.28
% 3.87/1.99  CNF conversion       : 0.03
% 3.87/1.99  Main loop            : 0.38
% 3.87/1.99  Inferencing          : 0.15
% 3.87/1.99  Reduction            : 0.10
% 3.87/1.99  Demodulation         : 0.07
% 3.87/1.99  BG Simplification    : 0.02
% 3.87/1.99  Subsumption          : 0.08
% 3.87/1.99  Abstraction          : 0.01
% 3.87/1.99  MUC search           : 0.00
% 3.87/1.99  Cooper               : 0.00
% 3.87/1.99  Total                : 0.95
% 3.87/1.99  Index Insertion      : 0.00
% 3.87/1.99  Index Deletion       : 0.00
% 3.87/1.99  Index Matching       : 0.00
% 3.87/1.99  BG Taut test         : 0.00
%------------------------------------------------------------------------------