TPTP Problem File: SWW958+1.p

View Solutions - Solve Problem

%--------------------------------------------------------------------------
% File     : SWW958+1 : TPTP v9.0.0. Released v7.4.0.
% Domain   : Software Verification
% Problem  : Attack on Salary Sum protocol
% Version  : [LT19] axioms : Especial.
% English  : Attack demonstrates violation of secrecy of Sa, salary of A.

% Refs     : [BO97]  Bull & Otway (1997), The Authentication Protocol
%          : [RS98]  Ryan & Schneider (1998), An Attack on a Recursive Auth
%          : [LT19]  Li & Tiu (2019), Combining ProVerif and Automated Theo
%          : [Li20]  Li (2020), Email to Geoff Sutcliffe
% Source   : [Li20]
% Names    : Salary-Sum.p [LT20]

% Status   : Theorem
% Rating   : 0.61 v8.2.0, 0.69 v8.1.0, 0.58 v7.5.0, 0.69 v7.4.0
% Syntax   : Number of formulae    :  277 ( 215 unt;   0 def)
%            Number of atoms       :  361 ( 195 equ)
%            Maximal formula atoms :    4 (   1 avg)
%            Number of connectives :  274 ( 190   ~;   0   |;  22   &)
%                                         (   0 <=>;  62  =>;   0  <=;   0 <~>)
%            Maximal formula depth :    7 (   2 avg)
%            Maximal term depth    :    5 (   1 avg)
%            Number of predicates  :    4 (   3 usr;   0 prp; 1-2 aty)
%            Number of functors    :   49 (  49 usr;  22 con; 0-2 aty)
%            Number of variables   :  111 ( 111   !;   0   ?)
% SPC      : FOF_THM_RFO_SEQ

% Comments : Generated by a modified version of ProVerif used in the
%            ProVerif-ATP project [LT19].
%--------------------------------------------------------------------------
fof(ax0,axiom,
    constr_CONST_0x30 != constr_CONST_1 ).

fof(ax1,axiom,
    constr_CONST_0x30 != constr_CONST_2 ).

fof(ax2,axiom,
    constr_CONST_0x30 != constr_CONST_3 ).

fof(ax3,axiom,
    constr_CONST_0x30 != constr_CONST_4 ).

fof(ax4,axiom,
    constr_CONST_0x30 != constr_ZERO ).

fof(ax5,axiom,
    constr_CONST_0x30 != name_A ).

fof(ax6,axiom,
    constr_CONST_0x30 != name_B ).

fof(ax7,axiom,
    constr_CONST_0x30 != name_C ).

fof(ax8,axiom,
    constr_CONST_0x30 != name_D ).

fof(ax9,axiom,
    constr_CONST_0x30 != name_Na ).

fof(ax10,axiom,
    constr_CONST_0x30 != name_Sa ).

fof(ax11,axiom,
    constr_CONST_0x30 != name_Sb ).

fof(ax12,axiom,
    constr_CONST_0x30 != name_Sc ).

fof(ax13,axiom,
    constr_CONST_0x30 != name_Sd ).

fof(ax14,axiom,
    constr_CONST_0x30 != name_c ).

fof(ax15,axiom,
    constr_CONST_0x30 != name_skA ).

fof(ax16,axiom,
    constr_CONST_0x30 != name_skB ).

fof(ax17,axiom,
    constr_CONST_0x30 != name_skC ).

fof(ax18,axiom,
    constr_CONST_0x30 != name_skD ).

fof(ax19,axiom,
    constr_CONST_1 != constr_CONST_2 ).

fof(ax20,axiom,
    constr_CONST_1 != constr_CONST_3 ).

fof(ax21,axiom,
    constr_CONST_1 != constr_CONST_4 ).

fof(ax22,axiom,
    constr_CONST_1 != constr_ZERO ).

fof(ax23,axiom,
    constr_CONST_1 != name_A ).

fof(ax24,axiom,
    constr_CONST_1 != name_B ).

fof(ax25,axiom,
    constr_CONST_1 != name_C ).

fof(ax26,axiom,
    constr_CONST_1 != name_D ).

fof(ax27,axiom,
    constr_CONST_1 != name_Na ).

fof(ax28,axiom,
    constr_CONST_1 != name_Sa ).

fof(ax29,axiom,
    constr_CONST_1 != name_Sb ).

