Documentation

Complexitylib.Classes.NP.Internal.Closure

Closure of NP under polynomial-time preimages — proof internals #

The preprocessing function is normalized to a natural-polynomial time bound and composed with a polynomial-time nondeterministic decider through NTM.compositionNTM. The degenerate decider that starts halted accepts nothing, so its language is empty and the preimage is decided without running the composite.

Internal proof that NP membership is equivalent to nondeterministic decision within the evaluation of a natural-coefficient polynomial.

theorem Complexity.language_eq_empty_of_decider_start_halted {k : } {N : NTM k} {L : Language} {T : } (hN : N.DecidesInTime L T) (hstart : N.qstart = N.qhalt) :
L =

A nondeterministic decider that starts halted decides only the empty language: its frozen trace leaves the output tape blank.

theorem Complexity.mem_NP_preimage_internal {f : List BoolList Bool} {L : Language} (hf : f FP) (hL : L NP) :

Internal proof that polynomial-time nondeterministic languages are closed under preimages of polynomial-time string functions.