Ordered interpretations with a domain formula #
An ordered interpretation of dimension k supplies a domain formula and formulas for the target
input relations, all over the canonically ordered source language. In a source structure the
universe of the image is the set of k-tuples satisfying the domain formula, ordered
lexicographically with the first coordinate most significant. Up to the rank isomorphism, this is
the image of [Immerman1999, Definition 1.26]: here the domain tuples are renumbered by rank onto
Fin m, where m is their number, and the target relations are evaluated at the unranked tuples.
The canonical numerics of the image are those of Fin m; nothing about their definability is
assumed at this level. A first-order query on ordered structures must include first-order
definitions of the target numerics [Immerman1999, Remark 1.32], and without the assumption that
the domain formula is true, target BIT need not be first-order definable in the image
[Immerman1999, the paragraph after Exercise 1.33]. These semantic maps are therefore more general
than Immerman's first-order queries: his parity example shows that an image whose numerics are
not certified need not be a first-order query. The example is cited, not formalized. His numeric
definitions are the certificates of Ordered.DomainInterpretation.Certificate, which first-order
reductions (Ordered.Reduces) require.
An ordered target structure needs at least two elements [Immerman1999, Proviso 1.15]. An interpretation is admissible when its domain has at least two tuples in every source. This is the library's convention, motivated by that proviso; Immerman's definition does not discuss smaller domains.
Main definitions #
Cslib.Logic.FO.Ordered.DomainInterpretation: a domain formula and target relation formulas.Cslib.Logic.FO.Ordered.DomainInterpretation.card: the number of domain tuples.Cslib.Logic.FO.Ordered.DomainInterpretation.unrank: the domain tuple of each rank.Cslib.Logic.FO.Ordered.DomainInterpretation.rank: the rank of each domain tuple.Cslib.Logic.FO.Ordered.DomainInterpretation.inputStructure: the target relations on ranks.Cslib.Logic.FO.Ordered.DomainInterpretation.Admissible: at least two domain tuples everywhere.Cslib.Logic.FO.Ordered.DomainInterpretation.map: the image of a source structure.Cslib.Logic.FO.Ordered.DomainInterpretation.toFOInterpretation: the same formulas as an order-free interpretation.Cslib.Logic.FO.Ordered.IsDomainMap: the images of admissible interpretations.
Main results #
Cslib.Logic.FO.Ordered.DomainInterpretation.lexRank_unrank_lt_lexRank_unrank_iff: ranks number domain tuples in lexicographic order.Cslib.Logic.FO.Ordered.DomainInterpretation.card_filter_lt_unrank: the rank of a domain tuple counts the domain tuples before it.Cslib.Logic.FO.Ordered.DomainInterpretation.unrank_eq_of_strictMono: any increasing enumeration of the domain isunrank.Cslib.Logic.FO.Ordered.DomainInterpretation.unrank_of_forall: on the full tuple domain, ranks are lexicographic ranks.Cslib.Logic.FO.Ordered.DomainInterpretation.relMap_map: target relations in the image.
References #
- N. Immerman, Descriptive Complexity, Proviso 1.15, Definition 1.26, Remark 1.32, Exercise 1.33 and the paragraph after it.
An ordered interpretation of dimension k of L' in L: a domain formula on k-tuples, and
for each relation symbol of L' a formula with a block of k variables per argument. All formulas
are over the canonically ordered source language.
The domain formula: the image consists of the tuples satisfying it.
The formula defining a target relation on blocks of
ksource variables.
Instances For
The same formulas, as an order-free interpretation of L' in the canonically ordered source
language, with tuples of Fin k as domain elements.
Instances For
The lexicographic ranks, among all k-tuples, of the domain tuples.
Instances For
The number of domain tuples: the size of the image.
Instances For
The domain tuple of a given rank, in lexicographic order.
Instances For
The domain tuples are counted by card.
The tuple of every rank satisfies the domain formula.
Ranks number the domain tuples in lexicographic order.
Every domain tuple has a rank.
The rank of a domain tuple.
Instances For
The rank of a domain tuple counts the domain tuples before it in lexicographic order.
The rank of a domain tuple, as a count of the domain tuples before it.
Characterization of ranks. An enumeration of exactly the domain tuples that increases in
lexicographic order is unrank, up to the size cast.
When every tuple is in the domain, there are M.size ^ k of them.
When every tuple is in the domain, ranks are lexicographic ranks among all tuples.
The image #
An interpretation is admissible when every source has at least two domain tuples, so that its
image carries distinct canonical constants 0 and 1.
Instances For
The target input relations on the ranks of the domain tuples. Numeric symbols are the
canonical ones of Fin (I.card M).
Instances For
The image of a source structure under an admissible interpretation.
Instances For
A target relation holds of some ranks when its formula holds of the unranked tuples.
The maps between ordered structures given by admissible ordered interpretations with a domain formula, with no numeric certificate.
Instances For
The image of an admissible interpretation is a domain map.