fof(ax30,axiom,
    constr_CONST_1 != name_Sc ).

fof(ax31,axiom,
    constr_CONST_1 != name_Sd ).

fof(ax32,axiom,
    constr_CONST_1 != name_c ).

fof(ax33,axiom,
    constr_CONST_1 != name_skA ).

fof(ax34,axiom,
    constr_CONST_1 != name_skB ).

fof(ax35,axiom,
    constr_CONST_1 != name_skC ).

fof(ax36,axiom,
    constr_CONST_1 != name_skD ).

fof(ax37,axiom,
    constr_CONST_2 != constr_CONST_3 ).

fof(ax38,axiom,
    constr_CONST_2 != constr_CONST_4 ).

fof(ax39,axiom,
    constr_CONST_2 != constr_ZERO ).

fof(ax40,axiom,
    constr_CONST_2 != name_A ).

fof(ax41,axiom,
    constr_CONST_2 != name_B ).

fof(ax42,axiom,
    constr_CONST_2 != name_C ).

fof(ax43,axiom,
    constr_CONST_2 != name_D ).

fof(ax44,axiom,
    constr_CONST_2 != name_Na ).

fof(ax45,axiom,
    constr_CONST_2 != name_Sa ).

fof(ax46,axiom,
    constr_CONST_2 != name_Sb ).

fof(ax47,axiom,
    constr_CONST_2 != name_Sc ).

fof(ax48,axiom,
    constr_CONST_2 != name_Sd ).

fof(ax49,axiom,
    constr_CONST_2 != name_c ).

fof(ax50,axiom,
    constr_CONST_2 != name_skA ).

fof(ax51,axiom,
    constr_CONST_2 != name_skB ).

fof(ax52,axiom,
    constr_CONST_2 != name_skC ).

fof(ax53,axiom,
    constr_CONST_2 != name_skD ).

fof(ax54,axiom,
    constr_CONST_3 != constr_CONST_4 ).

fof(ax55,axiom,
    constr_CONST_3 != constr_ZERO ).

fof(ax56,axiom,
    constr_CONST_3 != name_A ).

fof(ax57,axiom,
    constr_CONST_3 != name_B ).

fof(ax58,axiom,
    constr_CONST_3 != name_C ).

fof(ax59,axiom,
    constr_CONST_3 != name_D ).

fof(ax60,axiom,
    constr_CONST_3 != name_Na ).

fof(ax61,axiom,
    constr_CONST_3 != name_Sa ).

fof(ax62,axiom,
    constr_CONST_3 != name_Sb ).

fof(ax63,axiom,
    constr_CONST_3 != name_Sc ).

fof(ax64,axiom,
    constr_CONST_3 != name_Sd ).

fof(ax65,axiom,
    constr_CONST_3 != name_c ).

fof(ax66,axiom,
    constr_CONST_3 != name_skA ).

fof(ax67,axiom,
    constr_CONST_3 != name_skB ).

fof(ax68,axiom,
    constr_CONST_3 != name_skC ).

fof(ax69,axiom,
    constr_CONST_3 != name_skD ).

fof(ax70,axiom,
    constr_CONST_4 != constr_ZERO ).

fof(ax71,axiom,
    constr_CONST_4 != name_A ).

fof(ax72,axiom,
    constr_CONST_4 != name_B ).

fof(ax73,axiom,
    constr_CONST_4 != name_C ).

fof(ax74,axiom,
    constr_CONST_4 != name_D ).

fof(ax75,axiom,
    constr_CONST_4 != name_Na ).

fof(ax76,axiom,
    constr_CONST_4 != name_Sa ).

fof(ax77,axiom,
    constr_CONST_4 != name_Sb ).

fof(ax78,axiom,
    constr_CONST_4 != name_Sc ).

fof(ax79,axiom,
    constr_CONST_4 != name_Sd ).

fof(ax80,axiom,
    constr_CONST_4 != name_c ).

fof(ax81,axiom,
    constr_CONST_4 != name_skA ).

fof(ax82,axiom,
    constr_CONST_4 != name_skB ).

fof(ax83,axiom,
    constr_CONST_4 != name_skC ).

fof(ax84,axiom,
    constr_CONST_4 != name_skD ).

fof(ax85,axiom,
    constr_ZERO != name_A ).

fof(ax86,axiom,
    constr_ZERO != name_B ).

