equal
deleted
inserted
replaced
360 \ Key K ~: analz (sees lost Spy evs)"; |
360 \ Key K ~: analz (sees lost Spy evs)"; |
361 by (etac ns_shared.induct 1); |
361 by (etac ns_shared.induct 1); |
362 by analz_Fake_tac; |
362 by analz_Fake_tac; |
363 by (ALLGOALS |
363 by (ALLGOALS |
364 (asm_simp_tac |
364 (asm_simp_tac |
365 (!simpset addsimps ([analz_subset_parts RS contra_subsetD, |
365 (!simpset addsimps ([not_parts_not_analz, |
366 analz_insert_Key_newK] @ pushes) |
366 analz_insert_Key_newK] @ pushes) |
367 setloop split_tac [expand_if]))); |
367 setloop split_tac [expand_if]))); |
368 (*NS2*) |
368 (*NS2*) |
369 by (fast_tac (!claset addIs [parts_insertI] |
369 by (fast_tac (!claset addIs [parts_insertI] |
370 addEs [Says_imp_old_keys RS less_irrefl] |
370 addEs [Says_imp_old_keys RS less_irrefl] |
371 addss (!simpset)) 2); |
371 addss (!simpset)) 2); |
372 (*OR4, OR2, Fake*) |
372 (*OR4, OR2, Fake*) |
373 by (REPEAT_FIRST (resolve_tac [conjI, impI] ORELSE' spy_analz_tac)); |
373 by (REPEAT_FIRST spy_analz_tac); |
374 (*NS3 and Oops subcases*) (**LEVEL 7 **) |
374 (*NS3 and Oops subcases*) (**LEVEL 7 **) |
375 by (step_tac (!claset delrules [impCE]) 1); |
375 by (step_tac (!claset delrules [impCE]) 1); |
376 by (full_simp_tac (!simpset addsimps [all_conj_distrib]) 2); |
376 by (full_simp_tac (!simpset addsimps [all_conj_distrib]) 2); |
377 by (etac conjE 2); |
377 by (etac conjE 2); |
378 by (mp_tac 2); |
378 by (mp_tac 2); |