Numbers computed by a tower #
A family of numbers (DescriptiveComplexity.Digits.Fam) attaches a number
to each tuple of parameters of each ordered structure. Its digit relation
(DescriptiveComplexity.Digits.digRel) holds of the parameters followed by a
position – an ℓ-tuple – when the digit of that position is 1.
DescriptiveComplexity.Digits.Dig e₀ ℓ F says that the digit relation of F
can be added to any tower above the induction e₀: whatever the induction
extending e₀, one more extension computes it. Stating it over every
extension is what lets the constructions be chained, each starting from the
tower the previous one left.
This file holds the two ways of adding a relation to a tower – by a formula
(DescriptiveComplexity.Digits.exists_ext_of_formula) and by a sweep
(DescriptiveComplexity.Digits.exists_ext_of_sweep) – and the first closure
property, under addition (DescriptiveComplexity.Digits.Dig.add).
A family of numbers: one for each tuple of a parameters of each ordered
structure.
Equations
- DescriptiveComplexity.Digits.Fam K a = ((A : Type) → [K.Structure A] → [LinearOrder A] → (Fin a → A) → ℕ)
Instances For
Dependency graph
The digit relation of a family of numbers: the parameters, followed by the
positions of the digits 1.
Equations
- DescriptiveComplexity.Digits.digRel ℓ F A x = DescriptiveComplexity.Digits.tupBits (F A fun (k : Fin a) => x (Fin.castAdd ℓ k)) fun (k : Fin ℓ) => x (Fin.natAdd a k)
Instances For
Dependency graph
The structure a stratum above an induction reads: the ordered structure, expanded by the limit of the induction.
Equations
- DescriptiveComplexity.Digits.ctxStr e A = e.B.structure₁ (e.inflLimit A)
Instances For
Dependency graph
Reading a relation of the tower #
An atom of a relation variable of the induction.
Equations
- DescriptiveComplexity.Digits.ctxAt j ts = FirstOrder.Language.Relations.formula (Sum.inr j) fun (k : Fin r) => FirstOrder.Language.var (ts k)
Instances For
Dependency graph
The number computed by a relation variable, at given parameters: a formula of the position.
Equations
- DescriptiveComplexity.Digits.numAt j ws = DescriptiveComplexity.Digits.ctxAt j (Fin.append (fun (i : Fin a) => Sum.inl (ws i)) Sum.inr)
Instances For
Dependency graph
Adding a relation to a tower #
A relation defined by a formula over a tower is computed by an extension of it.
Dependency graph
The rows of a sweep over a tower are computed by an extension of it.
Dependency graph
Numbers that can be added to any tower #
The digits of the family F can be added to any tower above e₀.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
Families with the same values.
Dependency graph
A family defined by a formula of the ordered vocabulary alone.
Dependency graph
The family constantly zero.
Dependency graph
The family constantly one.
Dependency graph
Closure under addition: the sum of two numbers is defined by carry lookahead from their digits.