Up to index of Isabelle/HOL/HOL-Complex/CSP-Prover
theory CSP_proc_cpo = CSP_proc + Act_prefix_cpo + Proc_name_cpo:(*-------------------------------------------* | CSP-Prover | | December 2004 | | Yoshinao Isobe (AIST JAPAN) | *-------------------------------------------*) theory CSP_proc_cpo = CSP_proc + (* STOP_cpo + SKIP_cpo + DIV_cpo + *) Act_prefix_cpo + (* Ext_choice_cpo + Ext_pre_choice_cpo + Int_choice_cpo + Rep_int_choice_cpo + Conditional_cpo + Parallel_cpo + Renaming_cpo + Seq_compo_cpo + *) Proc_name_cpo : (***************************************************************** 1. [[P]]SF : continuous 2. 3. 4. *****************************************************************) (********************************************************* continuous decomposition *********************************************************) (* Abs_domSF *) lemma continuous_Abs_domSF_only_if: "continuous [[P]]SF ==> continuous ([[P]]T ** [[P]]F)" apply (simp add: evalSF_def) apply (simp add: pairSF_def) apply (simp add: pair_fun_def) apply (insert compo_continuous [of "(%ev. Abs_domSF ([[P]]T ev, [[P]]F ev))" "Rep_domSF" ]) apply (simp add: comp_def) apply (simp add: cont_Rep_domSF) apply (simp add: Abs_domSF_inverse) done lemma continuous_Abs_domSF_if: "continuous ([[P]]T ** [[P]]F) ==> continuous [[P]]SF" apply (simp add: evalSF_def) apply (simp add: pairSF_def) apply (simp add: pair_fun_def) apply (insert continuous_Abs_domSF[of "(%x. ([[P]]T x, [[P]]F x))"]) by (simp add: comp_def) (* iff *) lemma continuous_Abs_domSF: "continuous [[P]]SF = continuous ([[P]]T ** [[P]]F)" apply (rule iffI) apply (simp add: continuous_Abs_domSF_only_if) apply (simp add: continuous_Abs_domSF_if) done (* decompo *) lemma continuous_evalSF_decompo: "continuous [[P]]SF = (continuous [[P]]T & continuous [[P]]F)" apply (simp add: continuous_Abs_domSF) by (simp add: pair_continuous) (***************************************************************** !!! proc continuous !!! This proof will be completed soon. *****************************************************************) lemma evalSF_continuous: "continuous [[P]]SF" apply (simp add: continuous_evalSF_decompo) apply (induct_tac P) defer defer defer apply (simp add: Act_prefix_evalT_continuous Act_prefix_evalF_continuous) defer defer defer defer defer defer defer defer defer apply (simp add: continuous_evalSF_decompo[THEN sym]) apply (simp add: Proc_name_evalSF_continuous) oops end
lemma continuous_Abs_domSF_only_if:
continuous [[P]]SF ==> continuous ([[P]]T ** [[P]]F)
lemma continuous_Abs_domSF_if:
continuous ([[P]]T ** [[P]]F) ==> continuous [[P]]SF
lemma continuous_Abs_domSF:
continuous [[P]]SF = continuous ([[P]]T ** [[P]]F)
lemma continuous_evalSF_decompo:
continuous [[P]]SF = (continuous [[P]]T ∧ continuous [[P]]F)