Replacing the order of an ordered structure by a definable one #
An ordered reduction is correct for every linear order of its input, which
it has no say over. What it may do is replace that order, before anything
else, by any linear order it can define: DescriptiveComplexity.FOInterpretation.reorder
is the one-dimensional interpretation of the ordered expansion in itself that
keeps every symbol and interprets the order symbol by a given formula, and
DescriptiveComplexity.FOInterpretation.reorderLEquiv says that, when the
formula defines a linear order ord' of the structure, the interpreted
structure is the input structure ordered by ord'.
This is how a reduction into a problem that reads its output in the order of
the universe – the tape order of DescriptiveComplexity.DTMNumber – can be
composed after one that produces the order of significance as a relation of
the instance: the second reduction reorders its input so that the two agree.
Reordering: the identity interpretation of the ordered expansion in
itself, with the order symbol interpreted by the formula φ (its two free
variables being the two arguments).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
When φ defines a relation Le' that is a linear order, the reordered
structure is the input structure ordered by Le'
(DescriptiveComplexity.IsLinOrd.toLinearOrder). The new order is passed as
a relation rather than as a LinearOrder so that it does not shadow the
order of the input in the statement.
Equations
- One or more equations did not get rendered due to their size.