fof(ax87,axiom,
    constr_ZERO != name_C ).

fof(ax88,axiom,
    constr_ZERO != name_D ).

fof(ax89,axiom,
    constr_ZERO != name_Na ).

fof(ax90,axiom,
    constr_ZERO != name_Sa ).

fof(ax91,axiom,
    constr_ZERO != name_Sb ).

fof(ax92,axiom,
    constr_ZERO != name_Sc ).

fof(ax93,axiom,
    constr_ZERO != name_Sd ).

fof(ax94,axiom,
    constr_ZERO != name_c ).

fof(ax95,axiom,
    constr_ZERO != name_skA ).

fof(ax96,axiom,
    constr_ZERO != name_skB ).

fof(ax97,axiom,
    constr_ZERO != name_skC ).

fof(ax98,axiom,
    constr_ZERO != name_skD ).

fof(ax99,axiom,
    name_A != name_B ).

fof(ax100,axiom,
    name_A != name_C ).

fof(ax101,axiom,
    name_A != name_D ).

fof(ax102,axiom,
    name_A != name_Na ).

fof(ax103,axiom,
    name_A != name_Sa ).

fof(ax104,axiom,
    name_A != name_Sb ).

fof(ax105,axiom,
    name_A != name_Sc ).

fof(ax106,axiom,
    name_A != name_Sd ).

fof(ax107,axiom,
    name_A != name_c ).

fof(ax108,axiom,
    name_A != name_skA ).

fof(ax109,axiom,
    name_A != name_skB ).

fof(ax110,axiom,
    name_A != name_skC ).

fof(ax111,axiom,
    name_A != name_skD ).

fof(ax112,axiom,
    name_B != name_C ).

fof(ax113,axiom,
    name_B != name_D ).

fof(ax114,axiom,
    name_B != name_Na ).

fof(ax115,axiom,
    name_B != name_Sa ).

fof(ax116,axiom,
    name_B != name_Sb ).

fof(ax117,axiom,
    name_B != name_Sc ).

fof(ax118,axiom,
    name_B != name_Sd ).

fof(ax119,axiom,
    name_B != name_c ).

fof(ax120,axiom,
    name_B != name_skA ).

fof(ax121,axiom,
    name_B != name_skB ).

fof(ax122,axiom,
    name_B != name_skC ).

fof(ax123,axiom,
    name_B != name_skD ).

fof(ax124,axiom,
    name_C != name_D ).

fof(ax125,axiom,
    name_C != name_Na ).

fof(ax126,axiom,
    name_C != name_Sa ).

fof(ax127,axiom,
    name_C != name_Sb ).

fof(ax128,axiom,
    name_C != name_Sc ).

fof(ax129,axiom,
    name_C != name_Sd ).

fof(ax130,axiom,
    name_C != name_c ).

fof(ax131,axiom,
    name_C != name_skA ).

fof(ax132,axiom,
    name_C != name_skB ).

fof(ax133,axiom,
    name_C != name_skC ).

fof(ax134,axiom,
    name_C != name_skD ).

fof(ax135,axiom,
    name_D != name_Na ).

fof(ax136,axiom,
    name_D != name_Sa ).

fof(ax137,axiom,
    name_D != name_Sb ).

fof(ax138,axiom,
    name_D != name_Sc ).

fof(ax139,axiom,
    name_D != name_Sd ).

fof(ax140,axiom,
    name_D != name_c ).

fof(ax141,axiom,
    name_D != name_skA ).

fof(ax142,axiom,
    name_D != name_skB ).

fof(ax143,axiom,
    name_D != name_skC ).

fof(ax144,axiom,
    name_D != name_skD ).

fof(ax145,axiom,
    name_Na != name_Sa ).

fof(ax146,axiom,
    name_Na != name_Sb ).

fof(ax147,axiom,
    name_Na != name_Sc ).

fof(ax148,axiom,
    name_Na != name_Sd ).

fof(ax149,axiom,
    name_Na != name_c ).

fof(ax150,axiom,
    name_Na != name_skA ).

fof(ax151,axiom,
    name_Na != name_skB ).

fof(ax152,axiom,
    name_Na != name_skC ).

fof(ax153,axiom,
    name_Na != name_skD ).

fof(ax154,axiom,
    name_Sa != name_Sb ).

fof(ax155,axiom,
    name_Sa != name_Sc ).

