(*Demonstrates induction, but not used in the following proof*) lemma Timer_leadsTo_zero: "Timer ∈ UNIV leadsTo {s. count s = 0}" apply (rule_tac f = count in lessThan_induct, simp) apply (case_tac "m") apply (force intro!: subset_imp_leadsTo) apply (unfold Timer_def, ensures_tac "decr") done
lemma TimerArray_leadsTo_zero: "finite I ==> (plam i: I. Timer) ∈ UNIV leadsTo {(s,uu). ∀i∈I. s i = 0}" apply (erule_tac A'1 = "λi. lift_set i ({0} × UNIV)" in finite_stable_completion [THEN leadsTo_weaken]) apply auto (*Safety property, already reduced to the single Timer case*) prefer2 apply (simp add: Timer_def, safety) (*Progress property for the array of Timers*) apply (rule_tac f = "sub i o fst"in lessThan_induct) apply (case_tac "m") (*Annoying need to massage the conditions to have the form (... \<times> UNIV)*) apply (auto intro: subset_imp_leadsTo
simp add: insert_absorb
lift_set_Un_distrib [symmetric] lessThan_Suc [symmetric]
Times_Un_distrib1 [symmetric] Times_Diff_distrib1 [symmetric]) apply (rename_tac "n") apply (rule PLam_leadsTo_Basis) apply (auto simp add: lessThan_Suc [symmetric]) apply (unfold Timer_def mk_total_program_def, safety) apply (rule_tac act = decr in totalize_transientI, auto) done
end
Messung V0.5 in Prozent
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.10Angebot
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-09-27)
¤
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.