src/HOL/Bali/WellType.thy
changeset 55518 1ddb2edf5ceb
parent 52037 837211662fb8
child 58887 38db8ddc0f57
equal deleted inserted replaced
55517:a3870c12f254 55518:1ddb2edf5ceb
    79 lemma mhd_accmodi_simp [simp]: "accmodi (mhd m) = accmodi m"
    79 lemma mhd_accmodi_simp [simp]: "accmodi (mhd m) = accmodi m"
    80 by (cases m) simp
    80 by (cases m) simp
    81 
    81 
    82 definition
    82 definition
    83   cmheads :: "prog \<Rightarrow> qtname \<Rightarrow> qtname \<Rightarrow> sig \<Rightarrow> emhead set"
    83   cmheads :: "prog \<Rightarrow> qtname \<Rightarrow> qtname \<Rightarrow> sig \<Rightarrow> emhead set"
    84   where "cmheads G S C = (\<lambda>sig. (\<lambda>(Cls,mthd). (ClassT Cls,(mhead mthd))) ` Option.set (accmethd G S C sig))"
    84   where "cmheads G S C = (\<lambda>sig. (\<lambda>(Cls,mthd). (ClassT Cls,(mhead mthd))) ` set_option (accmethd G S C sig))"
    85 
    85 
    86 definition
    86 definition
    87   Objectmheads :: "prog \<Rightarrow> qtname \<Rightarrow> sig \<Rightarrow> emhead set" where
    87   Objectmheads :: "prog \<Rightarrow> qtname \<Rightarrow> sig \<Rightarrow> emhead set" where
    88   "Objectmheads G S =
    88   "Objectmheads G S =
    89     (\<lambda>sig. (\<lambda>(Cls,mthd). (ClassT Cls,(mhead mthd))) 
    89     (\<lambda>sig. (\<lambda>(Cls,mthd). (ClassT Cls,(mhead mthd))) 
    90       ` Option.set (filter_tab (\<lambda>sig m. accmodi m \<noteq> Private) (accmethd G S Object) sig))"
    90       ` set_option (filter_tab (\<lambda>sig m. accmodi m \<noteq> Private) (accmethd G S Object) sig))"
    91 
    91 
    92 definition
    92 definition
    93   accObjectmheads :: "prog \<Rightarrow> qtname \<Rightarrow> ref_ty \<Rightarrow> sig \<Rightarrow> emhead set"
    93   accObjectmheads :: "prog \<Rightarrow> qtname \<Rightarrow> ref_ty \<Rightarrow> sig \<Rightarrow> emhead set"
    94 where
    94 where
    95   "accObjectmheads G S T =
    95   "accObjectmheads G S T =