fof(ax156,axiom,
    name_Sa != name_Sd ).

fof(ax157,axiom,
    name_Sa != name_c ).

fof(ax158,axiom,
    name_Sa != name_skA ).

fof(ax159,axiom,
    name_Sa != name_skB ).

fof(ax160,axiom,
    name_Sa != name_skC ).

fof(ax161,axiom,
    name_Sa != name_skD ).

fof(ax162,axiom,
    name_Sb != name_Sc ).

fof(ax163,axiom,
    name_Sb != name_Sd ).

fof(ax164,axiom,
    name_Sb != name_c ).

fof(ax165,axiom,
    name_Sb != name_skA ).

fof(ax166,axiom,
    name_Sb != name_skB ).

fof(ax167,axiom,
    name_Sb != name_skC ).

fof(ax168,axiom,
    name_Sb != name_skD ).

fof(ax169,axiom,
    name_Sc != name_Sd ).

fof(ax170,axiom,
    name_Sc != name_c ).

fof(ax171,axiom,
    name_Sc != name_skA ).

fof(ax172,axiom,
    name_Sc != name_skB ).

fof(ax173,axiom,
    name_Sc != name_skC ).

fof(ax174,axiom,
    name_Sc != name_skD ).

fof(ax175,axiom,
    name_Sd != name_c ).

fof(ax176,axiom,
    name_Sd != name_skA ).

fof(ax177,axiom,
    name_Sd != name_skB ).

fof(ax178,axiom,
    name_Sd != name_skC ).

fof(ax179,axiom,
    name_Sd != name_skD ).

fof(ax180,axiom,
    name_c != name_skA ).

fof(ax181,axiom,
    name_c != name_skB ).

fof(ax182,axiom,
    name_c != name_skC ).

fof(ax183,axiom,
    name_c != name_skD ).

fof(ax184,axiom,
    name_skA != name_skB ).

fof(ax185,axiom,
    name_skA != name_skC ).

fof(ax186,axiom,
    name_skA != name_skD ).

fof(ax187,axiom,
    name_skB != name_skC ).

fof(ax188,axiom,
    name_skB != name_skD ).

fof(ax189,axiom,
    name_skC != name_skD ).

fof(ax190,axiom,
    ! [VAR_K_0X30,VAR_M_0X30] : constr_adec(constr_aenc(VAR_M_0X30,constr_pkey(VAR_K_0X30)),VAR_K_0X30) = VAR_M_0X30 ).

fof(ax191,axiom,
    ! [VAR_X_10X30] : constr_add(VAR_X_10X30,constr_neg(VAR_X_10X30)) = constr_ZERO ).

fof(ax192,axiom,
    ! [VAR_X_9] : constr_add(VAR_X_9,constr_ZERO) = VAR_X_9 ).

fof(ax193,axiom,
    ! [VAR_X_7,VAR_Y_8] : constr_add(VAR_X_7,VAR_Y_8) = constr_add(VAR_Y_8,VAR_X_7) ).

fof(ax194,axiom,
    ! [VAR_X_0X30,VAR_Y_0X30,VAR_Z_0X30] : constr_add(VAR_X_0X30,constr_add(VAR_Y_0X30,VAR_Z_0X30)) = constr_add(constr_add(VAR_X_0X30,VAR_Y_0X30),VAR_Z_0X30) ).

fof(ax195,axiom,
    pred_attacker(tuple_true) ).

fof(ax196,axiom,
    ! [VAR_V_30X30] :
      ( pred_attacker(VAR_V_30X30)
     => pred_attacker(constr_pkey(VAR_V_30X30)) ) ).

fof(ax197,axiom,
    ! [VAR_V_32] :
      ( pred_attacker(VAR_V_32)
     => pred_attacker(tuple_out_4(VAR_V_32)) ) ).

fof(ax198,axiom,
    ! [VAR_V_35] :
      ( pred_attacker(tuple_out_4(VAR_V_35))
     => pred_attacker(VAR_V_35) ) ).

fof(ax199,axiom,
    ! [VAR_V_38] :
      ( pred_attacker(VAR_V_38)
     => pred_attacker(tuple_out_3(VAR_V_38)) ) ).

fof(ax200,axiom,
    ! [VAR_V_41] :
      ( pred_attacker(tuple_out_3(VAR_V_41))
     => pred_attacker(VAR_V_41) ) ).

