src/HOL/TLA/Stfun.ML
author paulson
Mon, 02 Aug 1999 11:24:30 +0200
changeset 7143 9c02848c5404
parent 6255 db63752140c7
child 12607 16b63730cfbb
permissions -rw-r--r--
the SVC link-up
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3807
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
     1
(* 
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
     2
    File:	 Stfun.ML
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
     3
    Author:      Stephan Merz
6255
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
     4
    Copyright:   1998 University of Munich
3807
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
     5
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
     6
Lemmas and tactics for states and state functions.
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
     7
*)
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
     8
6255
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
     9
(*  [| basevars v; !!x. v x = c ==> Q |] ==> Q  *)
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
    10
bind_thm("baseE", (standard (basevars RS exE)));
3807
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
    11
6255
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
    12
(* -------------------------------------------------------------------------------
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
    13
   The following shows that there should not be duplicates in a "stvars" tuple:
3807
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
    14
6255
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
    15
Goal "!!v. basevars (v::bool stfun, v) ==> False";
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
    16
by (etac baseE 1);
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
    17
by (subgoal_tac "(LIFT (v,v)) x = (True, False)" 1); 
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
    18
by (atac 2);
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
    19
by (Asm_full_simp_tac 1);
3807
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
    20
6255
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 4089
diff changeset
    21
------------------------------------------------------------------------------- *)