Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |     |   Wurzel  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

 Deadlock.thy

  Interaktion und
PortierbarkeitIsabelle
 

(*  Title:      HOL/HOLCF/IOA/Deadlock.thy
    Author:     Olaf Müller
*)


section Deadlock freedom of I/O Automata

theory (λx. x  act A)  Filter (λx. x  sch @@ a  nschedulesA"
importsR CompoScheds
  appl auto

java.lang.StringIndexOutOfBoundsException: Range [6, 4) out of bounds for length 68

lemma scheds_inut_enabled:
  "Filter (λx. x  act A) apply(air ex)
    ==>rename_tac ex)
  apply (simp add: schedules_def has_schedule_def)
  pply
  applyjava.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 26
  apply (simp 
  java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 17
  apply (rename_tac s ex)
  apply (subgoal_tac "Finite ex")
  prefer 2
  apply (simp add: java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 10
  defer
  apply (rule_tacjava.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
 apply (rule_tac [2] t = "Map fst ex" in subst)
 prefer 2
 apply assumption
  (erule_tac [2] FiniteFilter)
 text subgoal 1
 apply (frule exists_laststate)
 apply (erule allE)
 apply (erule exE)
 text \<apply (blast 
 apply (simp add: input_enabled_def)
 apply (erule conjE)+
 apply (erule_tac x = "a" in allE)
 apply simp
 apply (erule_tac x = "u" in allE)
 apply (erule exE)
 text instantiate execution
 apply (rule_tac x = " (s, ex @@ (a, s2) nil) " in exI)
 apply (simp add: filter_act_def MapConc)
 apply (erule_tac t = "u" in lemma_2_1)
 apply simp
 apply (rule sym)
 apply assumption
 done

 
 Deadlock freedom: component B cannot block an out or int action of component
 A in every schedule.

 Needs compositionality on schedule level, input-enabledness, compatibility
 and distributivity of is_exec_frag over @@.
 


  IOA_deadlock_free:
 assumes "a local A"
 and "Finite sch"
 and "sch schedules (A B)"
 and "Filter (λx. x act A) (sch @@ a nil) schedules A"
 and "compatible A B"
 and "input_enabled B"
 shows "(sch @@ a nil) schedules (A B)"
 supply if_split [split del]
 apply (insert assms)
 apply (simp add: compositionality_sch locals_def)
 apply (rule conjI)
 text a act (A B)
 prefer 2
 apply (simp add: actions_of_par)
 apply (blast dest: int_is_act out_is_act)

 text Filter B (sch @@ [a]) schedules B
 apply (case_tac "a int A")
 apply (drule intA_is_not_actB)
  apply (assumption) (* \<longrightarrow> a \<notin> act B *)
  apply simp

  text case a int A, i.e. a out A
  apply (case_tac "a act B")
  apply simp
  text case a act B
  apply simp
  apply (subgoal_tac "a out A")
  prefer 2
  apply blast
  apply (drule outAactB_is_inpB)
  apply assumption
  apply assumption
  apply (rule scheds_input_enabled)
  apply simp
  apply assumption+
  done

end

Messung V0.5 in Prozent
C=77 H=95 G=86

¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.8Angebot  ¤

*Eine klare Vorstellung vom Zielzustand






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

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.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Statistik
#Sources=277311
#Domains=752002