CODEHALT is in RE #
The syntax half of DescriptiveComplexity.CodeHalt.codehalt_iff_cert: the
certificate of a halting computation is written as an ∃SO[new] sentence, the
logic defining RE.
- the invented values are the numeral segment – no other sort is needed, so
every quantifier of the kernel is guarded either by
¬old(a numeral) or byold(a node of the instance); - the five components of
DescriptiveComplexity.CodeHalt.Certare the relation variables of a single existential second-order block (DescriptiveComplexity.CodeHalt.evBlock); - the six conditions of
DescriptiveComplexity.CodeHalt.CertOKare the conjuncts of the first-order kernel.
The deep conjunct is the justification of an evaluation fact
(DescriptiveComplexity.CodeHalt.evOkS): eleven guarded quantifiers, which is
why the variables are named by their distance from their binder, exactly as in
DescriptiveComplexity.Problems.Machine.HaltMem.
The corollary the file exists for is
DescriptiveComplexity.codehalt_le_finsat, and with it
DescriptiveComplexity.finsat_not_computable: Trakhtenbrot's theorem, now with
nothing left to assume.
The second-order block #
The relation variables of the ∃SO[new] definition of CODEHALT: the
order of the numeral segment, addition and pairing on it, the code each node
draws, and the value each code takes on each argument.
- le : EvIx
The order of the numeral segment.
- add : EvIx
Addition on the segment.
- pr : EvIx
Cantor's pairing on the segment.
- dec : EvIx
The number of the code a node draws.
- ev : EvIx
The value a code takes on an argument.
Instances For
Dependency graph
Dependency graph
Equations
- One or more equations did not get rendered due to their size.
Dependency graph
The single existential block of the definition.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The vocabulary the kernel is written in.
Equations
Instances For
Dependency graph
A relation symbol of the instance, in the kernel's vocabulary.
Equations
Instances For
Dependency graph
The symbol marking the original elements.
Instances For
Dependency graph
The order symbol.
Equations
Instances For
Dependency graph
The addition symbol.
Equations
Instances For
Dependency graph
The pairing symbol.
Equations
Instances For
Dependency graph
The decoding symbol.
Equations
Instances For
Dependency graph
The evaluation symbol.
Equations
Instances For
Dependency graph
The extended universe #
The vocabulary of the instance, read on the extended universe.
Equations
Instances For
Dependency graph
The structure the kernel is read in: the extended structure together with an assignment of the relation variables.
Equations
Instances For
Dependency graph
Dependency graph
Dependency graph
The certificate an assignment carries #
The certificate an assignment carries: the relation variables read at the sorts they are meant for.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Atomic formulas #
An atom of a unary relation of the instance.
Equations
Instances For
Dependency graph
An atom of a binary relation of the instance.
Equations
Instances For
Dependency graph
x is an original element.
Equations
Instances For
Dependency graph
Equality of two variables.
Equations
Instances For
Dependency graph
The numeral x is at most the numeral y.
Equations
Instances For
Dependency graph
x + y = z.
Equations
Instances For
Dependency graph
⟨a, b⟩ = p.
Equations
Instances For
Dependency graph
The node n draws the code numbered e.
Equations
Instances For
Dependency graph
The code numbered e returns v on x.
Equations
Instances For
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Naming the symbols of the instance #
Guarded quantifiers #
Every quantifier of the kernel ranges over one of the two sorts of the extended
universe – the nodes of the instance, marked by old, and the numerals – and
is guarded accordingly. A variable is named by its distance from its binder.
A variable of the enclosing scope, seen from inside one guarded quantifier.
Equations
Instances For
Dependency graph
The variable bound by the innermost guarded quantifier.
Equations
Instances For
Dependency graph
The variable bound one guarded quantifier further out.
Equations
Instances For
Dependency graph
The variable bound two guarded quantifiers further out.
Equations
Instances For
Dependency graph
The variable bound three guarded quantifiers further out.
Equations
Instances For
Dependency graph
The variable bound four guarded quantifiers further out.
Equations
Instances For
Dependency graph
The variable bound five guarded quantifiers further out.
Equations
Instances For
Dependency graph
The variable bound six guarded quantifiers further out.
Equations
Instances For
Dependency graph
The variable bound seven guarded quantifiers further out.
Equations
Instances For
Dependency graph
The variable bound eight guarded quantifiers further out.
Equations
Instances For
Dependency graph
The variable bound nine guarded quantifiers further out.
Equations
Instances For
Dependency graph
The variable bound ten guarded quantifiers further out.
Equations
Instances For
Dependency graph
The variable bound eleven guarded quantifiers further out.
Equations
Instances For
Dependency graph
∃ x, old x ∧ φ: a quantifier over the nodes of the instance.
Equations
Instances For
Dependency graph
∀ x, old x → φ: a quantifier over the nodes of the instance.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
∃ d, ¬old d ∧ φ: a quantifier over the numerals.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
∀ d, ¬old d → φ: a quantifier over the numerals.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph
The shapes that repeat #
The order-theoretic shapes (IsZ, IsS, strictly below) and the arithmetic
of a code's number, each a builder used many times below.
The order of the numeral segment #
The justification rules #
What the kernel says #
The assignment a certificate induces #
Read back by DescriptiveComplexity.CodeHalt.certOf, this is the identity
definitionally, which is what makes the round trip a rfl.
The assignment a certificate induces.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
Dependency graph
The theorems #
CODEHALT is definable in ∃SO[new]: the invented values are the
numeral segment of a halting computation of the code the root draws, and the
kernel says that they carry one.
Dependency graph
CODEHALT is in RE. The certificate is the whole computation of the
drawn code – its numbers, its pairings and its intermediate values – which is a
finite object, but no function of the instance bounds it: that is exactly the
difference between Σ₁ and ∃SO[new], and between NP and RE.
Dependency graph
CODEHALT first-order-reduces to finite satisfiability. No new hardness
work is needed: DescriptiveComplexity.finsat_hard_of_sigmaSONewDefinable is
proved for an arbitrary source vocabulary, so putting a problem in RE reduces it
to DescriptiveComplexity.FINSAT at once.