↑ Up

CSE_E---1.7.THM-CRf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : CSE_E---1.7
% Problem  : SWV014+1 : TPTP v9.2.1. Released v2.4.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : /export/starexec/sandbox/solver/bin/lemma_parallel_prover %s --lemma-prover /export/starexec/sandbox/solver/bin/cse --final-prover /export/starexec/sandbox/solver/bin/eprover --proof-time %d --global-time-limit %d

% Computer : n028.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 May  5 05:20:36 PM UTC 2026

% Result   : Theorem 1.26s 1.73s
% Output   : CNFRefutation 1.26s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   11
%            Number of leaves      :   14
% Syntax   : Number of formulae    :   58 (  18 unt;   0 def)
%            Number of atoms       :  143 (   0 equ)
%            Maximal formula atoms :    6 (   2 avg)
%            Number of connectives :  147 (  62   ~;  58   |;  18   &)
%                                         (   0 <=>;   9  =>;   0  <=;   0 <~>)
%            Maximal formula depth :    8 (   4 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   :   88 (   8 sgn  47   !;   2   ?)

% Comments : 
%------------------------------------------------------------------------------
fof(b_creates_freash_nonces_in_time,axiom,
    ! [X1,X2] :
      ( ( message(sent(X1,b,pair(X1,X2)))
        & fresh_to_b(X2) )
     => ( message(sent(b,t,triple(b,generate_b_nonce(X2),encrypt(triple(X1,X2,generate_expiration_time(X2)),bt))))
        & b_stored(pair(X1,X2)) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',b_creates_freash_nonces_in_time) ).

fof(b_accepts_secure_session_key,axiom,
    ! [X2,X4,X5] :
      ( ( message(sent(X4,b,pair(encrypt(triple(X4,X2,generate_expiration_time(X5)),bt),encrypt(generate_b_nonce(X5),X2))))
        & b_stored(pair(X4,X5)) )
     => b_holds(key(X2,X4)) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',b_accepts_secure_session_key) ).

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

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

fof(intruder_message_sent,axiom,
    ! [X1,X2,X3] :
      ( ( intruder_message(X1)
        & party_of_protocol(X2)
        & party_of_protocol(X3) )
     => message(sent(X2,X3,X1)) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_message_sent) ).

fof(intruder_key_encrypts,axiom,
    ! [X1,X2,X3] :
      ( ( intruder_message(X1)
        & intruder_holds(key(X2,X3))
        & party_of_protocol(X3) )
     => intruder_message(encrypt(X1,X2)) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_key_encrypts) ).

fof(intruder_holds_key,axiom,
    ! [X2,X3] :
      ( ( intruder_message(X2)
        & party_of_protocol(X3) )
     => intruder_holds(key(X2,X3)) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_holds_key) ).

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

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

fof(intruder_composes_pairs,axiom,
    ! [X1,X2] :
      ( ( intruder_message(X1)
        & intruder_message(X2) )
     => intruder_message(pair(X1,X2)) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_composes_pairs) ).

fof(intruder_can_record,axiom,
    ! [X1,X2,X3] :
      ( message(sent(X1,X2,X3))
     => intruder_message(X3) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_can_record) ).

fof(intruder_decomposes_triples,axiom,
    ! [X1,X2,X3] :
      ( intruder_message(triple(X1,X2,X3))
     => ( intruder_message(X1)
        & intruder_message(X2)
        & intruder_message(X3) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_decomposes_triples) ).

fof(intruder_decomposes_pairs,axiom,
    ! [X1,X2] :
      ( intruder_message(pair(X1,X2))
     => ( intruder_message(X1)
        & intruder_message(X2) ) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',intruder_decomposes_pairs) ).

fof(co1,conjecture,
    ? [X1] :
      ( intruder_holds(key(X1,b))
      & b_holds(key(X1,a)) ),
    file('/export/starexec/sandbox/benchmark/theBenchmark.p',co1) ).

fof(c_0_14,plain,
    ! [X67,X68] :
      ( ( message(sent(b,t,triple(b,generate_b_nonce(X68),encrypt(triple(X67,X68,generate_expiration_time(X68)),bt))))
        | ~ message(sent(X67,b,pair(X67,X68)))
        | ~ fresh_to_b(X68) )
      & ( b_stored(pair(X67,X68))
        | ~ message(sent(X67,b,pair(X67,X68)))
        | ~ fresh_to_b(X68) ) ),
    inference(distribute,[status(thm)],[inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[b_creates_freash_nonces_in_time])])]) ).

fof(c_0_15,plain,
    ! [X69,X70,X71] :
      ( ~ message(sent(X70,b,pair(encrypt(triple(X70,X69,generate_expiration_time(X71)),bt),encrypt(generate_b_nonce(X71),X69))))
      | ~ b_stored(pair(X70,X71))
      | b_holds(key(X69,X70)) ),
    inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[b_accepts_secure_session_key])]) ).

cnf(c_0_16,plain,
    ( b_stored(pair(X1,X2))
    | ~ message(sent(X1,b,pair(X1,X2)))
    | ~ fresh_to_b(X2) ),
    inference(split_conjunct,[status(thm)],[c_0_14]) ).

cnf(c_0_17,plain,
    message(sent(a,b,pair(a,an_a_nonce))),
    inference(split_conjunct,[status(thm)],[a_sent_message_i_to_b]) ).

cnf(c_0_18,plain,
    fresh_to_b(an_a_nonce),
    inference(split_conjunct,[status(thm)],[nonce_a_is_fresh_to_b]) ).

cnf(c_0_19,plain,
    ( b_holds(key(X2,X1))
    | ~ message(sent(X1,b,pair(encrypt(triple(X1,X2,generate_expiration_time(X3)),bt),encrypt(generate_b_nonce(X3),X2))))
    | ~ b_stored(pair(X1,X3)) ),
    inference(split_conjunct,[status(thm)],[c_0_15]) ).

cnf(c_0_20,plain,
    b_stored(pair(a,an_a_nonce)),
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_16,c_0_17]),c_0_18])]) ).