fof(ax201,axiom,
    ! [VAR_V_44] :
      ( pred_attacker(VAR_V_44)
     => pred_attacker(tuple_out_2(VAR_V_44)) ) ).

fof(ax202,axiom,
    ! [VAR_V_47] :
      ( pred_attacker(tuple_out_2(VAR_V_47))
     => pred_attacker(VAR_V_47) ) ).

fof(ax203,axiom,
    ! [VAR_V_50X30] :
      ( pred_attacker(VAR_V_50X30)
     => pred_attacker(tuple_out_1(VAR_V_50X30)) ) ).

fof(ax204,axiom,
    ! [VAR_V_53] :
      ( pred_attacker(tuple_out_1(VAR_V_53))
     => pred_attacker(VAR_V_53) ) ).

fof(ax205,axiom,
    ! [VAR_V_57] :
      ( pred_attacker(VAR_V_57)
     => pred_attacker(constr_neg(VAR_V_57)) ) ).

fof(ax206,axiom,
    pred_attacker(tuple_false) ).

fof(ax207,axiom,
    ! [VAR_V_60X30,VAR_V_61] :
      ( ( pred_attacker(VAR_V_60X30)
        & pred_attacker(VAR_V_61) )
     => pred_attacker(tuple_client_D_out_4(VAR_V_60X30,VAR_V_61)) ) ).

fof(ax208,axiom,
    ! [VAR_V_68,VAR_V_69] :
      ( pred_attacker(tuple_client_D_out_4(VAR_V_68,VAR_V_69))
     => pred_attacker(VAR_V_68) ) ).

fof(ax209,axiom,
    ! [VAR_V_71,VAR_V_72] :
      ( pred_attacker(tuple_client_D_out_4(VAR_V_71,VAR_V_72))
     => pred_attacker(VAR_V_72) ) ).

fof(ax210,axiom,
    ! [VAR_V_76,VAR_V_77] :
      ( ( pred_attacker(VAR_V_76)
        & pred_attacker(VAR_V_77) )
     => pred_attacker(tuple_client_D_in_3(VAR_V_76,VAR_V_77)) ) ).

fof(ax211,axiom,
    ! [VAR_V_84,VAR_V_85] :
      ( pred_attacker(tuple_client_D_in_3(VAR_V_84,VAR_V_85))
     => pred_attacker(VAR_V_84) ) ).

fof(ax212,axiom,
    ! [VAR_V_87,VAR_V_88] :
      ( pred_attacker(tuple_client_D_in_3(VAR_V_87,VAR_V_88))
     => pred_attacker(VAR_V_88) ) ).

fof(ax213,axiom,
    ! [VAR_V_91] :
      ( pred_attacker(VAR_V_91)
     => pred_attacker(tuple_client_D_in_2(VAR_V_91)) ) ).

fof(ax214,axiom,
    ! [VAR_V_94] :
      ( pred_attacker(tuple_client_D_in_2(VAR_V_94))
     => pred_attacker(VAR_V_94) ) ).

fof(ax215,axiom,
    ! [VAR_V_97] :
      ( pred_attacker(VAR_V_97)
     => pred_attacker(tuple_client_D_in_1(VAR_V_97)) ) ).

fof(ax216,axiom,
    ! [VAR_V_10X300X30] :
      ( pred_attacker(tuple_client_D_in_1(VAR_V_10X300X30))
     => pred_attacker(VAR_V_10X300X30) ) ).

fof(ax217,axiom,
    ! [VAR_V_10X304,VAR_V_10X305] :
      ( ( pred_attacker(VAR_V_10X304)
        & pred_attacker(VAR_V_10X305) )
     => pred_attacker(tuple_client_C_out_4(VAR_V_10X304,VAR_V_10X305)) ) ).

fof(ax218,axiom,
    ! [VAR_V_112,VAR_V_113] :
      ( pred_attacker(tuple_client_C_out_4(VAR_V_112,VAR_V_113))
     => pred_attacker(VAR_V_112) ) ).

fof(ax219,axiom,
    ! [VAR_V_115,VAR_V_116] :
      ( pred_attacker(tuple_client_C_out_4(VAR_V_115,VAR_V_116))
     => pred_attacker(VAR_V_116) ) ).

