src/HOL/TLA/Memory/MemoryParameters.ML
author wenzelm
Fri, 08 Mar 2002 16:24:06 +0100
changeset 13049 ce180e5b7fa0
parent 9517 f58863b1406a
child 17309 c43ed29bd197
permissions -rw-r--r--
tuned;
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:        MemoryParameters.ML
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
     3
    Author:      Stephan Merz
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
     4
    Copyright:   1997 University of Munich
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
    RPC-Memory example: memory parameters (ML file)
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: 3807
diff changeset
     9
Addsimps ([BadArgNoMemVal,MemFailNoMemVal,InitValMemVal,NotAResultNotVal,
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 3807
diff changeset
    10
                  NotAResultNotOK, NotAResultNotBA, NotAResultNotMF]
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 3807
diff changeset
    11
               @ (map (fn x => x RS not_sym) 
db63752140c7 updated (Stephan Merz);
wenzelm
parents: 3807
diff changeset
    12
                      [NotAResultNotOK, NotAResultNotBA, NotAResultNotMF]));
3807
82a99b090d9d A formalization of TLA in HOL -- by Stephan Merz;
wenzelm
parents:
diff changeset
    13
9517
f58863b1406a tuned version by Stephan Merz (unbatchified etc.);
wenzelm
parents: 6255
diff changeset
    14
val prems = goal thy "[| x : MemVal; (x ~= NotAResult ==> P) |] ==> P";
f58863b1406a tuned version by Stephan Merz (unbatchified etc.);
wenzelm
parents: 6255
diff changeset
    15
by (resolve_tac prems 1);
f58863b1406a tuned version by Stephan Merz (unbatchified etc.);
wenzelm
parents: 6255
diff changeset
    16
by (cut_facts_tac (NotAResultNotVal::prems) 1);
f58863b1406a tuned version by Stephan Merz (unbatchified etc.);
wenzelm
parents: 6255
diff changeset
    17
by (Force_tac 1);
f58863b1406a tuned version by Stephan Merz (unbatchified etc.);
wenzelm
parents: 6255
diff changeset
    18
qed "MemValNotAResultE";