fof(c_0_21,plain,
    ! [X103,X104,X105] :
      ( ~ intruder_message(X103)
      | ~ party_of_protocol(X104)
      | ~ party_of_protocol(X105)
      | message(sent(X104,X105,X103)) ),
    inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_message_sent])]) ).

fof(c_0_22,plain,
    ! [X108,X109,X110] :
      ( ~ intruder_message(X108)
      | ~ intruder_holds(key(X109,X110))
      | ~ party_of_protocol(X110)
      | intruder_message(encrypt(X108,X109)) ),
    inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_key_encrypts])]) ).

fof(c_0_23,plain,
    ! [X106,X107] :
      ( ~ intruder_message(X106)
      | ~ party_of_protocol(X107)
      | intruder_holds(key(X106,X107)) ),
    inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_holds_key])]) ).

cnf(c_0_24,plain,
    ( b_holds(key(X1,a))
    | ~ message(sent(a,b,pair(encrypt(triple(a,X1,generate_expiration_time(an_a_nonce)),bt),encrypt(generate_b_nonce(an_a_nonce),X1)))) ),
    inference(spm,[status(thm)],[c_0_19,c_0_20]) ).

cnf(c_0_25,plain,
    ( message(sent(X2,X3,X1))
    | ~ intruder_message(X1)
    | ~ party_of_protocol(X2)
    | ~ party_of_protocol(X3) ),
    inference(split_conjunct,[status(thm)],[c_0_21]) ).

cnf(c_0_26,plain,
    party_of_protocol(b),
    inference(split_conjunct,[status(thm)],[b_is_party_of_protocol]) ).

cnf(c_0_27,plain,
    party_of_protocol(a),
    inference(split_conjunct,[status(thm)],[a_is_party_of_protocol]) ).

fof(c_0_28,plain,
    ! [X91,X92] :
      ( ~ intruder_message(X91)
      | ~ intruder_message(X92)
      | intruder_message(pair(X91,X92)) ),
    inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_composes_pairs])]) ).

