「‍」 Lingenic

Dynamic Logic

(⤓.md ≡ ◇.md); γ ≜ [2026-07-17T135416.643, 2026-10-22T054143.488] ∧ |γ| = 3

Dynamic Logic

Origin. Vaughan Pratt introduced dynamic logic in 1976 ("Semantical considerations on Floyd–Hoare logic"), reading programs as modalities. Fischer and Ladner isolated the propositional fragment PDL, combining modal logic with regular expressions over programs, and settled its complexity (1977, 1979). David Harel developed the first-order theory (1979). Foundational for program verification and reasoning about actions.

Models. Programs as modalities. What is true after executing a program? A program transforms states; [α]φ means "after every execution of α, φ holds." Combines reasoning about necessity (modal logic) with reasoning about actions (program semantics). Programs are first-class objects with compositional structure.

Formalism.

Propositional Dynamic Logic (PDL):

Programs (α, β, ...):

  • Atomic programs: a, b, c, ...
  • Composition: α;β (do α then β)
  • Choice: α ∪ β (do α or β nondeterministically)
  • Iteration: α* (do α zero or more times)
  • Test: φ? (proceed if φ true, fail otherwise)

Formulas:

  • Propositional atoms: p, q, r, ...
  • Boolean connectives: ¬, ∧, ∨, →
  • Box modality: [α]φ (after every execution of α, φ holds)
  • Diamond modality: ⟨α⟩φ (after some execution of α, φ holds)

Semantics: Kripke structures (W, {Rα}, V) where Rα ⊆ W × W is the accessibility relation for program α.

  • R_{α;β} = Rα ∘ Rβ (composition)
  • R_{α∪β} = Rα ∪ Rβ (union)
  • R_{α*} = (Rα)* (reflexive transitive closure)
  • R_{φ?} = {(w,w) | w ⊨ φ} (identity on φ-states)

Truth: w ⊨ [α]φ iff for all v, wRαv implies v ⊨ φ.

First-Order Dynamic Logic: Adds quantifiers, function symbols, assignment programs (x := e), loops, conditionals.

Symbols.

SymbolUnicodeNameMeaning
[α]—BoxAfter every execution of α
⟨ ⟩U+27E8, U+27E9Mathematical angle bracketsDiamond: after some execution of α
;U+003BSemicolonSequential composition of programs
∪U+222AUnionNondeterministic choice; also union of relations
*U+002AAsterisk / Kleene starIteration: zero or more times
?U+003FQuestion markTest: proceed if the formula holds
:=—AssignmentVariable assignment, in first-order dynamic logic
∘U+2218Ring operatorRelational composition
⟦ ⟧U+27E6, U+27E7Mathematical white square bracketsDenotation of a program
α, βU+03B1, U+03B2Greek small alpha, betaSchematic programs
φ, ψU+03C6, U+03C8Greek small phi, psiSchematic formulas
Rα—Transition relationThe accessibility relation for program α
W, V—States, valuationUniverse of states; assignment of atoms to states
⊨U+22A8SatisfactionTruth of a formula at a state
⊆U+2286Subset of or equal toRα ⊆ W × W
×U+00D7Multiplication signCartesian product of the state set
¬U+00ACNot signNegation
∧U+2227Logical andConjunction
∨U+2228Logical orDisjunction
→U+2192Rightwards arrowMaterial implication
{P}α{Q}—Hoare triplePartial correctness, rendered as P → [α]Q
μU+03BCGreek small muLeast fixpoint, in the μ-calculus PDL embeds into
Π¹₁—Pi-one-oneThe analytical class of first-order dynamic validity

Metatheory. Fischer and Ladner (1979) proved the small model property — every satisfiable formula has a model exponential in its length, so PDL has the finite model property — and established the EXPTIME lower bound; Pratt's tableau construction supplies the matching upper bound, making PDL satisfiability EXPTIME-complete. Segerberg (1977) proposed the axiomatization, whose distinctive component is the induction axiom [α*](φ → [α]φ) → (φ → [α*]φ), and Parikh (1978) proved it complete for the Kripke semantics. Completeness is weak only, since PDL is not compact: ⟨a*⟩p together with ¬p, ¬⟨a⟩p, ¬⟨a;a⟩p and so on is finitely satisfiable but has no model. PDL translates faithfully into the modal μ-calculus and is properly weaker, the μ-calculus expressing fixpoints no regular program describes. First-order dynamic logic is not recursively enumerable — its validities are Π¹₁-complete — so it admits no finitary complete axiomatization.

Applies to. Program verification (partial and total correctness). Hoare logic embedded in dynamic logic: {P}α{Q} as P → [α]Q. Action logic in AI. Game logic (players as programs). Database updates. Security protocols.

Limitations. PDL's programs are regular, so non-regular control — recursion, or a procedure that executes α some number of times and then β the same number — is inexpressible, and adding it destroys decidability outright: Harel, Pnueli and Stavi showed PDL with context-free programs to be Π¹₁-complete. The box is vacuously true when α fails to terminate, so [α]φ expresses partial correctness only and total correctness must be stated separately as ⟨α⟩φ. There is no program constructor for parallel composition, so concurrency has to be encoded as interleaving by hand. The decidability that makes PDL attractive does not survive the addition of data: first-order dynamic logic, the level at which actual programs live, is Π¹₁-complete and admits no complete finitary proof system, so mechanization there rests on relative completeness with respect to an arithmetical oracle.

© 2026 Lingenic LLC