|
Computational tree logic (CTL) is a branching-time logic, meaning that its model of time is a tree-like structure in which the future is not determined; there are different paths in the future, any one of which might be 'actual' path that is realised. Image File history File links Broom_icon. ...
Image File history File links Broom_icon. ...
Syntax of CTL
The Language of Well-Formed CTL Formulae is generated by the following unambiguous (wrt bracketing) Context-Free Grammar: In logic, WFF is an abbreviation for well-formed formula. ...
In linguistics and computer science, a context-free grammar (CFG) is a formal grammar in which every production rule is of the form V â w where V is a nonterminal symbol and w is a string consisting of terminals and/or non-terminals. ...
![phi::=bot |top |p|(negphi)|(phiandphi)|(phiorphi)| (phiRightarrowphi)|(phiLeftrightarrowphi)|AXphi|EXphi|AFphi|EFphi|AGphi|EGphi| A[phi U phi]|E[phi U phi]](http://upload.wikimedia.org/math/b/b/9/bb9bd14e77e65380b575612e96846cef.png) where p ranges over a set of atomic formulas. A means 'along All paths' (Inevitably) E means 'along at least (there Exists) one path' (possibly) For example: The following is a well-formed CTL formula:
 The following is not a well-formed CTL formula:
 The problem with this string is that U can occur only when paired with an A or an E.
It uses atomic propositions as its building blocks to make statements about the states of a system. CTL then combines these propositions into formulas using logical operators and temporal operators. First-order logic (FOL) is a universal language in symbolic science, and is in use everyday by mathematicians, philosophers, linguists, computer scientists and practitioners of artificial intelligence. ...
In logical calculus, logical operators or logical connectors serve to connect statements into more complicated compound statements. ...
Operators Logical operators The logical operators are the usual ones: and . Along with these operators CTL formulas can also make use of the boolean constants true and false. When someone sincerely agrees with an assertion, they might claim that it is the truth. ...
False is the antonym of the adjective true. ...
Temporal operators The temporal operators are the following: - Quantifiers over paths
- A φ - All: φ has to hold on all paths starting from the current state.
- E φ - Exists: there exists at least one path starting from the current state where φ holds.
- Path-specific quantifiers
- X φ - Next: φ has to hold at the next state (this operator is sometimes noted N instead of X).
- G φ - Globally: φ has to hold on the entire subsequent path.
- F φ - Finally: φ eventually has to hold (somewhere on the subsequent path).
- φ U ψ - Until: φ has to hold until at some position ψ holds. This implies that ψ will be verified in the future.
- φ W ψ - Weak until: φ has to hold until ψ holds. The difference with U is that there is no guarantee that ψ will ever be verified. The W operator is sometimes called "unless".
In CTL*, the temporal operators can be freely mixed. In CTL, the operator must always be grouped in two: one path operator followed by a state operator. See the examples bellow. Wikipedia does not have an article with this exact name. ...
Minimal set of operators In CTL there is a minimal set of operators. All CTL formulas can be transformed to use only those operators. This is useful in model checking. One minimal set of operators is: {false, , EG, EU, EX}. Model checking is the process of checking whether a given model satisfies a given logical formula. ...
Here are some of the transformation used for temporal operator: - EFφ == E[trueU(φ)] ( because Fφ == [trueU(φ)] )
- AXφ ==
EX( φ) - AGφ ==
EF( φ) == E[trueU( φ)] - AFφ == A[trueUφ] ==
EG( φ) - A[φUψ] ==
( E[( ψ)U (φ ψ)] EG( ψ) ) Semantics of CTL Definition CTL formulae are interpreted over Transition Systems as formally defined below. It has been suggested that state transition system be merged into this article or section. ...
Let be a model for CTL - with
where F is the set of wffs over the Language of . Then the relation of semantic entailment is defined by Structural Induction on φ: In logic, WFF is an abbreviation for well-formed formula. ...
Structural induction is a proof method that is used in mathematical logic (e. ...
             ![bigg( (mathcal{M}, s) models A[phi_1 U phi_2] bigg) Leftrightarrow bigg( forall langle s_1 rightarrow s_2 rightarrow ldots rangle (s=s_1) exists i Big( big( (mathcal{M}, s_i) models phi_2 big) land big( forall (j < i) (mathcal{M}, s_j) models phi_1 big) Big) bigg)](http://upload.wikimedia.org/math/6/8/8/688e0b25337128b166e8b21b492df891.png) ![bigg( (mathcal{M}, s) models E[phi_1 U phi_2] bigg) Leftrightarrow bigg( exists langle s_1 rightarrow s_2 rightarrow ldots rangle (s=s_1) exists i Big( big( (mathcal{M}, s_i) models phi_2 big) land big( forall (j < i) (mathcal{M}, s_j) models phi_1 big) Big) bigg)](http://upload.wikimedia.org/math/f/6/d/f6d574d168cf17767fc919b6f27cddee.png) Characterisation of CTL Rules 10-15 above refer to computation paths in models and are what ultimately characterise the "Computation Tree"; they are assertions about the nature of the infinitely deep computation tree rooted at the given state s.
Semantic Equivalence The CTL formulae φ and ψ are said to be semantically equivalent iff any state in any model which satisfies one also satisfies the other. - This is denoted
 It can be seen that A and E are duals. Furthermore so are G and F, being universal and existential computation tree quantifiers respectively. Hence an instance of De Morgan's Laws can be formulated in CTL: note that demorgans laws are also a big part in circut design. ...
   We can also derive the following from these facts: ![AFphi equiv A[top U phi]](http://upload.wikimedia.org/math/e/1/9/e1934604281861f0e970c5f4a8f76565.png) ![EFphi equiv E[top U phi]](http://upload.wikimedia.org/math/5/d/a/5da3f21cd02aabe4364859bd78254d6a.png) In fact it can be shown using these identities that a subset of the CTL temporal connectives is adequate iff it contains at least one of {AX,EX} and at least one of {EG,AF,AU}. Some other important identities:     ![A[phi U psi] equiv psi lor (phi land AX A [phi U psi])](http://upload.wikimedia.org/math/d/f/1/df13e64d67cfe7f0a22df8479fe03546.png) ![E[phi U psi] equiv psi lor (phi land EX E [phi U psi])](http://upload.wikimedia.org/math/1/5/1/151b2c0808272669208501f99b36c962.png) Examples Let P mean "I like chocolate" and Q mean "It's warm outside". AG.P - I will like chocolate from now on, no matter what happens.
EF.P - It's possible I may like chocolate some day, at least for one day.
AF.EG.P - It's always possible (AF) that I will suddenly start liking chocolate for the rest of time. (Note: not just the rest of my life, since my life is finite, while G is infinite).
EG.AF.P - This is a critical time in my life. Depending on what happens next (E), it's possible that for the rest of time (G), there will always be some time in the future (AF) when I will like chocolate. However, if the wrong thing happens next, then all bets are off and there's no guarantee about whether I'll ever like chocolate.
A(PUQ) - From now until it's warm outside, I will like chocolate every single day. Once it's warm outside, all bets are off as to whether I'll like chocolate anymore. Oh, and it's guaranteed to be warm outside eventually, even if only for a single day.
E((EX.P)U(AG.Q)) - It's possible that: there will eventually come a time when it will be warm forever (AG.Q) and that before that time there will always be some way to get me to like chocolate the next day (EX.P).
Relations with other logics Computational tree logic (CTL) is a subset of CTL* as well as of the modal µ calculus. More interestingly, CTL is a fragment of Alur, Henziger and Kupferman's Alternating-time Temporal Logic (ATL). Wikipedia does not have an article with this exact name. ...
Computational tree logic (CTL) and Linear temporal logic (LTL) are both a subset of CTL*. CTL and LTL are not equivalent and they have a common subset. Linear temporal logic (LTL) is a modal temporal logic with modalities referring to time. ...
Wikipedia does not have an article with this exact name. ...
Linear temporal logic (LTL) is a modal temporal logic with modalities referring to time. ...
- FG.P exists in LTL but not in CTL.
- AG(P
((EX.Q) (EX¬Q))) exists in CTL but not in LTL. See also Probabilistic Computational Tree Logic is an extension of CTL which allows for probabilistic quantification of described properties. ...
Fair computational tree logic is conventional computational tree logic studied with explicit fairness constraints. ...
Linear temporal logic (LTL) is a modal temporal logic with modalities referring to time. ...
External Links - Teaching slides of professor Alessandro Artale at the Free University of Bozen-Bolzano
The Free University of Bolzano (Italian: Libera Università di Bolzano, German: Freie Universität Bozen) is a university located in Bolzano, Italy. ...
References - Michael Huth and Mark Ryan (2004). "Logic in Computer Science (Second Edition)": 207. ISBN 0-521-54310-X.
- Emerson, E. A. and Halpern, J. Y. (1985). "Decision procedures and expressiveness in the temporal logic of branching time". Journal of Computer and System Sciences 30 (1): 1-24.
- Clarke, E. M., Emerson, E. A., and Sistla, A. P. (1986). "Automatic verification of finite-state concurrent systems using temporal logic specifications". ACM Transactions on Programming Languages and Systems 8 (2): 244-263.
- Emerson, E. A. (1990). "Temporal and modal logic", in J. van Leeuwen (ed.): Handbook of Theoretical Computer Science, vol. B. MIT Press, pp. 955-1072. ISBN 0-262-22039-3.
|