equal
deleted
inserted
replaced
481 ML_setup {* |
481 ML_setup {* |
482 simpset_ref() := simpset() delloop "split_all_tac"; |
482 simpset_ref() := simpset() delloop "split_all_tac"; |
483 claset_ref () := claset () delSWrapper "split_all_tac" |
483 claset_ref () := claset () delSWrapper "split_all_tac" |
484 *} |
484 *} |
485 |
485 |
486 |
|
487 inductive "ax_derivs G" intros |
486 inductive "ax_derivs G" intros |
488 |
487 |
489 empty: " G,A|\<turnstile>{}" |
488 empty: " G,A|\<turnstile>{}" |
490 insert:"\<lbrakk>G,A\<turnstile>t; G,A|\<turnstile>ts\<rbrakk> \<Longrightarrow> |
489 insert:"\<lbrakk>G,A\<turnstile>t; G,A|\<turnstile>ts\<rbrakk> \<Longrightarrow> |
491 G,A|\<turnstile>insert t ts" |
490 G,A|\<turnstile>insert t ts" |
540 \<Longrightarrow> |
539 \<Longrightarrow> |
541 G,A\<turnstile>{Normal P} UnOp unop e-\<succ> {Q}" |
540 G,A\<turnstile>{Normal P} UnOp unop e-\<succ> {Q}" |
542 |
541 |
543 BinOp: |
542 BinOp: |
544 "\<lbrakk>G,A\<turnstile>{Normal P} e1-\<succ> {Q}; |
543 "\<lbrakk>G,A\<turnstile>{Normal P} e1-\<succ> {Q}; |
545 \<forall>v1. G,A\<turnstile>{Q\<leftarrow>Val v1} e2-\<succ> {\<lambda>Val:v2:. R\<leftarrow>Val (eval_binop binop v1 v2)}\<rbrakk> |
544 \<forall>v1. G,A\<turnstile>{Q\<leftarrow>Val v1} |
|
545 (if need_second_arg binop v1 then (In1l e2) else (In1r Skip))\<succ> |
|
546 {\<lambda>Val:v2:. R\<leftarrow>Val (eval_binop binop v1 v2)}\<rbrakk> |
546 \<Longrightarrow> |
547 \<Longrightarrow> |
547 G,A\<turnstile>{Normal P} BinOp binop e1 e2-\<succ> {R}" |
548 G,A\<turnstile>{Normal P} BinOp binop e1 e2-\<succ> {R}" |
548 |
549 |
549 Super:" G,A\<turnstile>{Normal (\<lambda>s.. P\<leftarrow>Val (val_this s))} Super-\<succ> {P}" |
550 Super:" G,A\<turnstile>{Normal (\<lambda>s.. P\<leftarrow>Val (val_this s))} Super-\<succ> {P}" |
550 |
551 |