inductive
big_step :: "penv \ venv \ nat \ com \ store \ store \ bool"
(‹_ ⊨ _ ==> _› [60,0,60] 55) where
Skip: "e \ (SKIP,s) \ s" |
Assign: "(pe,ve,f) \ (x ::= a,s) \ s(ve x := aval a (s o ve))" |
Seq: "\ e \ (c\<^sub>1,s\<^sub>1) \ s\<^sub>2; e \ (c\<^sub>2,s\<^sub>2) \ s\<^sub>3 \ \
e ⊨ (c🚫1;;c🚫2, s🚫1) ==> s🚫3" |
IfTrue: "\ bval b (s \ venv e); e \ (c\<^sub>1,s) \ t \ \
e ⊨ (IF b THEN c🚫1 ELSE c🚫2, s) ==> t" |
IfFalse: "\ \bval b (s \ venv e); e \ (c\<^sub>2,s) \ t \ \
e ⊨ (IF b THEN c🚫1 ELSE c🚫2, s) ==> t" |
WhileFalse: "\bval b (s \ venv e) \ e \ (WHILE b DO c,s) \ s" |
WhileTrue: "\ bval b (s\<^sub>1 \ venv e); e \ (c,s\<^sub>1) \ s\<^sub>2;
e ⊨ (WHILE b DO c, s🚫2) ==> s🚫3 ]==>
e ⊨ (WHILE b DO c, s🚫1) ==> s🚫3" |
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.