src/HOL/Bali/Trans.thy
changeset 35416 d8d7d1b785af
parent 35069 09154b995ed8
child 37597 a02ea93e88c6
equal deleted inserted replaced
35342:4dc65845eab3 35416:d8d7d1b785af
     7 PRELIMINARY!!!!!!!!
     7 PRELIMINARY!!!!!!!!
     8 *)
     8 *)
     9 
     9 
    10 theory Trans imports Evaln begin
    10 theory Trans imports Evaln begin
    11 
    11 
    12 constdefs groundVar:: "var \<Rightarrow> bool"
    12 definition groundVar :: "var \<Rightarrow> bool" where
    13 "groundVar v \<equiv> (case v of
    13 "groundVar v \<equiv> (case v of
    14                    LVar ln \<Rightarrow> True
    14                    LVar ln \<Rightarrow> True
    15                  | {accC,statDeclC,stat}e..fn \<Rightarrow> \<exists> a. e=Lit a
    15                  | {accC,statDeclC,stat}e..fn \<Rightarrow> \<exists> a. e=Lit a
    16                  | e1.[e2] \<Rightarrow> \<exists> a i. e1= Lit a \<and> e2 = Lit i
    16                  | e1.[e2] \<Rightarrow> \<exists> a i. e1= Lit a \<and> e2 = Lit i
    17                  | InsInitV c v \<Rightarrow> False)"
    17                  | InsInitV c v \<Rightarrow> False)"
    32     apply (simp add: groundVar_def,blast)
    32     apply (simp add: groundVar_def,blast)
    33     apply (simp add: groundVar_def)
    33     apply (simp add: groundVar_def)
    34     done
    34     done
    35 qed
    35 qed
    36 
    36 
    37 constdefs groundExprs:: "expr list \<Rightarrow> bool"
    37 definition groundExprs :: "expr list \<Rightarrow> bool" where
    38 "groundExprs es \<equiv> list_all (\<lambda> e. \<exists> v. e=Lit v) es"
    38 "groundExprs es \<equiv> list_all (\<lambda> e. \<exists> v. e=Lit v) es"
    39   
    39   
    40 consts the_val:: "expr \<Rightarrow> val"
    40 consts the_val:: "expr \<Rightarrow> val"
    41 primrec
    41 primrec
    42 "the_val (Lit v) = v"
    42 "the_val (Lit v) = v"