Documentation

DescriptiveComplexity.Exponential.Inclusions

The exponential classes: complements and inclusions #

Everything in this file is inherited rather than proved. The two facts it rests on are polynomial-level and each cost a large development:

DescriptiveComplexity.ComplexityClass.exp_compl carries both one exponential up, and DescriptiveComplexity.ComplexityClass.exp_mono carries every polynomial-level inclusion. Nothing of the two developments above is spent twice; that is the first payoff of making exp an operator on an abstract class.

Read on the definitions, the complement equalities say that SO(LFP) and SO(PFP) are closed under complement, which is the form a reader of the logic will look for; they are stated that way too.

The one construction with content is DescriptiveComplexity.PSPACE_subset_PTIME_exp – an SO(TC) walk is REACH on the expansion whose points are its states – which lives in DescriptiveComplexity.Exponential.Reach and starts the whole tower.

No claim is made for NEXPTIME, which is not expected to be closed under complement.

The two polynomial-level complement facts, in the form used here #

Polynomial time is closed under complement (DescriptiveComplexity.piP_zero_eq, restated as an equality of classes).

Dependency graph

Polynomial space is closed under complement (DescriptiveComplexity.PSPACE_eq_coPSPACE, restated the same way).

Dependency graph

The complement equalities #

Dependency graph

EXPSPACE = coEXPSPACE: inherited from Savitch through the same operator.

Dependency graph

A problem is in EXPTIME exactly when its complement is.

Dependency graph

A problem is in EXPSPACE exactly when its complement is.

Dependency graph

SO(≤, LFP) is closed under complement – the second-order shadow of DescriptiveComplexity.piP_zero_eq, and the reading of DescriptiveComplexity.EXPTIME_eq_coEXPTIME on the definition.

Dependency graph

SO(≤, PFP) is closed under complement – the second-order shadow of Savitch.

Dependency graph

The inclusions #

Every line but the first is DescriptiveComplexity.ComplexityClass.exp_mono on a polynomial-level inclusion, read through the bridge theorems of DescriptiveComplexity.Exponential.Classes.

PSPACE ⊆ EXPTIME: an SO(TC) walk is a reachability question on the expansion whose points are its states, and reachability is in polynomial time. On the definitions this is SO(TC) ⊆ SO(LFP).

Dependency graph

PSPACE ⊆ coEXPTIME, by the complement equality.

Dependency graph

PTIME ⊆ PSPACE, routed through NP – the polynomial-level inclusion the exponential ones are lifted from.

Dependency graph

EXPTIME ⊆ EXPSPACE, i.e., SO(LFP) ⊆ SO(PFP) – the second-order shadow of PTIME ⊆ PSPACE.

Dependency graph

coEXPTIME ⊆ EXPSPACE, by the complement equality.

Dependency graph

EXPTIME ⊆ NEXPTIME, the second-order shadow of PTIME ⊆ NP.

Dependency graph

NEXPTIME ⊆ EXPSPACE, the second-order shadow of NP ⊆ PSPACE.

Dependency graph

NL.exp ⊆ EXPTIME, the second-order shadow of NL ⊆ PTIME. Together with DescriptiveComplexity.PSPACE_subset_NL_exp it sandwiches NL.exp between PSPACE and EXPTIME.

Dependency graph

The polynomial classes inside the exponential ones #

All of these route through PSPACE ⊆ EXPTIME, which is the only inclusion of this development with content.

Dependency graph
Dependency graph
Dependency graph

The whole polynomial hierarchy sits inside EXPTIME, through DescriptiveComplexity.PH_subset_PSPACE.

Dependency graph