Documentation

Complexitylib.DescriptiveComplexity.Interpretation.Composition

Composition and identity for tagged interpretations #

Composition preserves the interpreted structure up to isomorphism. Its tag count is t₂ * t₁ ^ d₂, its dimension is d₂ * d₁, and invariant queries give the same answer under composition or successive application. The one-tag, dimension-one identity is likewise an identity up to isomorphism.

These are the semantic laws needed for first-order reductions, following Immerman, Chapter 3, and the tagged presentation of Senellart--Gnatenko (2026).

theorem Complexity.DescriptiveComplexity.TaggedFOInterpretation.comp_query {U V W : Vocabulary} {t₁ d₁ t₂ d₂ : ℕ} (I₂ : TaggedFOInterpretation V W t₂ d₂) (I₁ : TaggedFOInterpretation U V t₁ d₁) (A : FinStruct U) {Q : BooleanQuery W} (hQ : Q.IsOrderIndependent) :
Q ((I₂.comp I₁).apply A) ↔ Q (I₂.apply (I₁.apply A))

Invariant queries cannot distinguish composition from successive application.

Translating along a composite agrees semantically with successive translations.