Linear part:
Completing equations...
Completed equations:
Convergent part:
host(key(x_22)) = x_22
key(host(x_21)) = x_21
Completing equations...
Completed equations:
key(host(x_21)) = x_21
host(key(x_22)) = x_22
Completed destructors:
PtCredVerifyPtIDDr(zk((Ptr_255,PtID_256,PtNym_257,PtHII_258,PtSSS_259,PtAcc_260,rpt_261),(comt(PtID_256,Ptr_255),PtCred(PtID_256,PtNym_257,PtHII_258,PtSSS_259,PtAcc_260,rpt_261))),comt(PtID_256,Ptr_255),PtCred(PtID_256,PtNym_257,PtHII_258,PtSSS_259,PtAcc_260,rpt_261)) => true()
getpubmsg(spk(x_263,y_262,z_264)) => y_262
getmessage(sign(x_265,y_266),pk(y_266)) => x_265
open(comt(x_267,y_268),y_268) => x_267
PtCredVerifyPh(zk((PtID_269,PtNym_270,PtHII_271,PtSSS_272,PtAcc_273,rpt_274),(PtCred(PtID_269,PtNym_270,PtHII_271,PtSSS_272,PtAcc_273,rpt_274),PtSSS_272)),PtCred(PtID_269,PtNym_270,PtHII_271,PtSSS_272,PtAcc_273,rpt_274),PtSSS_272) => true()
getmsg(spk(x_276,y_277,z_275)) => z_275
CheckReceptionAck(spk((PtID_278,PtNym_279,PtHII_280,PtSSS_281,PtAcc_282,rpt_283),PtCred(PtID_278,PtNym_279,PtHII_280,PtSSS_281,PtAcc_282,rpt_283),(xPrescID_284,xPharmID_285,vc1_286,vc2_287,vc3_288,vc31_289,vc4_290,c5_291)),PtCred(PtID_278,PtNym_279,PtHII_280,PtSSS_281,PtAcc_282,rpt_283),xPrescID_284,xPharmID_285,vc1_286,vc2_287,vc3_288,vc31_289,vc4_290,c5_291) => true()
DrCredVerify(zk((DrNym_292,DrID_293,rdr_294),DrCred(DrNym_292,DrID_293,rdr_294)),DrCred(DrNym_292,DrID_293,rdr_294)) => true()
checkAuth(sign(x_295,y_296),pk(y_296)) => true()
CheckSPKDrPtDrNym(spk((DrNym_297,Drr_298,DrID_299,rdr_300),(comt(DrNym_297,Drr_298),DrCred(DrNym_297,DrID_299,rdr_300)),(PrescText_301,PrescID_302,comt(DrNym_297,Drr_298),comt(PtID_303,Ptr_304))),DrCred(DrNym_297,DrID_299,rdr_300),PrescText_301,PrescID_302,comt(DrNym_297,Drr_298),comt(PtID_303,Ptr_304)) => true()
CheckVEncHii(zk((PtID_305,PtNym_306,PtHII_307,PtSSS_308,PtAcc_309,rpt_310,r_311),(PtCred(PtID_305,PtNym_306,PtHII_307,PtSSS_308,PtAcc_309,rpt_310),penc(PtHII_307,pubkey_312,r_311))),PtCred(PtID_305,PtNym_306,PtHII_307,PtSSS_308,PtAcc_309,rpt_310),penc(PtHII_307,pubkey_312,r_311),pubkey_312) => true()
CheckVEncPtnym(zk((PtID_313,PtNym_314,PtHII_315,PtSSS_316,PtAcc_317,rpt_318,r_319),(PtCred(PtID_313,PtNym_314,PtHII_315,PtSSS_316,PtAcc_317,rpt_318),penc(PtNym_314,pubkey_320,r_319))),PtCred(PtID_313,PtNym_314,PtHII_315,PtSSS_316,PtAcc_317,rpt_318),penc(PtNym_314,pubkey_320,r_319),pubkey_320) => true()
PtCredVerifyDr(zk((PtID_321,PtNym_322,PtHII_323,PtSSS_324,PtAcc_325,rpt_326),PtCred(PtID_321,PtNym_322,PtHII_323,PtSSS_324,PtAcc_325,rpt_326)),PtCred(PtID_321,PtNym_322,PtHII_323,PtSSS_324,PtAcc_325,rpt_326)) => true()
CheckVEncDrnymMpa(zk((DrNym_327,Drr_328,r_329),(spk((DrNym_327,Drr_328,DrID_330,rdr_331),(comt(DrNym_327,Drr_328),DrCred(DrNym_327,DrID_330,rdr_331)),(PrescText_332,PrescID_333,comt(DrNym_327,Drr_328),xPtComt_334)),penc(DrNym_327,pkMPA_335,r_329))),spk((DrNym_327,Drr_328,DrID_330,rdr_331),(comt(DrNym_327,Drr_328),DrCred(DrNym_327,DrID_330,rdr_331)),(PrescText_332,PrescID_333,comt(DrNym_327,Drr_328),xPtComt_334)),penc(DrNym_327,pkMPA_335,r_329),pkMPA_335) => true()
getpublic(zk(x_337,y_336)) => y_336
dec(penc(m_338,pk(sk_339),r_340),sk_339) => m_338
CheckSPKPhPtID(spk((PtID_341,PtNym_342,PtHII_343,PtSSS_344,PtAcc_345,Ptr_346,rpt_347),(PtCred(PtID_341,PtNym_342,PtHII_343,PtSSS_344,PtAcc_345,rpt_347),comt(PtID_341,Ptr_346)),nonce_348),PtCred(PtID_341,PtNym_342,PtHII_343,PtSSS_344,PtAcc_345,rpt_347),comt(PtID_341,Ptr_346),nonce_348) => true()
Process:
{1}new skSSO_100;
{2}new privchhiipt_101;
{3}new privchmpaph_102;
{4}new privchphpt_103;
{5}let pkSSO_104 = pk(skSSO_100) in
{6}out(ch, pkSSO_104);
(
    {7}new nDrNym_105;
    {8}new wDrNym_106;
    {9}let DrNym_107 = choice[nDrNym_105,wDrNym_106] in
    {10}let DrID_108 = A in
    {11}new rdr_109;
    {12}out(ch, zk((DrNym_107,DrID_108,rdr_109),DrCred(DrNym_107,DrID_108,rdr_109)));
    {13}in(ch, (xPtAuthProof_110,xPtDrPtIDProof_111));
    {14}let xPtCred_112 = getpublic(xPtAuthProof_110) in
    {15}let (xPtComt_113,=xPtCred_112) = getpublic(xPtDrPtIDProof_111) in
    {16}if PtCredVerifyDr(xPtAuthProof_110,xPtCred_112) = true() then
    {17}if PtCredVerifyPtIDDr(xPtDrPtIDProof_111,xPtComt_113,xPtCred_112) = true() then
    {18}new PrescText_114;
    {19}new Drr_115;
    {20}let PrescID_116 = hash(PrescText_114,xPtComt_113,comt(DrNym_107,Drr_115)) in
    {21}out(ch, (spk((DrNym_107,Drr_115,DrID_108,rdr_109),(comt(DrNym_107,Drr_115),DrCred(DrNym_107,DrID_108,rdr_109)),(PrescText_114,PrescID_116,comt(DrNym_107,Drr_115),xPtComt_113)),Drr_115))
) | (
    {22}new nDrNym_117;
    {23}new wDrNym_118;
    {24}let DrNym_119 = choice[nDrNym_117,wDrNym_118] in
    {25}let DrID_120 = choice[A,B] in
    {26}new rdr_121;
    {27}out(ch, zk((DrNym_119,DrID_120,rdr_121),DrCred(DrNym_119,DrID_120,rdr_121)));
    {28}in(ch, (xPtAuthProof_122,xPtDrPtIDProof_123));
    {29}let xPtCred_124 = getpublic(xPtAuthProof_122) in
    {30}let (xPtComt_125,=xPtCred_124) = getpublic(xPtDrPtIDProof_123) in
    {31}if PtCredVerifyDr(xPtAuthProof_122,xPtCred_124) = true() then
    {32}if PtCredVerifyPtIDDr(xPtDrPtIDProof_123,xPtComt_125,xPtCred_124) = true() then
    {33}new PrescText_126;
    {34}new Drr_127;
    {35}let PrescID_128 = hash(PrescText_126,xPtComt_125,comt(DrNym_119,Drr_127)) in
    {36}out(ch, (spk((DrNym_119,Drr_127,DrID_120,rdr_121),(comt(DrNym_119,Drr_127),DrCred(DrNym_119,DrID_120,rdr_121)),(PrescText_126,PrescID_128,comt(DrNym_119,Drr_127),xPtComt_125)),Drr_127))
) | (
    {37}in(privchhiipt_101, PtHII_129);
    {38}let cpkHII_130 = key(PtHII_129) in
    {39}!
    {40}new nPtID_131;
    {41}new nPtNym_132;
    {42}new nPtAcc_133;
    {43}let PtID_134 = nPtID_131 in
    {44}let PtNym_135 = nPtNym_132 in
    {45}let PtAcc_136 = nPtAcc_133 in
    {46}!
    {47}new nPtSSS_137;
    {48}let PtSSS_138 = nPtSSS_137 in
    {49}in(privchphpt_103, cpkPh_139);
    {50}let cPharmID_140 = host(cpkPh_139) in
    {51}in(ch, xDrCredProof_141);
    {52}let xDrCred_142 = getpublic(xDrCredProof_141) in
    {53}if DrCredVerify(xDrCredProof_141,xDrCred_142) = true() then
    {54}new Ptr_143;
    {55}new rpt_144;
    {56}out(ch, (zk((PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),PtCred(PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144)),zk((Ptr_143,PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),(comt(PtID_134,Ptr_143),PtCred(PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144)))));
    {57}in(ch, (xSPKDrPtDrNym_145,xDrr_146));
    {58}let (xPrescText_147,xPrescID_148,xDrComt_149,=comt(PtID_134,Ptr_143)) = getmsg(xSPKDrPtDrNym_145) in
    {59}if CheckSPKDrPtDrNym(xSPKDrPtDrNym_145,xDrCred_142,xPrescText_147,xPrescID_148,xDrComt_149,comt(PtID_134,Ptr_143)) = true() then
    {60}let xDrNym_150 = open(xDrComt_149,xDrr_146) in
    {61}in(ch, xPhAuth_151);
    {62}if checkAuth(xPhAuth_151,cpkPh_139) = true() then
    {63}let (=cPharmID_140,xMpaID_152) = getmessage(xPhAuth_151,cpkPh_139) in
    {64}let cpkMPA_153 = key(xMpaID_152) in
    {65}out(ch, zk((PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),(PtCred(PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),PtSSS_138)));
    {66}new nonce_154;
    {67}new r_155;
    {68}let vc1_156 = zk((PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144,r_155),(PtCred(PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),penc(PtHII_129,cpkMPA_153,r_155))) in
    {69}let vc2_157 = zk((xDrNym_150,xDrr_146,r_155),(xSPKDrPtDrNym_145,penc(xDrNym_150,cpkMPA_153,r_155))) in
    {70}let vc3_158 = zk((PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144,r_155),(PtCred(PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),penc(PtNym_135,pkSSO_104,r_155))) in
    {71}let vc31_159 = zk((PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144,r_155),(PtCred(PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),penc(PtHII_129,pkSSO_104,r_155))) in
    {72}let vc4_160 = zk((PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144,r_155),(PtCred(PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),penc(PtNym_135,cpkMPA_153,r_155))) in
    {73}let vc5_161 = zk((PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144,r_155),(PtCred(PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),penc(PtNym_135,cpkHII_130,r_155))) in
    {74}let c5_162 = penc(vc5_161,cpkMPA_153,r_155) in
    {75}out(ch, (xSPKDrPtDrNym_145,spk((PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,Ptr_143,rpt_144),(PtCred(PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),comt(PtID_134,Ptr_143)),nonce_154),vc1_156,vc2_157,vc3_158,vc31_159,vc4_160,c5_162));
    {76}in(ch, xInvoice_163);
    {77}let ReceptionAck_164 = spk((PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),PtCred(PtID_134,PtNym_135,PtHII_129,PtSSS_138,PtAcc_136,rpt_144),(xPrescID_148,cPharmID_140,vc1_156,vc2_157,vc3_158,vc31_159,vc4_160,c5_162)) in
    {78}out(ch, ReceptionAck_164)
) | (
    {79}!
    (
        {80}new nskPh_165;
        {81}let skPh_166 = nskPh_165 in
        {82}let pkPh_167 = pk(skPh_166) in
        {83}let PharmID_168 = host(pkPh_167) in
        {84}!
        (
            {85}out(ch, pkPh_167)
        ) | (
            {86}!
            (
                {87}out(privchphpt_103, pkPh_167)
            ) | (
                {88}!
                {89}in(privchmpaph_102, dpkMPA_169);
                {90}let dMpaID_170 = host(dpkMPA_169) in
                {91}out(ch, sign((PharmID_168,dMpaID_170),skPh_166));
                {92}in(ch, xPhPtAuthProof_171);
                {93}let (xPhPtCred_172,xPhPtSSS_173) = getpublic(xPhPtAuthProof_171) in
                {94}if PtCredVerifyPh(xPhPtAuthProof_171,xPhPtCred_172,xPhPtSSS_173) = true() then
                {95}in(ch, (xPhSPKDrPtDrNym_174,xPtPhSPKPtID_175,xvc1_176,xvc2_177,xvc3_178,xvc31_179,xvc4_180,xc5_181));
                {96}let (xPhPrescText_182,xPhPrescID_183,xPhDrComt_184,xPhPtComt_185) = getmsg(xPhSPKDrPtDrNym_174) in
                {97}let (=xPhDrComt_184,xPhDrCred_186) = getpubmsg(xPhSPKDrPtDrNym_174) in
                {98}if CheckSPKDrPtDrNym(xPhSPKDrPtDrNym_174,xPhDrCred_186,xPhPrescText_182,xPhPrescID_183,xPhDrComt_184,xPhPtComt_185) = true() then
                {99}let xnonce_187 = getmsg(xPtPhSPKPtID_175) in
                {100}if CheckSPKPhPtID(xPtPhSPKPtID_175,xPhPtCred_172,xPhPtComt_185,xnonce_187) = true() then
                {101}let (=xPhPtCred_172,xEnc1_188) = getpublic(xvc1_176) in
                {102}if CheckVEncHii(xvc1_176,xPhPtCred_172,xEnc1_188,dpkMPA_169) = true() then
                {103}let (=xPhSPKDrPtDrNym_174,xEnc2_189) = getpublic(xvc2_177) in
                {104}if CheckVEncDrnymMpa(xvc2_177,xPhSPKDrPtDrNym_174,xEnc2_189,dpkMPA_169) = true() then
                {105}let (=xPhPtCred_172,xEnc3_190) = getpublic(xvc3_178) in
                {106}if CheckVEncPtnym(xvc3_178,xPhPtCred_172,xEnc3_190,pkSSO_104) = true() then
                {107}let (=xPhPtCred_172,xEnc31_191) = getpublic(xvc31_179) in
                {108}if CheckVEncHii(xvc31_179,xPhPtCred_172,xEnc31_191,pkSSO_104) = true() then
                {109}let (=xPhPtCred_172,xEnc4_192) = getpublic(xvc4_180) in
                {110}if CheckVEncPtnym(xvc4_180,xPhPtCred_172,xEnc4_192,dpkMPA_169) = true() then
                {111}out(ch, invoice(xPhPrescID_183));
                {112}in(ch, xReceptionAck_193);
                {113}if CheckReceptionAck(xReceptionAck_193,xPhPtCred_172,xPhPrescID_183,PharmID_168,xvc1_176,xvc2_177,xvc3_178,xvc31_179,xvc4_180,xc5_181) = true() then
                {114}out(ch, (sign((PharmID_168,dMpaID_170),skPh_166),PharmID_168));
                {115}in(ch, xMpaAuth_194);
                {116}if checkAuth(xMpaAuth_194,dpkMPA_169) = true() then
                {117}out(ch, (xPhSPKDrPtDrNym_174,xvc1_176,xvc2_177,xvc3_178,xvc31_179,xvc4_180,xc5_181,xReceptionAck_193))
            )
        )
    ) | (
        {118}!
        (
            {119}new nskMPA_195;
            {120}let skMPA_196 = nskMPA_195 in
            {121}let pkMPA_197 = pk(skMPA_196) in
            {122}let MpaID_198 = host(pkMPA_197) in
            {123}!
            (
                {124}out(ch, pkMPA_197)
            ) | (
                {125}!
                (
                    {126}out(privchmpaph_102, pkMPA_197)
                ) | (
                    {127}!
                    {128}in(ch, (xMpaPhAuth_199,xPharmID_200));
                    {129}let xpkPh_201 = key(xPharmID_200) in
                    {130}if checkAuth(xMpaPhAuth_199,xpkPh_201) = true() then
                    {131}let (=xPharmID_200,=MpaID_198) = getmessage(xMpaPhAuth_199,xpkPh_201) in
                    {132}out(ch, sign(MpaID_198,skMPA_196));
                    {133}in(ch, (xMpaSPKDrPtDrNym_202,xMpaVc1_203,xMpaVc2_204,xMpaVc3_205,xMpaVc31_206,xMpaVc4_207,xMpac5_208,xMpaReceptionAck_209));
                    {134}let (xMpaDrComt_210,xMpaDrCred_211) = getpubmsg(xMpaSPKDrPtDrNym_202) in
                    {135}let (xMpaPrescText_212,xMpaPrescID_213,=xMpaDrComt_210,xMpaPtComt_214) = getmsg(xMpaSPKDrPtDrNym_202) in
                    {136}if CheckSPKDrPtDrNym(xMpaSPKDrPtDrNym_202,xMpaDrCred_211,xMpaPrescText_212,xMpaPrescID_213,xMpaDrComt_210,xMpaPtComt_214) = true() then
                    {137}let (xMpaPtCred_215,xMpaEnc1_216) = getpublic(xMpaVc1_203) in
                    {138}if CheckVEncHii(xMpaVc1_203,xMpaPtCred_215,xMpaEnc1_216,pkMPA_197) = true() then
                    {139}let xMpaPthii_217 = dec(xMpaEnc1_216,skMPA_196) in
                    {140}let (=xMpaSPKDrPtDrNym_202,xMpaEnc2_218) = getpublic(xMpaVc2_204) in
                    {141}if CheckVEncDrnymMpa(xMpaVc2_204,xMpaSPKDrPtDrNym_202,xMpaEnc2_218,pkMPA_197) = true() then
                    {142}let xMpaDrnym_219 = dec(xMpaEnc2_218,skMPA_196) in
                    {143}let (=xMpaPtCred_215,xMpaEnc3_220) = getpublic(xMpaVc3_205) in
                    {144}if CheckVEncPtnym(xMpaVc3_205,xMpaPtCred_215,xMpaEnc3_220,pkSSO_104) = true() then
                    {145}let (=xMpaPtCred_215,xMpaEnc31_221) = getpublic(xMpaVc31_206) in
                    {146}if CheckVEncHii(xMpaVc31_206,xMpaPtCred_215,xMpaEnc31_221,pkSSO_104) = true() then
                    {147}let (=xMpaPtCred_215,xMpaEnc4_222) = getpublic(xMpaVc4_207) in
                    {148}if CheckVEncPtnym(xMpaVc4_207,xMpaPtCred_215,xMpaEnc4_222,pkMPA_197) = true() then
                    {149}let xMpaPtnym_223 = dec(xMpaEnc4_222,skMPA_196) in
                    {150}if CheckReceptionAck(xMpaReceptionAck_209,xMpaPtCred_215,xMpaPrescID_213,xPharmID_200,xMpaVc1_203,xMpaVc2_204,xMpaVc3_205,xMpaVc31_206,xMpaVc4_207,xMpac5_208) = true() then
                    {151}out(ch, (sign(MpaID_198,skMPA_196),MpaID_198));
                    {152}in(ch, xMpaHiiAuth_224);
                    {153}let mpkHII_225 = key(xMpaPthii_217) in
                    {154}if checkAuth(xMpaHiiAuth_224,mpkHII_225) = true() then
                    {155}if getmessage(xMpaHiiAuth_224,mpkHII_225) = xMpaPthii_217 then
                    {156}out(ch, (xMpaReceptionAck_209,dec(xMpac5_208,skMPA_196)));
                    {157}in(ch, xMpaInvoice_226)
                )
            )
        ) | (
            {158}!
            {159}new nskHII_227;
            {160}let skHII_228 = nskHII_227 in
            {161}let pkHII_229 = pk(skHII_228) in
            {162}let HiiID_230 = host(pkHII_229) in
            {163}!
            (
                {164}out(ch, pkHII_229)
            ) | (
                {165}!
                (
                    {166}out(privchhiipt_101, HiiID_230)
                ) | (
                    {167}!
                    {168}in(ch, (xHiiMpaAuth_231,xHiiMpaID_232));
                    {169}let xHiipkMPA_233 = key(xHiiMpaID_232) in
                    {170}if checkAuth(xHiiMpaAuth_231,xHiipkMPA_233) = true() then
                    {171}out(ch, sign(HiiID_230,skHII_228));
                    {172}in(ch, (xHiiReceptionAck_234,xHiiVc5_235));
                    {173}let xHiiPtCred_236 = getpubmsg(xHiiReceptionAck_234) in
                    {174}let (xHiiPrescID_237,xHiiPharmID_238,xHiiVc1_239,xHiiVc2_240,xHiiVc3_241,xHiiVc31_242,xHiiVc4_243,xHiic5_244) = getmsg(xHiiReceptionAck_234) in
                    {175}if CheckReceptionAck(xHiiReceptionAck_234,xHiiPtCred_236,xHiiPrescID_237,xHiiPharmID_238,xHiiVc1_239,xHiiVc2_240,xHiiVc3_241,xHiiVc31_242,xHiiVc4_243,xHiic5_244) = true() then
                    {176}let (=xHiiPtCred_236,xHiiEnc5_245) = getpublic(xHiiVc5_235) in
                    {177}if CheckVEncPtnym(xHiiVc5_235,xHiiPtCred_236,xHiiEnc5_245,pkHII_229) = true() then
                    {178}let xHiiPtnym_246 = dec(xHiiEnc5_245,skHII_228) in
                    {179}out(ch, invoice(xHiiPrescID_237))
                )
            )
        )
    )
)

