equal
deleted
inserted
replaced
192 distinct pns \<and> |
192 distinct pns \<and> |
193 unique lvars \<and> |
193 unique lvars \<and> |
194 This \<notin> set pns \<and> This \<notin> set (map fst lvars) \<and> |
194 This \<notin> set pns \<and> This \<notin> set (map fst lvars) \<and> |
195 (\<forall>pn\<in>set pns. map_of lvars pn = None) \<and> |
195 (\<forall>pn\<in>set pns. map_of lvars pn = None) \<and> |
196 (\<forall>(vn,T)\<in>set lvars. is_type G T) & |
196 (\<forall>(vn,T)\<in>set lvars. is_type G T) & |
197 (let E = (G,map_of lvars(pns[\<mapsto>]pTs)(This\<mapsto>Class C)) in |
197 (let E = (G,(map_of lvars)(pns[\<mapsto>]pTs, This\<mapsto>Class C)) in |
198 E\<turnstile>blk\<surd> \<and> (\<exists>T. E\<turnstile>res::T \<and> G\<turnstile>T\<preceq>rT))" |
198 E\<turnstile>blk\<surd> \<and> (\<exists>T. E\<turnstile>res::T \<and> G\<turnstile>T\<preceq>rT))" |
199 |
199 |
200 abbreviation "wf_java_prog == wf_prog wf_java_mdecl" |
200 abbreviation "wf_java_prog == wf_prog wf_java_mdecl" |
201 |
201 |
202 lemma wf_java_prog_wf_java_mdecl: "\<lbrakk> |
202 lemma wf_java_prog_wf_java_mdecl: "\<lbrakk> |