Everything About ___
Live briefing

Everything about Predicate transformer semantics

Reformulation of Floyd-Hoare logic

Predicate transformer semantics were introduced by Edsger Dijkstra in his seminal paper "Guarded commands, nondeterminacy and formal derivation of programs". They define the semantics of an imperative programming paradigm by assigning to each statement in this language a corresponding predicate transformer: a total function between two predicates on the state space of the statement. In this sense, predicate transformer semantics are a kind of denotational semantics. Actually, in guarded commands, Dijkstra uses only one kind of predicate transformer: the well-known weakest preconditions. Wikipedia →

🧭 Start here: a 6-step reading path

  1. Read the overview: Predicate transformer semanticsA 5-minute orientation
  2. Skim a recent paper: Edge-Enriched Graph Transformer for Multiagent Trajectory Prediction With Relative Positional SemanticsInfluential work since 2022
  3. Pick up a classic book: The science of programmingThe most-reprinted book on the subject
  4. Read the landmark paper: Predicate transformer semantics of a higher-order imperative language with record subtypingCited 21 times
  5. Go sideways: Hoare logicA closely related topic
  6. Go sideways: Axiomatic semanticsA closely related topic

📖 Definitions

No dictionary entry for this exact phrase.

🏆 Landmark papers (most cited)

🆕 Influential since 2022

📚 Books worth reading

Ranked by number of editions on Open Library, a rough measure of how lasting a book is.

🔗 Related topics