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 ⊨ (c1,s1) ==> s2; e ⊨ (c2,s2) ==> s3]==> e ⊨ (c1;;c2, s1) ==> s3" |
IfTrue: "[ bval b (s ∘ venv e); e ⊨ (c1,s) ==> t ]==> e ⊨ (IF b THEN c1 ELSE c2, s) ==> t" |
IfFalse: "[¬bval b (s ∘ venv e); e ⊨ (c2,s) ==> t ]==> e ⊨ (IF b THEN c1 ELSE c2, s) ==> t" |
WhileFalse: "¬bval b (s ∘ venv e) ==> e ⊨ (WHILE b DO c,s) ==> s" |
WhileTrue: "[ bval b (s1∘ venv e); e ⊨ (c,s1) ==> s2; e ⊨ (WHILE b DO c, s2) ==> s3]==> e ⊨ (WHILE b DO c, s1) ==> s3" |
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.