doc-src/TutorialI/CTL/PDL.thy
changeset 10178 aecb5bf6f76f
parent 10171 59d6633835fa
child 10186 499637e8f2c6
equal deleted inserted replaced
10177:383b0a1837a9 10178:aecb5bf6f76f
     1 (*<*)theory PDL = Base:(*>*)
     1 (*<*)theory PDL = Base:(*>*)
     2 
     2 
     3 subsection{*Propositional dynmic logic---PDL*}
     3 subsection{*Propositional dynamic logic---PDL*}
     4 
     4 
     5 text{*
     5 text{*\index{PDL|(}
     6 The formulae of PDL are built up from atomic propositions via the customary
     6 The formulae of PDL are built up from atomic propositions via the customary
     7 propositional connectives of negation and conjunction and the two temporal
     7 propositional connectives of negation and conjunction and the two temporal
     8 connectives @{text AX} and @{text EF}. Since formulae are essentially
     8 connectives @{text AX} and @{text EF}. Since formulae are essentially
     9 (syntax) trees, they are naturally modelled as a datatype:
     9 (syntax) trees, they are naturally modelled as a datatype:
    10 *}
    10 *}
    57 "mc(Atom a)  = {s. a \<in> L s}"
    57 "mc(Atom a)  = {s. a \<in> L s}"
    58 "mc(Neg f)   = -mc f"
    58 "mc(Neg f)   = -mc f"
    59 "mc(And f g) = mc f \<inter> mc g"
    59 "mc(And f g) = mc f \<inter> mc g"
    60 "mc(AX f)    = {s. \<forall>t. (s,t) \<in> M  \<longrightarrow> t \<in> mc f}"
    60 "mc(AX f)    = {s. \<forall>t. (s,t) \<in> M  \<longrightarrow> t \<in> mc f}"
    61 "mc(EF f)    = lfp(\<lambda>T. mc f \<union> M^-1 ^^ T)"
    61 "mc(EF f)    = lfp(\<lambda>T. mc f \<union> M^-1 ^^ T)"
    62 
       
    63 
    62 
    64 text{*\noindent
    63 text{*\noindent
    65 Only the equation for @{term EF} deserves some comments. Remember that the
    64 Only the equation for @{term EF} deserves some comments. Remember that the
    66 postfix @{text"^-1"} and the infix @{text"^^"} are predefined and denote the
    65 postfix @{text"^-1"} and the infix @{text"^^"} are predefined and denote the
    67 converse of a relation and the application of a relation to a set. Thus
    66 converse of a relation and the application of a relation to a set. Thus
   197 Fortunately, @{term"EN f"} can already be expressed as a PDL formula. How?
   196 Fortunately, @{term"EN f"} can already be expressed as a PDL formula. How?
   198 
   197 
   199 Show that the semantics for @{term EF} satisfies the following recursion equation:
   198 Show that the semantics for @{term EF} satisfies the following recursion equation:
   200 @{prop[display]"(s \<Turnstile> EF f) = (s \<Turnstile> f | s \<Turnstile> EN(EF f))"}
   199 @{prop[display]"(s \<Turnstile> EF f) = (s \<Turnstile> f | s \<Turnstile> EN(EF f))"}
   201 \end{exercise}
   200 \end{exercise}
       
   201 \index{PDL|)}
   202 *}
   202 *}
   203 (*<*)
   203 (*<*)
   204 theorem main: "mc f = {s. s \<Turnstile> f}";
   204 theorem main: "mc f = {s. s \<Turnstile> f}";
   205 apply(induct_tac f);
   205 apply(induct_tac f);
   206 apply(auto simp add:EF_lemma);
   206 apply(auto simp add:EF_lemma);