Safety and Liveness properties of ω-sequences #
This file formalizes the main results of [AS85]. Namely, given an appropriate topology on ω-sequences:
- Safety properties can be identified with closed sets.
- Liveness properties can be identified with dense sets.
- Every property is the intersection of a safety property and a liveness property.
References #
An alternative characterization of IsSafety that justifies its definition:
if an ω-sequence violates a safety property, then it has a finite prefix all of whose
infinite extensions also violate the property.
@[reducible, inline]
Liveness properties are identified with dense sets.
Equations
- p.IsLiveness = Dense p.toSet
Instances For
An alternative characterization of IsLiveness that justifies its definition:
any finite sequence can be extended to an infinite sequence satisfying a liveness property.
theorem
Cslib.ωLanguage.isLiveness_sup_compl_closure
{α : Type u_1}
(p : ωLanguage α)
:
(p ⊔ p.closureᶜ).IsLiveness
p ⊔ p.closureᶜ is always a liveness property for any ω-language p.
Every property p is the intersection of a safety property (namely, p.closure) and
a liveness property (namely, p ⊔ p.closureᶜ).