lh-l4v/tools/autocorres/LocalVarExtract.thy

26 lines
600 B
Plaintext
Raw Normal View History

2014-07-14 19:32:44 +00:00
(*
2020-03-09 06:18:30 +00:00
* Copyright 2020, Data61, CSIRO (ABN 41 687 119 230)
2014-07-14 19:32:44 +00:00
*
2020-03-09 06:18:30 +00:00
* SPDX-License-Identifier: BSD-2-Clause
2014-07-14 19:32:44 +00:00
*)
(*
* Transform the state of a L1 monad to remove local variables, lifting them to
* Isabelle's logic.
*)
theory LocalVarExtract
imports SimplConv L2Defs
begin
(* These are used to translate unsimplified L1_specs. *)
lemma Collect_prod_inter:
"{(s, t). P s t} \<inter> {(s, t). Q s t} = {(s, t). P s t \<and> Q s t}"
by (fastforce intro: set_eqI)
lemma Collect_prod_union:
"{(s, t). P s t} \<union> {(s, t). Q s t} = {(s, t). P s t \<or> Q s t}"
by (fastforce intro: set_eqI)
2014-07-14 19:32:44 +00:00
end