Put in a simpler and *much* faster proof of no_nonce_OR1_OR2
authorpaulson
Tue, 08 Oct 1996 10:27:31 +0200
changeset 2071 0debdc018d26
parent 2070 84f4572a6b20
child 2072 6ac12b9478d5
Put in a simpler and *much* faster proof of no_nonce_OR1_OR2
src/HOL/Auth/OtwayRees.ML
--- a/src/HOL/Auth/OtwayRees.ML	Tue Oct 08 10:26:23 1996 +0200
+++ b/src/HOL/Auth/OtwayRees.ML	Tue Oct 08 10:27:31 1996 +0200
@@ -450,19 +450,10 @@
 \             : parts (sees lost Spy evs) -->                       \
 \            Crypt {|NA', NA, Agent A', Agent A|} (shrK A)       \
 \             ~: parts (sees lost Spy evs)";
-by (etac otway.induct 1);
-by (ALLGOALS (asm_simp_tac (!simpset addsimps [parts_insert2])));
-(*It is hard to generate this proof in a reasonable amount of time*)
-by (step_tac (!claset addSEs [MPair_parts, nonce_not_seen_now]
-                      addSDs [Says_imp_sees_Spy RS parts.Inj]) 1);
-by (REPEAT_FIRST (fast_tac (!claset (*40 seconds??*)
-                            addSDs  [impOfSubs analz_subset_parts,
-                                     impOfSubs parts_insert_subset_Un]
-                            addss  (!simpset))));
-by (REPEAT_FIRST (fast_tac (!claset 
-                              addSEs (partsEs@[nonce_not_seen_now])
+by (parts_induct_tac 1);
+by (REPEAT (fast_tac (!claset addSEs (partsEs@[nonce_not_seen_now])
                               addSDs  [impOfSubs parts_insert_subset_Un]
-                              addss (!simpset))));
+                              addss (!simpset)) 1));
 qed_spec_mp"no_nonce_OR1_OR2";