fof(ax220,axiom,
    ! [VAR_V_120X30,VAR_V_121] :
      ( ( pred_attacker(VAR_V_120X30)
        & pred_attacker(VAR_V_121) )
     => pred_attacker(tuple_client_C_in_3(VAR_V_120X30,VAR_V_121)) ) ).

fof(ax221,axiom,
    ! [VAR_V_128,VAR_V_129] :
      ( pred_attacker(tuple_client_C_in_3(VAR_V_128,VAR_V_129))
     => pred_attacker(VAR_V_128) ) ).

fof(ax222,axiom,
    ! [VAR_V_131,VAR_V_132] :
      ( pred_attacker(tuple_client_C_in_3(VAR_V_131,VAR_V_132))
     => pred_attacker(VAR_V_132) ) ).

fof(ax223,axiom,
    ! [VAR_V_135] :
      ( pred_attacker(VAR_V_135)
     => pred_attacker(tuple_client_C_in_2(VAR_V_135)) ) ).

fof(ax224,axiom,
    ! [VAR_V_138] :
      ( pred_attacker(tuple_client_C_in_2(VAR_V_138))
     => pred_attacker(VAR_V_138) ) ).

fof(ax225,axiom,
    ! [VAR_V_141] :
      ( pred_attacker(VAR_V_141)
     => pred_attacker(tuple_client_C_in_1(VAR_V_141)) ) ).

fof(ax226,axiom,
    ! [VAR_V_144] :
      ( pred_attacker(tuple_client_C_in_1(VAR_V_144))
     => pred_attacker(VAR_V_144) ) ).

fof(ax227,axiom,
    ! [VAR_V_148,VAR_V_149] :
      ( ( pred_attacker(VAR_V_148)
        & pred_attacker(VAR_V_149) )
     => pred_attacker(tuple_client_B_out_4(VAR_V_148,VAR_V_149)) ) ).

fof(ax228,axiom,
    ! [VAR_V_156,VAR_V_157] :
      ( pred_attacker(tuple_client_B_out_4(VAR_V_156,VAR_V_157))
     => pred_attacker(VAR_V_156) ) ).

fof(ax229,axiom,
    ! [VAR_V_159,VAR_V_160X30] :
      ( pred_attacker(tuple_client_B_out_4(VAR_V_159,VAR_V_160X30))
     => pred_attacker(VAR_V_160X30) ) ).

fof(ax230,axiom,
    ! [VAR_V_164,VAR_V_165] :
      ( ( pred_attacker(VAR_V_164)
        & pred_attacker(VAR_V_165) )
     => pred_attacker(tuple_client_B_in_3(VAR_V_164,VAR_V_165)) ) ).

fof(ax231,axiom,
    ! [VAR_V_172,VAR_V_173] :
      ( pred_attacker(tuple_client_B_in_3(VAR_V_172,VAR_V_173))
     => pred_attacker(VAR_V_172) ) ).

fof(ax232,axiom,
    ! [VAR_V_175,VAR_V_176] :
      ( pred_attacker(tuple_client_B_in_3(VAR_V_175,VAR_V_176))
     => pred_attacker(VAR_V_176) ) ).

fof(ax233,axiom,
    ! [VAR_V_179] :
      ( pred_attacker(VAR_V_179)
     => pred_attacker(tuple_client_B_in_2(VAR_V_179)) ) ).

fof(ax234,axiom,
    ! [VAR_V_182] :
      ( pred_attacker(tuple_client_B_in_2(VAR_V_182))
     => pred_attacker(VAR_V_182) ) ).

fof(ax235,axiom,
    ! [VAR_V_185] :
      ( pred_attacker(VAR_V_185)
     => pred_attacker(tuple_client_B_in_1(VAR_V_185)) ) ).

fof(ax236,axiom,
    ! [VAR_V_188] :
      ( pred_attacker(tuple_client_B_in_1(VAR_V_188))
     => pred_attacker(VAR_V_188) ) ).

fof(ax237,axiom,
    ! [VAR_V_191] :
      ( pred_attacker(VAR_V_191)
     => pred_attacker(tuple_client_A_out_5(VAR_V_191)) ) ).

fof(ax238,axiom,
    ! [VAR_V_194] :
      ( pred_attacker(tuple_client_A_out_5(VAR_V_194))
     => pred_attacker(VAR_V_194) ) ).

