src/HOL/UNITY/Simple/NSP_Bad.thy
changeset 32960 69916a850301
parent 32149 ef59550a55d3
child 35416 d8d7d1b785af
--- a/src/HOL/UNITY/Simple/NSP_Bad.thy	Sat Oct 17 01:05:59 2009 +0200
+++ b/src/HOL/UNITY/Simple/NSP_Bad.thy	Sat Oct 17 14:43:18 2009 +0200
@@ -1,5 +1,4 @@
-(*  Title:      HOL/Auth/NSP_Bad
-    ID:         $Id$
+(*  Title:      HOL/Auth/NSP_Bad.thy
     Author:     Lawrence C Paulson, Cambridge University Computer Laboratory
     Copyright   1996  University of Cambridge
 
@@ -25,33 +24,33 @@
     all similar protocols.*)
   Fake :: "(state*state) set"
     "Fake == {(s,s').
-	      \<exists>B X. s' = Says Spy B X # s
-		    & X \<in> synth (analz (spies s))}"
+              \<exists>B X. s' = Says Spy B X # s
+                    & X \<in> synth (analz (spies s))}"
 
   (*The numeric suffixes on A identify the rule*)
 
   (*Alice initiates a protocol run, sending a nonce to Bob*)
   NS1 :: "(state*state) set"
     "NS1 == {(s1,s').
-	     \<exists>A1 B NA.
-	         s' = Says A1 B (Crypt (pubK B) {|Nonce NA, Agent A1|}) # s1
-	       & Nonce NA \<notin> used s1}"
+             \<exists>A1 B NA.
+                 s' = Says A1 B (Crypt (pubK B) {|Nonce NA, Agent A1|}) # s1
+               & Nonce NA \<notin> used s1}"
 
   (*Bob responds to Alice's message with a further nonce*)
   NS2 :: "(state*state) set"
     "NS2 == {(s2,s').
-	     \<exists>A' A2 B NA NB.
-	         s' = Says B A2 (Crypt (pubK A2) {|Nonce NA, Nonce NB|}) # s2
+             \<exists>A' A2 B NA NB.
+                 s' = Says B A2 (Crypt (pubK A2) {|Nonce NA, Nonce NB|}) # s2
                & Says A' B (Crypt (pubK B) {|Nonce NA, Agent A2|}) \<in> set s2
-	       & Nonce NB \<notin> used s2}"
+               & Nonce NB \<notin> used s2}"
 
   (*Alice proves her existence by sending NB back to Bob.*)
   NS3 :: "(state*state) set"
     "NS3 == {(s3,s').
-	     \<exists>A3 B' B NA NB.
-	         s' = Says A3 B (Crypt (pubK B) (Nonce NB)) # s3
+             \<exists>A3 B' B NA NB.
+                 s' = Says A3 B (Crypt (pubK B) (Nonce NB)) # s3
                & Says A3  B (Crypt (pubK B) {|Nonce NA, Agent A3|}) \<in> set s3
-	       & Says B' A3 (Crypt (pubK A3) {|Nonce NA, Nonce NB|}) \<in> set s3}"
+               & Says B' A3 (Crypt (pubK A3) {|Nonce NA, Nonce NB|}) \<in> set s3}"
 
 
 constdefs
@@ -104,14 +103,14 @@
 fun ns_constrains_tac(cs,ss) i =
    SELECT_GOAL
       (EVERY [REPEAT (etac @{thm Always_ConstrainsI} 1),
-	      REPEAT (resolve_tac [@{thm StableI}, @{thm stableI},
-				   @{thm constrains_imp_Constrains}] 1),
-	      rtac @{thm ns_constrainsI} 1,
-	      full_simp_tac ss 1,
-	      REPEAT (FIRSTGOAL (etac disjE)),
-	      ALLGOALS (clarify_tac (cs delrules [impI, @{thm impCE}])),
-	      REPEAT (FIRSTGOAL analz_mono_contra_tac),
-	      ALLGOALS (asm_simp_tac ss)]) i;
+              REPEAT (resolve_tac [@{thm StableI}, @{thm stableI},
+                                   @{thm constrains_imp_Constrains}] 1),
+              rtac @{thm ns_constrainsI} 1,
+              full_simp_tac ss 1,
+              REPEAT (FIRSTGOAL (etac disjE)),
+              ALLGOALS (clarify_tac (cs delrules [impI, @{thm impCE}])),
+              REPEAT (FIRSTGOAL analz_mono_contra_tac),
+              ALLGOALS (asm_simp_tac ss)]) i;
 
 (*Tactic for proving secrecy theorems*)
 fun ns_induct_tac(cs,ss) =