Real Complexity Theory: a numerical view on "P vs. NP"

Real Complexity Theory:
a numerical view on
Martin Ziegler
"P vs. NP"
JSPS BRIDGE 2013
Computable Real Numbers
TECHNISCHE
UNIVERSITÄT
DARMSTADT,
Martin Ziegler
Introduction to Real Complexity Theory
Theorem: For r∈ ,
Call
r
∈
computable
if
the following are equivalent:
There is an algorithm
which, given n∈ , prints
bn∈{0,1} where r=∑n bn 2-n
a) r has a computable binary expansion
b) There is an algorithm printing, on input
m∈ , some a∈ with |r-a/2m+1|≤2-m.⇔ r∈
c) There is an algorithm printing two [qn±εn]
sequences (qn)⊆ and (εn) with |r-qn|≤εn→0
numerators+
denominators
b) ⇔ c) holds uniformly,
interval
⇔ a) does not [Turing'37] arithmetic
Ernst Specker (1949): (c) ⇔ Halting problem plus (d)
d) There is an algorithm printing (qn)⊆ with qn→r.
H := { 〈B,x〉 : algorithm B terminates on input x } ⊆
Uniformly Computable Real Functions
TECHNISCHE
UNIVERSITÄT
DARMSTADT,
Martin Ziegler
Introduction to Real Complexity Theory
f
A computable
function must
be continuous
x'
x
x∈ computable ⇔ |x-an/2n+1|≤2-n for recursive (an)⊆
Real Function Complexity
TECHNISCHE
UNIVERSITÄT
DARMSTADT,
Martin Ziegler
Introduction to Real Complexity Theory
iRRAM
Function f:[0,1]→ computable in time t(n)
if some TM can, on input of n∈ and of
(am)⊆ with |x-am/2m+1|≤2-m
in time t(n) output b∈ with |f(x)-b/2n+1|≤2-n.
Examples: a) +, ×, exp polytime on [0;1]!
b) f(x)≡∑n∈L 4-n iff L⊆{0,1}*polytime-decidable
c) 1/
ln(e
/x) not polytime-computable
sign
, Heaviside
not computable
|x-y|≤2-t(n) ⇒ |f(x)-f(y)|≤2-n
Observation i) If ƒ computable ⇒ continuous.
ii) If f computable in time t(n), then
t(n) is a modulus of uniform continuity of f.
On the Complexity of Operators
TECHNISCHE
UNIVERSITÄT
DARMSTADT,
Martin Ziegler
Introduction to Real Complexity Theory
polytime-computable iff P=NP
NP
• ∫: ƒ → ∫ƒ: (x → ƒ(t) dt)
∫ƒ computable in exponential time;
x
∫0
"#
#P-complete"
even when
restricting
to ƒ∈C∞
[Friedman&Ko'82]
ƒ:[0;1]→[0;1] polytime computable (⇒ continuous)
• Max: ƒ → Max(ƒ): x → max{ ƒ(t): t≤x }
Max(ƒ) computable in exponential time;
• dsolve: C[0;1]×[-1;1] ∋ ƒ → z: ż(t)=ƒ(t,z), z(0)=0.
(0)=0
in general no computable solution z(t)
for ƒ∈C1 PSPACE-"complete"
PSPACE
[Kawamura'10,
Kawamura et al]
for ƒ∈Ck CH-"hard"
CH
'Max is NP-hard'
NP
TECHNISCHE
obvious
in the
UNIVERSITÄT
DARMSTADT,
discrete
Martincase
Ziegler
Introduction to Real Complexity Theory
V⊆
NP ∋ L = { N
∈ | ∃M<NV∈P
: 〈N,M
〉 ∈fV
}, V ∈ P
P ⇔
V polytime
ln N ln N
ϕ(3tN³-3N²-M)/N
C∞ gfVL:t → ∑ ϕ(2tN²-2N)/N
1
〈N,M〉
N ∈V
0.8
tln(1/t)
0.6
0.4
0.2
-1
-0.5
00
0.5
1
φ(t) = exp(-t²/1-t²)
C∞ 'pulse' function 0
polytime computable
t=⅓
N=4 N=3
N=5 t=¼
M=0..3 M=0,1,2
t=½
N=2
M=0
M=1
t=1
N=1
M=0
To every L∈NP there exists a polytime
computable C∞ function gL:[0,1]→ s.t.:
[0,1]∋t→max gL|[0,t] again polytime iff L∈P
On the Complexity of Operators
TECHNISCHE
UNIVERSITÄT
DARMSTADT,
Martin Ziegler
Introduction to Real Complexity Theory
polytime-computable iff P=NP
NP even when
restricting
non
non
x
∞
to
ƒ∈
C
• ∫: ƒ → ∫ƒ: (x → ∫0 ƒ(t) dt) uniform
uniform
∫ƒ computable in exponential time; but for
#P-"complete" [Friedman&Ko'82] analytic ƒ
polytime
ller],[Bournez et al]
[N.Müller],[Bournez
ƒ:[0;1]→[0;1] polytime computable (⇒ continuous)
[Friedman
• Max: ƒ → Max(ƒ): x → max{ ƒ(t): t≤x }
&Ko'82]
Max(ƒ) computable in exponential time;
• dsolve: C[0;1]×[-1;1] ∋ ƒ → z: ż(t)=ƒ(t,z), z(0)=0.
(0)=0
in general no computable solution z(t)
for ƒ∈C1 PSPACE-"complete"
PSPACE
[Kawamura'10,
Kawamura et al]
for ƒ∈Ck CH-"hard"
CH
Three Effects in Real Complexity
that numerical scientists might be
interested in / should be aware of
TECHNISCHE
UNIVERSITÄT
DARMSTADT,
Martin Ziegler
Introduction to Real Complexity Theory
cmp. "feasible real-RAM"
a) natural emergence of multivaluedness
(aka non-extensionality) → ε-semantics of "<"
b) Uniform computation may require discrete advice
or otherwise 'enriched' representations (TTE)
― which yield canonical C++ declarations
c) Parameterized uniform upper complexity bounds
(as well-established
Discrete Complexity)
Example
(Brattka&Z,inComputable
Spectral Thm)
Finding an eigenvector (basis) to a given real
but
symmetric
d×d
matrix
A is uncomputable;
Example: +,
exp
computable
in time polynomial
Card σ(A).
becomes
computable
in
n on [0;1]
; on [0;2kwhen
]: + inknowing
time polynomial
in
independent of x
REAL **diagonalize(int d,k int
n+k
, exp in time polynomial
in n+2
. on compact dom
nDistinctEValues,
REAL
**matrix);
Obstacles to a Uniform
Complexity Theory of Operators
Evaluation Eval:(f,x)→f(x)
a) requires ≥µ(n) steps, µ: → mod. of continuity to f.
"Parameter" µ(f) is not -valued but -valued!
TECHNISCHE
UNIVERSITÄT
DARMSTADT,
Martin Ziegler
Introduction to Real Complexity Theory
sequent.
b) Even restricted to the compact domain access
L1 := { f:[0;1]→[0;1] 1-Lipschitz } (Arzela-Ascoli)
there exists no representation δ:⊆{0,1}ω→L1
rendering Eval computable in subexponential time.
n-1
2
≥2
functions pairwise differing 2-n
when evaluating up to error 2-n
but only 2t(n) different initial
segments of δ-names that can
be read within t(n) steps. q.e.d.
≈2n-1 'hats'
Conclusion, Work in
Progress, Open Questions
TECHNISCHE
UNIVERSITÄT
DARMSTADT,
Martin Ziegler
Introduction to Real Complexity Theory
• Computing maxima, integrals, and ODEs is hard;
and smoothness presumptions kicks in late.
• Discrete advice/enrichment and multivaluedness
o uniform complexity theory of operators
o and of higher type objects
(Calculus of Variation, Optim.Control, Shape Opt.)
o complexity of Euclidean subsets
o complexity of analytic ODEs
o complexity of PDEs
o characterize more complexity classes numerically
• Why do numerical algorithms work so well in
practice? → formalization / smoothened analysis
• Transfer from theory to practice: iRRAM