cnf(c_0_29,plain,
    ( intruder_message(encrypt(X1,X2))
    | ~ intruder_message(X1)
    | ~ intruder_holds(key(X2,X3))
    | ~ party_of_protocol(X3) ),
    inference(split_conjunct,[status(thm)],[c_0_22]) ).

cnf(c_0_30,plain,
    ( intruder_holds(key(X1,X2))
    | ~ intruder_message(X1)
    | ~ party_of_protocol(X2) ),
    inference(split_conjunct,[status(thm)],[c_0_23]) ).

fof(c_0_31,plain,
    ! [X79,X80,X81] :
      ( ~ message(sent(X79,X80,X81))
      | intruder_message(X81) ),
    inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_can_record])]) ).

cnf(c_0_32,plain,
    ( message(sent(b,t,triple(b,generate_b_nonce(X1),encrypt(triple(X2,X1,generate_expiration_time(X1)),bt))))
    | ~ message(sent(X2,b,pair(X2,X1)))
    | ~ fresh_to_b(X1) ),
    inference(split_conjunct,[status(thm)],[c_0_14]) ).

cnf(c_0_33,plain,
    ( b_holds(key(X1,a))
    | ~ intruder_message(pair(encrypt(triple(a,X1,generate_expiration_time(an_a_nonce)),bt),encrypt(generate_b_nonce(an_a_nonce),X1))) ),
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_24,c_0_25]),c_0_26]),c_0_27])]) ).

cnf(c_0_34,plain,
    ( intruder_message(pair(X1,X2))
    | ~ intruder_message(X1)
    | ~ intruder_message(X2) ),
    inference(split_conjunct,[status(thm)],[c_0_28]) ).

cnf(c_0_35,plain,
    ( intruder_message(encrypt(X1,X2))
    | ~ intruder_message(X1)
    | ~ intruder_message(X2)
    | ~ party_of_protocol(X3) ),
    inference(spm,[status(thm)],[c_0_29,c_0_30]) ).

fof(c_0_36,plain,
    ! [X84,X85,X86] :
      ( ( intruder_message(X84)
        | ~ intruder_message(triple(X84,X85,X86)) )
      & ( intruder_message(X85)
        | ~ intruder_message(triple(X84,X85,X86)) )
      & ( intruder_message(X86)
        | ~ intruder_message(triple(X84,X85,X86)) ) ),
    inference(distribute,[status(thm)],[inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_decomposes_triples])])]) ).

cnf(c_0_37,plain,
    ( intruder_message(X3)
    | ~ message(sent(X1,X2,X3)) ),
    inference(split_conjunct,[status(thm)],[c_0_31]) ).

cnf(c_0_38,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(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_32,c_0_17]),c_0_18])]) ).

cnf(c_0_39,plain,
    ( b_holds(key(X1,a))
    | ~ intruder_message(encrypt(triple(a,X1,generate_expiration_time(an_a_nonce)),bt))
    | ~ intruder_message(encrypt(generate_b_nonce(an_a_nonce),X1)) ),
    inference(spm,[status(thm)],[c_0_33,c_0_34]) ).

cnf(c_0_40,plain,
    ( intruder_message(encrypt(X1,X2))
    | ~ intruder_message(X1)
    | ~ intruder_message(X2) ),
    inference(spm,[status(thm)],[c_0_35,c_0_26]) ).

cnf(c_0_41,plain,
    ( intruder_message(X1)
    | ~ intruder_message(triple(X2,X1,X3)) ),
    inference(split_conjunct,[status(thm)],[c_0_36]) ).

cnf(c_0_42,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(spm,[status(thm)],[c_0_37,c_0_38]) ).

fof(c_0_43,plain,
    ! [X82,X83] :
      ( ( intruder_message(X82)
        | ~ intruder_message(pair(X82,X83)) )
      & ( intruder_message(X83)
        | ~ intruder_message(pair(X82,X83)) ) ),
    inference(distribute,[status(thm)],[inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[intruder_decomposes_pairs])])]) ).

fof(c_0_44,negated_conjecture,
    ~ ? [X1] :
        ( intruder_holds(key(X1,b))
        & b_holds(key(X1,a)) ),
    inference(assume_negation,[status(cth)],[co1]) ).