fof(ax239,axiom,
    ! [VAR_V_198,VAR_V_199] :
      ( ( pred_attacker(VAR_V_198)
        & pred_attacker(VAR_V_199) )
     => pred_attacker(tuple_client_A_out_3(VAR_V_198,VAR_V_199)) ) ).

fof(ax240,axiom,
    ! [VAR_V_20X306,VAR_V_20X307] :
      ( pred_attacker(tuple_client_A_out_3(VAR_V_20X306,VAR_V_20X307))
     => pred_attacker(VAR_V_20X306) ) ).

fof(ax241,axiom,
    ! [VAR_V_20X309,VAR_V_210X30] :
      ( pred_attacker(tuple_client_A_out_3(VAR_V_20X309,VAR_V_210X30))
     => pred_attacker(VAR_V_210X30) ) ).

fof(ax242,axiom,
    ! [VAR_V_214,VAR_V_215] :
      ( ( pred_attacker(VAR_V_214)
        & pred_attacker(VAR_V_215) )
     => pred_attacker(tuple_client_A_in_4(VAR_V_214,VAR_V_215)) ) ).

fof(ax243,axiom,
    ! [VAR_V_222,VAR_V_223] :
      ( pred_attacker(tuple_client_A_in_4(VAR_V_222,VAR_V_223))
     => pred_attacker(VAR_V_222) ) ).

fof(ax244,axiom,
    ! [VAR_V_225,VAR_V_226] :
      ( pred_attacker(tuple_client_A_in_4(VAR_V_225,VAR_V_226))
     => pred_attacker(VAR_V_226) ) ).

fof(ax245,axiom,
    ! [VAR_V_229] :
      ( pred_attacker(VAR_V_229)
     => pred_attacker(tuple_client_A_in_2(VAR_V_229)) ) ).

fof(ax246,axiom,
    ! [VAR_V_232] :
      ( pred_attacker(tuple_client_A_in_2(VAR_V_232))
     => pred_attacker(VAR_V_232) ) ).

fof(ax247,axiom,
    ! [VAR_V_235] :
      ( pred_attacker(VAR_V_235)
     => pred_attacker(tuple_client_A_in_1(VAR_V_235)) ) ).

fof(ax248,axiom,
    ! [VAR_V_238] :
      ( pred_attacker(tuple_client_A_in_1(VAR_V_238))
     => pred_attacker(VAR_V_238) ) ).

fof(ax249,axiom,
    ! [VAR_V_242,VAR_V_243] :
      ( ( pred_attacker(VAR_V_242)
        & pred_attacker(VAR_V_243) )
     => pred_attacker(constr_aenc(VAR_V_242,VAR_V_243)) ) ).

fof(ax250,axiom,
    ! [VAR_V_246,VAR_V_247] :
      ( ( pred_attacker(VAR_V_246)
        & pred_attacker(VAR_V_247) )
     => pred_attacker(constr_adec(VAR_V_246,VAR_V_247)) ) ).

fof(ax251,axiom,
    ! [VAR_V_250X30,VAR_V_251] :
      ( ( pred_attacker(VAR_V_250X30)
        & pred_attacker(VAR_V_251) )
     => pred_attacker(constr_add(VAR_V_250X30,VAR_V_251)) ) ).

fof(ax252,axiom,
    pred_attacker(constr_ZERO) ).

fof(ax253,axiom,
    pred_attacker(constr_CONST_4) ).

fof(ax254,axiom,
    pred_attacker(constr_CONST_3) ).

fof(ax255,axiom,
    pred_attacker(constr_CONST_2) ).

fof(ax256,axiom,
    pred_attacker(constr_CONST_1) ).

fof(ax257,axiom,
    pred_attacker(constr_CONST_0x30) ).

fof(ax258,axiom,
    ! [VAR_V_256,VAR_V_257] :
      ( ( pred_mess(VAR_V_257,VAR_V_256)
        & pred_attacker(VAR_V_257) )
     => pred_attacker(VAR_V_256) ) ).

fof(ax259,axiom,
    ! [VAR_V_258,VAR_V_259] :
      ( ( pred_attacker(VAR_V_259)
        & pred_attacker(VAR_V_258) )
     => pred_mess(VAR_V_259,VAR_V_258) ) ).

fof(ax260,axiom,
    pred_attacker(name_c) ).

fof(ax261,axiom,
    pred_attacker(name_D) ).

fof(ax262,axiom,
    pred_attacker(name_C) ).

