1. In functional programming, a Boolean expression attached to a function definition specifying when (for what arguments) that definition is appropriate.
2. In (parallel) logic programming, a Boolean expression which is used to select a clause from several alternative matching clauses.
See Guarded Horn Clauses.
3. In parallel languages, a Boolean expression which specifies when an message may be sent or received.