src/HOL/Auth/Smartcard/ShoupRubinBella.thy
changeset 30549 d2d7874648bd
parent 30510 4120fc59dd85
child 32149 ef59550a55d3
equal deleted inserted replaced
30548:2eef5e71edd6 30549:d2d7874648bd
   775 
   775 
   776 end
   776 end
   777 *}
   777 *}
   778 
   778 
   779 method_setup prepare = {*
   779 method_setup prepare = {*
   780     Method.ctxt_args (fn ctxt => SIMPLE_METHOD (ShoupRubinBella.prepare_tac ctxt)) *}
   780     Scan.succeed (fn ctxt => SIMPLE_METHOD (ShoupRubinBella.prepare_tac ctxt)) *}
   781   "to launch a few simple facts that'll help the simplifier"
   781   "to launch a few simple facts that'll help the simplifier"
   782 
   782 
   783 method_setup parts_prepare = {*
   783 method_setup parts_prepare = {*
   784     Method.ctxt_args (fn ctxt => SIMPLE_METHOD (ShoupRubinBella.parts_prepare_tac ctxt)) *}
   784     Scan.succeed (fn ctxt => SIMPLE_METHOD (ShoupRubinBella.parts_prepare_tac ctxt)) *}
   785   "additional facts to reason about parts"
   785   "additional facts to reason about parts"
   786 
   786 
   787 method_setup analz_prepare = {*
   787 method_setup analz_prepare = {*
   788     Method.ctxt_args (fn ctxt => SIMPLE_METHOD (ShoupRubinBella.analz_prepare_tac ctxt)) *}
   788     Scan.succeed (fn ctxt => SIMPLE_METHOD (ShoupRubinBella.analz_prepare_tac ctxt)) *}
   789   "additional facts to reason about analz"
   789   "additional facts to reason about analz"
   790 
   790 
   791 
   791 
   792 
   792 
   793 lemma Spy_parts_keys [simp]: "evs \<in> srb \<Longrightarrow>  
   793 lemma Spy_parts_keys [simp]: "evs \<in> srb \<Longrightarrow>  
   829 lemma analz_image_Key_Un_Nonce: "analz (Key`K \<union> Nonce`N) = Key`K \<union> Nonce`N"
   829 lemma analz_image_Key_Un_Nonce: "analz (Key`K \<union> Nonce`N) = Key`K \<union> Nonce`N"
   830 apply auto
   830 apply auto
   831 done
   831 done
   832 
   832 
   833 method_setup sc_analz_freshK = {*
   833 method_setup sc_analz_freshK = {*
   834     Method.ctxt_args (fn ctxt =>
   834     Scan.succeed (fn ctxt =>
   835      (SIMPLE_METHOD
   835      (SIMPLE_METHOD
   836       (EVERY [REPEAT_FIRST (resolve_tac [allI, ballI, impI]),
   836       (EVERY [REPEAT_FIRST (resolve_tac [allI, ballI, impI]),
   837           REPEAT_FIRST (rtac @{thm analz_image_freshK_lemma}),
   837           REPEAT_FIRST (rtac @{thm analz_image_freshK_lemma}),
   838           ALLGOALS (asm_simp_tac (Simplifier.context ctxt Smartcard.analz_image_freshK_ss
   838           ALLGOALS (asm_simp_tac (Simplifier.context ctxt Smartcard.analz_image_freshK_ss
   839               addsimps [@{thm knows_Spy_Inputs_secureM_srb_Spy},
   839               addsimps [@{thm knows_Spy_Inputs_secureM_srb_Spy},