src/HOL/Auth/TLS.ML
changeset 3919 c036caebfc75
parent 3772 6ee707a73248
child 3961 6a8996fb7d99
equal deleted inserted replaced
3918:94e0fdcb7b91 3919:c036caebfc75
   144     etac tls.induct i
   144     etac tls.induct i
   145     THEN 
   145     THEN 
   146     REPEAT (FIRSTGOAL analz_mono_contra_tac)
   146     REPEAT (FIRSTGOAL analz_mono_contra_tac)
   147     THEN 
   147     THEN 
   148     fast_tac (!claset addss (!simpset)) i THEN
   148     fast_tac (!claset addss (!simpset)) i THEN
   149     ALLGOALS (asm_simp_tac (!simpset setloop split_tac [expand_if]));
   149     ALLGOALS (asm_simp_tac (!simpset addsplits [expand_if]));
   150 
   150 
   151 
   151 
   152 (** Theorems of the form X ~: parts (spies evs) imply that NOBODY
   152 (** Theorems of the form X ~: parts (spies evs) imply that NOBODY
   153     sends messages containing X! **)
   153     sends messages containing X! **)
   154 
   154 
   196 fun analz_induct_tac i = 
   196 fun analz_induct_tac i = 
   197     etac tls.induct i   THEN
   197     etac tls.induct i   THEN
   198     ClientKeyExch_tac  (i+6)  THEN	(*ClientKeyExch*)
   198     ClientKeyExch_tac  (i+6)  THEN	(*ClientKeyExch*)
   199     ALLGOALS (asm_simp_tac 
   199     ALLGOALS (asm_simp_tac 
   200               (!simpset addcongs [if_weak_cong]
   200               (!simpset addcongs [if_weak_cong]
   201                         setloop split_tac [expand_if]))  THEN
   201                         addsplits [expand_if]))  THEN
   202     (*Remove instances of pubK B:  the Spy already knows all public keys.
   202     (*Remove instances of pubK B:  the Spy already knows all public keys.
   203       Combining the two simplifier calls makes them run extremely slowly.*)
   203       Combining the two simplifier calls makes them run extremely slowly.*)
   204     ALLGOALS (asm_simp_tac 
   204     ALLGOALS (asm_simp_tac 
   205               (!simpset addcongs [if_weak_cong]
   205               (!simpset addcongs [if_weak_cong]
   206 			addsimps [insert_absorb]
   206 			addsimps [insert_absorb]
   207                         setloop split_tac [expand_if]));
   207                         addsplits [expand_if]));
   208 
   208 
   209 
   209 
   210 (*** Properties of items found in Notes ***)
   210 (*** Properties of items found in Notes ***)
   211 
   211 
   212 goal thy "!!evs. [| Notes A {|Agent B, X|} : set evs;  evs : tls |]  \
   212 goal thy "!!evs. [| Notes A {|Agent B, X|} : set evs;  evs : tls |]  \