(* Title: HOL/UNITY/FP.thy Author: Lawrence C Paulson, Cambridge University Computer Laboratory Copyright 1998 University of Cambridge From Misra, "A Logic for Concurrent Programming", 1994 *)
section‹Fixed Point of a Program›
theory FP imports UNITY begin
definition FP_Orig :: "'a program => 'a set"where "FP_Orig F == ∪{A. ∀B. F ∈ stable (A ∩ B)}"
definition FP :: "'a program => 'a set"where "FP F == {s. F ∈ stable {s}}"
lemma stable_FP_Orig_Int: "F ∈ stable (FP_Orig F Int B)" apply (simp only: FP_Orig_def stable_def Int_Union2) apply (blast intro: constrains_UN) done
lemma FP_Orig_weakest: "(∧B. F ∈ stable (A ∩ B)) ==> A <= FP_Orig F" by (simp add: FP_Orig_def stable_def, blast)
lemma stable_FP_Int: "F ∈ stable (FP F ∩ B)" proof - have"F ∈ stable (∪x∈B. FP F ∩ {x})" apply (simp only: Int_insert_right FP_def stable_def) apply (rule constrains_UN) apply simp done alsohave"(∪x∈B. FP F ∩ {x}) = FP F ∩ B" by simp finallyshow ?thesis . qed
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.