-- Observational equivalence
Termination warning: v_1599 <> v_1600 & attacker2:v_1598,v_1599 & attacker2:v_1598,v_1600 -> bad:
Selecting 0
Termination warning: v_1602 <> v_1603 & attacker2:v_1602,v_1601 & attacker2:v_1603,v_1601 -> bad:
Selecting 0
Completing...
Termination warning: v_1599 <> v_1600 & attacker2:v_1598,v_1599 & attacker2:v_1598,v_1600 -> bad:
Selecting 0
Termination warning: v_1602 <> v_1603 & attacker2:v_1602,v_1601 & attacker2:v_1603,v_1601 -> bad:
Selecting 0
200 rules inserted. The rule base contains 200 rules. 251 rules in the queue.
400 rules inserted. The rule base contains 399 rules. 201 rules in the queue.
600 rules inserted. The rule base contains 569 rules. 178 rules in the queue.
nounif attacker2:sign(x_133845,nskHII_227[!3 = *@sid_133846,!2 = *@sid_133847,!1 = *@sid_133848]),sign(x_133849,nskHII_227[!3 = *@sid_133846,!2 = *@sid_133847,!1 = *@sid_133848])/-5000
800 rules inserted. The rule base contains 687 rules. 155 rules in the queue.
1000 rules inserted. The rule base contains 865 rules. 248 rules in the queue.
1200 rules inserted. The rule base contains 1038 rules. 402 rules in the queue.
1400 rules inserted. The rule base contains 1211 rules. 390 rules in the queue.
1600 rules inserted. The rule base contains 1402 rules. 361 rules in the queue.
1800 rules inserted. The rule base contains 1592 rules. 262 rules in the queue.
2000 rules inserted. The rule base contains 1758 rules. 186 rules in the queue.
2200 rules inserted. The rule base contains 1723 rules. 300 rules in the queue.
2400 rules inserted. The rule base contains 1824 rules. 235 rules in the queue.
2600 rules inserted. The rule base contains 1870 rules. 326 rules in the queue.
2800 rules inserted. The rule base contains 2038 rules. 409 rules in the queue.
3000 rules inserted. The rule base contains 2227 rules. 424 rules in the queue.
3200 rules inserted. The rule base contains 2389 rules. 351 rules in the queue.
3400 rules inserted. The rule base contains 2566 rules. 296 rules in the queue.
3600 rules inserted. The rule base contains 2704 rules. 284 rules in the queue.
3800 rules inserted. The rule base contains 2848 rules. 236 rules in the queue.
4000 rules inserted. The rule base contains 2973 rules. 217 rules in the queue.
4200 rules inserted. The rule base contains 3137 rules. 211 rules in the queue.
4400 rules inserted. The rule base contains 3278 rules. 160 rules in the queue.
4600 rules inserted. The rule base contains 3298 rules. 91 rules in the queue.
4800 rules inserted. The rule base contains 3455 rules. 119 rules in the queue.
5000 rules inserted. The rule base contains 3649 rules. 72 rules in the queue.
RESULT Observational equivalence is true (bad not derivable).