fof(ax263,axiom,
    pred_attacker(name_B) ).

fof(ax264,axiom,
    pred_attacker(name_A) ).

fof(ax265,axiom,
    ! [VAR_V_261] : pred_equal(VAR_V_261,VAR_V_261) ).

fof(ax266,axiom,
    ! [VAR_V_262] : pred_attacker(name_new0x2Dname(VAR_V_262)) ).

fof(ax267,axiom,
    pred_attacker(tuple_out_1(constr_pkey(name_skA))) ).

fof(ax268,axiom,
    pred_attacker(tuple_out_2(constr_pkey(name_skB))) ).

fof(ax269,axiom,
    pred_attacker(tuple_out_3(constr_pkey(name_skC))) ).

fof(ax270,axiom,
    pred_attacker(tuple_out_4(constr_pkey(name_skD))) ).

fof(ax271,axiom,
    ! [VAR_LASTT_336,VAR_PKNEXTT_337] :
      ( ( pred_attacker(tuple_client_A_in_2(VAR_LASTT_336))
        & pred_attacker(tuple_client_A_in_1(VAR_PKNEXTT_337)) )
     => pred_attacker(tuple_client_A_out_3(name_A,constr_aenc(constr_add(name_Na,name_Sa),VAR_PKNEXTT_337))) ) ).

fof(ax272,axiom,
    ! [VAR_AENC_ADD_NA_SA_SB_SC_SD_377,VAR_LASTT_376,VAR_PKNEXTT_378] :
      ( ( pred_attacker(tuple_client_A_in_4(VAR_LASTT_376,VAR_AENC_ADD_NA_SA_SB_SC_SD_377))
        & pred_attacker(tuple_client_A_in_2(VAR_LASTT_376))
        & pred_attacker(tuple_client_A_in_1(VAR_PKNEXTT_378)) )
     => pred_attacker(tuple_client_A_out_5(constr_add(constr_adec(VAR_AENC_ADD_NA_SA_SB_SC_SD_377,name_skA),constr_neg(name_Na)))) ) ).

fof(ax273,axiom,
    ! [VAR_AENC_ADD_NA_SA_426,VAR_PKNEXTT_427,VAR_PREVT_425] :
      ( ( pred_attacker(tuple_client_B_in_3(VAR_PREVT_425,VAR_AENC_ADD_NA_SA_426))
        & pred_attacker(tuple_client_B_in_2(VAR_PKNEXTT_427))
        & pred_attacker(tuple_client_B_in_1(VAR_PREVT_425)) )
     => pred_attacker(tuple_client_B_out_4(name_B,constr_aenc(constr_add(constr_adec(VAR_AENC_ADD_NA_SA_426,name_skB),name_Sb),VAR_PKNEXTT_427))) ) ).

fof(ax274,axiom,
    ! [VAR_AENC_ADD_NA_SA_SB_479,VAR_PKNEXTT_480X30,VAR_PREVT_478] :
      ( ( pred_attacker(tuple_client_C_in_3(VAR_PREVT_478,VAR_AENC_ADD_NA_SA_SB_479))
        & pred_attacker(tuple_client_C_in_2(VAR_PKNEXTT_480X30))
        & pred_attacker(tuple_client_C_in_1(VAR_PREVT_478)) )
     => pred_attacker(tuple_client_C_out_4(name_C,constr_aenc(constr_add(constr_adec(VAR_AENC_ADD_NA_SA_SB_479,name_skC),name_Sc),VAR_PKNEXTT_480X30))) ) ).

fof(ax275,axiom,
    ! [VAR_AENC_ADD_NA_SA_SB_SC_532,VAR_PKNEXTT_533,VAR_PREVT_531] :
      ( ( pred_attacker(tuple_client_D_in_3(VAR_PREVT_531,VAR_AENC_ADD_NA_SA_SB_SC_532))
        & pred_attacker(tuple_client_D_in_2(VAR_PKNEXTT_533))
        & pred_attacker(tuple_client_D_in_1(VAR_PREVT_531)) )
     => pred_attacker(tuple_client_D_out_4(name_D,constr_aenc(constr_add(constr_adec(VAR_AENC_ADD_NA_SA_SB_SC_532,name_skD),name_Sd),VAR_PKNEXTT_533))) ) ).

fof(co0,conjecture,
    pred_attacker(name_Sa) ).

%--------------------------------------------------------------------------