src/HOL/MicroJava/BV/Correct.thy
changeset 11372 648795477bb5
parent 11252 71c00cb091d2
child 12516 d09d0f160888
equal deleted inserted replaced
11371:1d5d181b7e28 11372:648795477bb5
    54 	 correct_frames G hp phi rT sig frs))))"
    54 	 correct_frames G hp phi rT sig frs))))"
    55 
    55 
    56 
    56 
    57 constdefs
    57 constdefs
    58  correct_state :: "[jvm_prog,prog_type,jvm_state] => bool"
    58  correct_state :: "[jvm_prog,prog_type,jvm_state] => bool"
    59                   ("_,_ \<turnstile>JVM _ \<surd>"  [51,51] 50)
    59                   ("_,_ |-JVM _ [ok]"  [51,51] 50)
    60 "correct_state G phi == \<lambda>(xp,hp,frs).
    60 "correct_state G phi == \<lambda>(xp,hp,frs).
    61    case xp of
    61    case xp of
    62      None => (case frs of
    62      None => (case frs of
    63 	           [] => True
    63 	           [] => True
    64              | (f#fs) => G\<turnstile>h hp\<surd> \<and>
    64              | (f#fs) => G\<turnstile>h hp\<surd> \<and>
    71 			 correct_frame G hp s maxl ins f \<and> 
    71 			 correct_frame G hp s maxl ins f \<and> 
    72 		         correct_frames G hp phi rT sig fs))
    72 		         correct_frames G hp phi rT sig fs))
    73    | Some x => True" 
    73    | Some x => True" 
    74 
    74 
    75 
    75 
    76 syntax (HTML)
    76 syntax (xsymbols)
    77  correct_state :: "[jvm_prog,prog_type,jvm_state] => bool"
    77  correct_state :: "[jvm_prog,prog_type,jvm_state] => bool"
    78                   ("_,_ |-JVM _ [ok]"  [51,51] 50)
    78                   ("_,_ \<turnstile>JVM _ \<surd>"  [51,51] 50)
    79 
    79 
    80 
    80 
    81 lemma sup_ty_opt_OK:
    81 lemma sup_ty_opt_OK:
    82   "(G \<turnstile> X <=o (OK T')) = (\<exists>T. X = OK T \<and> G \<turnstile> T \<preceq> T')"
    82   "(G \<turnstile> X <=o (OK T')) = (\<exists>T. X = OK T \<and> G \<turnstile> T \<preceq> T')"
    83   apply (cases X)
    83   apply (cases X)