Reading the instance inside the doubled universe #
DescriptiveComplexity.Problems.Wide.Double runs the machinery at a universe
that is never a singleton, at the price of a universe that is no longer the
instance. This file pays that price for one sentence at a time: a sentence
about the instance's ordered vocabulary, expanded by a block, is renamed into the
extended vocabulary (DescriptiveComplexity.Draw.newBlockLHom) and relativized to
the mark (DescriptiveComplexity.relativizeTo), and then says in the doubled
universe exactly what it said in the instance
(DescriptiveComplexity.Draw.realize_relOldBlock).
The block assignment travels with it. An assignment of the instance is extended
to the doubled universe by DescriptiveComplexity.Draw.extAssign – it holds of a
tuple exactly when every entry is marked and the entries' elements satisfy it –
and that is the shape the support condition of the relativized expansion will
pin down: an assignment over the doubled universe that only ever holds of marked
tuples is an assignment of the instance and nothing more.
The lexicographic order, on the doubled universe #
On a one-coordinate tuple the lexicographic order is the order itself.
Dependency graph
Two points of the doubled universe with the same tag compare as their elements do.
Dependency graph
The renaming, and the mark #
Renaming a sentence about the instance – over its ordered vocabulary, expanded by a block – into the extended vocabulary.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The mark of the instance's own elements, in the block-expanded extended vocabulary.
Equations
Instances For
Dependency graph
The order the reduction puts on the doubled universe: the instance's copy and the junk copy, each in the instance's order.
Dependency graph
An assignment of the instance, extended to the doubled universe: it holds of a tuple exactly when every entry is marked and the entries' elements satisfy it.
Equations
Instances For
Dependency graph
An assignment of the doubled universe, restricted to the instance.
Equations
- DescriptiveComplexity.Draw.resAssign ρ i w = ρ i fun (j : Fin (B.arity i)) => DescriptiveComplexity.Draw.dblPt false (w j)
Instances For
Dependency graph
Dependency graph
An assignment is supported when it only ever holds of marked tuples: the condition the relativized expansion pins down, and exactly what makes an assignment of the doubled universe an assignment of the instance.
Equations
Instances For
Dependency graph
Dependency graph
The transport #
The structures the transport is about are built from block assignments, so they are never instances: every statement below names them.
The marked part of the doubled universe, as a substructure: the vocabulary is relational, so there is nothing to be closed under.
Equations
Instances For
Dependency graph
The marked part is the instance: an element and its marked copy.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The marked part carries the instance, over the instance's own ordered vocabulary expanded by the block: an isomorphism, the reduct of the induced structure along the renaming being what the extended assignment restricts to.
Equations
- DescriptiveComplexity.Draw.oldSubDLEquiv ρ₀ = { toEquiv := DescriptiveComplexity.Draw.oldSubDEquiv ρ₀, map_fun' := ⋯, map_rel' := ⋯ }
Instances For
Dependency graph
Reading a sentence about the instance inside the doubled universe: its renaming, relativized to the mark, says of the extended assignment exactly what it said of the assignment.
Dependency graph
The support condition, as a sentence #
An assignment of the doubled universe is an assignment of the instance exactly when it never holds of an unmarked entry. That is one sentence per relation variable of the block, and it is the conjunct the relativized expansion's domain sentence carries beside the relativized original.
A relation variable of the block, as a symbol of the expanded extended
vocabulary: named, because a raw Sum.inr is not recognized at the transparency
rw matches at.
Equations
- DescriptiveComplexity.Draw.blkSym L B i = Sum.inr ⟨i, ⋯⟩
Instances For
Dependency graph
One relation variable holds only of marked tuples, as a sentence.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The support condition, as a sentence: every relation variable of the block holds only of marked tuples.
Equations
Instances For
Dependency graph
The marked part of an arbitrary extended structure #
The doubled universe is not the only structure the relativized expansion will be
read at: FirstOrder.Language.ExpExpansion demands its domain sentence be
satisfiable at every structure, so the marked part has to be an instance in its
own right wherever there is one.
The marked part of an extended structure. A def, so that its instances
below are found by their own head rather than by the subtype's.
Equations
Instances For
Dependency graph
The element a marked point is.
Instances For
Dependency graph
Dependency graph
Dependency graph
A marked element, as a point of the marked part.
Equations
Instances For
Dependency graph
Dependency graph
Equations
- One or more equations did not get rendered due to their size.
Dependency graph
Dependency graph
The instance's own relations, on its marked part.
Equations
- One or more equations did not get rendered due to their size.
Dependency graph
An assignment of the marked part, extended to the whole structure: it holds of a tuple exactly when every entry is marked and the marked entries satisfy it.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The marked part, as a substructure of the block-expanded extended vocabulary.
Equations
- DescriptiveComplexity.Draw.markSub B ρ = { carrier := {x : M | FirstOrder.Language.Structure.RelMap (DescriptiveComplexity.Draw.oldNewSym L) ![x]}, fun_mem := ⋯ }
Instances For
Dependency graph
The marked part carries the instance it marks: the identity map is an isomorphism from the marked part, with the structures above, onto the substructure with the reduct of its induced structure.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
Reading a sentence about the marked part inside the structure: its renaming, relativized to the mark, says of the extended assignment exactly what it said of the assignment.
Dependency graph
An extended assignment is supported: nothing but marked tuples.
Dependency graph
The support condition, read: an assignment satisfies the support sentence exactly when it never holds of an unmarked entry.