The vectorial modal μ-calculus on words #
The modal μ-calculus ([Koz83]) interpreted over word models, in the vectorial
presentation of [YC26] §4: a finite system of equations Xⱼ = θⱼ between
quantifier-free modal formulas plus a designated variable, evaluated as the least fixed
point of the induced monotone operator (Knaster–Tarski). By Bekić's theorem the
vectorial form is equivalent to nested μ-binders; formalizing it directly avoids
binder bookkeeping and matches the paper's own proofs.
Formulas here are the negation-free fragment μML꜀₊ — the ambient of
[YC26] Thm. 8 — extended with negated label atoms (nlabel), which keeps
negation off recursion variables (so monotonicity is structural) while covering
processes like Warao nasal spreading N′ = μX.(N ∨ (¬T ∧ ♦X)).
◇ (dia) is the forward modality reading the successor position, ♦ (bdia) the
backward modality reading the predecessor.
Main definitions #
ModalMu.Formula— quantifier-free modal formulas over labelsαandnrecursion variables;Formula.Realize— satisfaction at a pointed word under a valuation.ModalMu.System— a vectorial formula;System.op— its monotone operator on valuations;System.sem— the least-fixed-point valuation;System.Sat— pointed satisfaction of the designated variable.
Main results #
Formula.Realize.mono— satisfaction is monotone in the valuation (negation-free).System.op_sem—semis a fixed point;System.sem_eq_iterate— the iteration certificate (viaOrderHom.lfp_eq_iterate_bot), the computable route tosem.
Quantifier-free modal formulas over labels α and n recursion variables: the
negation-free fragment, with negation on class atoms only (nlabel) — so recursion
variables occur only positively and monotonicity is structural. label/nlabel test
the current position's symbol against a Finset class (featural predicates like V or N
are single atoms; a symbol test is the singleton case). initial/final are the edge
tests (the literature's min/max); dia (◇) reads the successor position, bdia
(♦) the predecessor.
- tru {α : Type u_2} {n : ℕ} : Formula α n
- fls {α : Type u_2} {n : ℕ} : Formula α n
- initial {α : Type u_2} {n : ℕ} : Formula α n
- final {α : Type u_2} {n : ℕ} : Formula α n
- label {α : Type u_2} {n : ℕ} (s : Finset α) : Formula α n
- nlabel {α : Type u_2} {n : ℕ} (s : Finset α) : Formula α n
- var {α : Type u_2} {n : ℕ} (X : Fin n) : Formula α n
- and {α : Type u_2} {n : ℕ} (φ ψ : Formula α n) : Formula α n
- or {α : Type u_2} {n : ℕ} (φ ψ : Formula α n) : Formula α n
- dia {α : Type u_2} {n : ℕ} (φ : Formula α n) : Formula α n
- bdia {α : Type u_2} {n : ℕ} (φ : Formula α n) : Formula α n
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Satisfaction at a pointed word (w, i) under a valuation U of the recursion
variables.
Equations
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ Subregular.Logic.ModalMu.Formula.tru = True
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ Subregular.Logic.ModalMu.Formula.fls = False
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ Subregular.Logic.ModalMu.Formula.initial = (x✝ = 0)
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ Subregular.Logic.ModalMu.Formula.final = (x✝ + 1 = List.length w)
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ (Subregular.Logic.ModalMu.Formula.label s) = ∃ a ∈ s, w[x✝]? = some a
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ (Subregular.Logic.ModalMu.Formula.nlabel s) = ∀ a ∈ s, w[x✝]? ≠ some a
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ (Subregular.Logic.ModalMu.Formula.var X) = (x✝ ∈ U X)
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ (φ.and ψ) = (Subregular.Logic.ModalMu.Formula.Realize w U x✝ φ ∧ Subregular.Logic.ModalMu.Formula.Realize w U x✝ ψ)
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ (φ.or ψ) = (Subregular.Logic.ModalMu.Formula.Realize w U x✝ φ ∨ Subregular.Logic.ModalMu.Formula.Realize w U x✝ ψ)
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ φ.dia = ∃ (j : ℕ), w.succ? x✝ = some j ∧ Subregular.Logic.ModalMu.Formula.Realize w U j φ
- Subregular.Logic.ModalMu.Formula.Realize w U x✝ φ.bdia = ∃ (j : ℕ), w.pred? x✝ = some j ∧ Subregular.Logic.ModalMu.Formula.Realize w U j φ
Instances For
Equations
- One or more equations did not get rendered due to their size.
- Subregular.Logic.ModalMu.Formula.instDecidableRealize w U x✝ Subregular.Logic.ModalMu.Formula.tru = isTrue trivial
- Subregular.Logic.ModalMu.Formula.instDecidableRealize w U x✝ Subregular.Logic.ModalMu.Formula.fls = isFalse not_false
- Subregular.Logic.ModalMu.Formula.instDecidableRealize w U x✝ Subregular.Logic.ModalMu.Formula.initial = Subregular.Logic.ModalMu.Formula.instDecidableRealize._aux_1 w U x✝
- Subregular.Logic.ModalMu.Formula.instDecidableRealize w U x✝ Subregular.Logic.ModalMu.Formula.final = Subregular.Logic.ModalMu.Formula.instDecidableRealize._aux_3 w U x✝
- Subregular.Logic.ModalMu.Formula.instDecidableRealize w U x✝ (Subregular.Logic.ModalMu.Formula.label s) = Subregular.Logic.ModalMu.Formula.instDecidableRealize._aux_5 w U x✝ s
- Subregular.Logic.ModalMu.Formula.instDecidableRealize w U x✝ (Subregular.Logic.ModalMu.Formula.nlabel s) = Subregular.Logic.ModalMu.Formula.instDecidableRealize._aux_7 w U x✝ s
- Subregular.Logic.ModalMu.Formula.instDecidableRealize w U x✝ (Subregular.Logic.ModalMu.Formula.var X) = Subregular.Logic.ModalMu.Formula.instDecidableRealize._aux_9 w U x✝ X
- Subregular.Logic.ModalMu.Formula.instDecidableRealize w U x✝ (φ.and ψ) = instDecidableAnd
- Subregular.Logic.ModalMu.Formula.instDecidableRealize w U x✝ (φ.or ψ) = instDecidableOr
The monotone operator a system induces on valuations (the paper's F_w^χ).
Equations
- χ.op w = { toFun := fun (U : Fin n → Set ℕ) (X : Fin n) => {i : ℕ | Subregular.Logic.ModalMu.Formula.Realize w U i (χ.eqs X)}, monotone' := ⋯ }
Instances For
Iteration certificate: an iterate of ⊥ fixed by the operator is sem. The
computable route to the least fixed point — no continuity needed.