cnf(c_0_45,plain,
    ( b_holds(key(X1,a))
    | ~ intruder_message(encrypt(triple(a,X1,generate_expiration_time(an_a_nonce)),bt))
    | ~ intruder_message(generate_b_nonce(an_a_nonce))
    | ~ intruder_message(X1) ),
    inference(spm,[status(thm)],[c_0_39,c_0_40]) ).

cnf(c_0_46,plain,
    intruder_message(generate_b_nonce(an_a_nonce)),
    inference(spm,[status(thm)],[c_0_41,c_0_42]) ).

cnf(c_0_47,plain,
    ( intruder_message(X1)
    | ~ intruder_message(triple(X2,X3,X1)) ),
    inference(split_conjunct,[status(thm)],[c_0_36]) ).

cnf(c_0_48,plain,
    ( intruder_message(X1)
    | ~ intruder_message(pair(X2,X1)) ),
    inference(split_conjunct,[status(thm)],[c_0_43]) ).

cnf(c_0_49,plain,
    intruder_message(pair(a,an_a_nonce)),
    inference(spm,[status(thm)],[c_0_37,c_0_17]) ).

fof(c_0_50,negated_conjecture,
    ! [X113] :
      ( ~ intruder_holds(key(X113,b))
      | ~ b_holds(key(X113,a)) ),
    inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[c_0_44])]) ).

cnf(c_0_51,plain,
    ( b_holds(key(X1,a))
    | ~ intruder_message(encrypt(triple(a,X1,generate_expiration_time(an_a_nonce)),bt))
    | ~ intruder_message(X1) ),
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_45,c_0_46])]) ).

cnf(c_0_52,plain,
    intruder_message(encrypt(triple(a,an_a_nonce,generate_expiration_time(an_a_nonce)),bt)),
    inference(spm,[status(thm)],[c_0_47,c_0_42]) ).

cnf(c_0_53,plain,
    intruder_message(an_a_nonce),
    inference(spm,[status(thm)],[c_0_48,c_0_49]) ).

cnf(c_0_54,negated_conjecture,
    ( ~ intruder_holds(key(X1,b))
    | ~ b_holds(key(X1,a)) ),
    inference(split_conjunct,[status(thm)],[c_0_50]) ).

cnf(c_0_55,plain,
    b_holds(key(an_a_nonce,a)),
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_51,c_0_52]),c_0_53])]) ).

cnf(c_0_56,negated_conjecture,
    ~ intruder_holds(key(an_a_nonce,b)),
    inference(spm,[status(thm)],[c_0_54,c_0_55]) ).

cnf(c_0_57,negated_conjecture,
    $false,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[inference(spm,[status(thm)],[c_0_56,c_0_30]),c_0_53]),c_0_26])]),
    [proof] ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem    : SWV014+1 : TPTP v9.2.1. Released v2.4.0.
% 0.00/0.12  % Command    : /export/starexec/sandbox/solver/bin/lemma_parallel_prover %s --lemma-prover /export/starexec/sandbox/solver/bin/cse --final-prover /export/starexec/sandbox/solver/bin/eprover --proof-time %d --global-time-limit %d
% 0.16/0.33  % Computer : n028.cluster.edu
% 0.16/0.33  % Model    : x86_64 x86_64
% 0.16/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.16/0.33  % Memory   : 8042.1875MB
% 0.16/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.16/0.33  % CPULimit   : 300
% 0.16/0.33  % WCLimit    : 300
% 0.16/0.33  % DateTime   : Tue May  5 04:53:30 EDT 2026
% 0.16/0.33  % CPUTime    : 
% 0.16/0.34  % start to proof: theBenchmark
% 1.26/1.73  % Version  : CSE_E---1.7
% 1.26/1.73  % Problem  : theBenchmark.p
% 1.26/1.73  % SZS status Theorem for theBenchmark.p
% 1.26/1.73  % SZS output start CNFRefutation
% See solution above
% 1.26/1.73  % Total time : 1.374s
%------------------------------------------------------------------------------