Real Numbers and Computational Complexity

Similar documents
Reducibility in polynomialtime computable analysis. Akitoshi Kawamura (U Tokyo) Wadern, Germany, September 24, 2015

δ-approximable Functions

Dynamics and Computation

Economics 204 Summer/Fall 2011 Lecture 5 Friday July 29, 2011

8.5 Taylor Polynomials and Taylor Series

Notes for Lecture 3... x 4

Lecture 4 : Quest for Structure in Counting Problems

Lecture 21: Algebraic Computation Models

On the Hierarchy of 0 2-Real Numbers

Uniform computational complexity of ordinary differential equations with applications to dynamical systems and exact real arithmetic

Hyperbolic Julia Sets are Poly-Time Computable

Fourth Week: Lectures 10-12

DRAFT. Algebraic computation models. Chapter 14

ZEROES OF INTEGER LINEAR RECURRENCES. 1. Introduction. 4 ( )( 2 1) n

Real Interactive Proofs for VPSPACE

Computational Complexity in Analysis and Geometry. Akitoshi Kawamura

Chapter 1: Preliminaries and Error Analysis

Notes for Lecture 3... x 4

Monotonically Computable Real Numbers

Midterm Review. Igor Yanovsky (Math 151A TA)

Review: Power series define functions. Functions define power series. Taylor series of a function. Taylor polynomials of a function.

Chapter 8: Taylor s theorem and L Hospital s rule

Selçuk Demir WS 2017 Functional Analysis Homework Sheet

Chapter 11. Taylor Series. Josef Leydold Mathematical Methods WS 2018/19 11 Taylor Series 1 / 27

CHAPTER 11. A Revision. 1. The Computers and Numbers therein

Numbers 1. 1 Overview. 2 The Integers, Z. John Nachbar Washington University in St. Louis September 22, 2017

Contents Ordered Fields... 2 Ordered sets and fields... 2 Construction of the Reals 1: Dedekind Cuts... 2 Metric Spaces... 3

Chapter 1 Mathematical Preliminaries and Error Analysis

MS 3011 Exercises. December 11, 2013

Lecture 20: conp and Friends, Oracles in Complexity Theory

x x 1 x 2 + x 2 1 > 0. HW5. Text defines:

Chapter 1: Limits and Continuity

A An Overview of Complexity Theory for the Algorithm Designer

Math 106 Fall 2014 Exam 2.1 October 31, ln(x) x 3 dx = 1. 2 x 2 ln(x) + = 1 2 x 2 ln(x) + 1. = 1 2 x 2 ln(x) 1 4 x 2 + C

On NP-Completeness for Linear Machines

1 What is numerical analysis and scientific computing?

Analysis Finite and Infinite Sets The Real Numbers The Cantor Set

Second Order ODEs. CSCC51H- Numerical Approx, Int and ODEs p.130/177

Intractable Problems [HMU06,Chp.10a]

Polynomial Approximations and Power Series

Notes for Math 290 using Introduction to Mathematical Proofs by Charles E. Roberts, Jr.

MATH 31B: MIDTERM 2 REVIEW. sin 2 x = 1 cos(2x) dx = x 2 sin(2x) 4. + C = x 2. dx = x sin(2x) + C = x sin x cos x

DIFFERENTIATION RULES

SPRING 2006 PRELIMINARY EXAMINATION SOLUTIONS

Chapter 8. P-adic numbers. 8.1 Absolute values

Calculus I Exam 1 Review Fall 2016

Computational Complexity on Computable Metric Spaces

f (n) (z 0 ) Theorem [Morera s Theorem] Suppose f is continuous on a domain U, and satisfies that for any closed curve γ in U, γ

MATH 423 Linear Algebra II Lecture 3: Subspaces of vector spaces. Review of complex numbers. Vector space over a field.

5. Hand in the entire exam booklet and your computer score sheet.

Bounded Model Checking with SAT/SMT. Edmund M. Clarke School of Computer Science Carnegie Mellon University 1/39

Math 126: Course Summary

Mathematical Economics: Lecture 2

CS151 Complexity Theory. Lecture 1 April 3, 2017

Bounded uniformly continuous functions

Almost transparent short proofs for NP R

Problem set 5, Real Analysis I, Spring, otherwise. (a) Verify that f is integrable. Solution: Compute since f is even, 1 x (log 1/ x ) 2 dx 1

Differentiation. Table of contents Definition Arithmetics Composite and inverse functions... 5

f (x) = k=0 f (0) = k=0 k=0 a k k(0) k 1 = a 1 a 1 = f (0). a k k(k 1)x k 2, k=2 a k k(k 1)(0) k 2 = 2a 2 a 2 = f (0) 2 a k k(k 1)(k 2)x k 3, k=3

Higher order derivatives of the inverse function

NATIONAL BOARD FOR HIGHER MATHEMATICS. Research Scholarships Screening Test. Saturday, February 2, Time Allowed: Two Hours Maximum Marks: 40

Section 10.7 Taylor series

Relative computability and uniform continuity of relations

where Q is a finite set of states

Simple Iteration, cont d

JUST THE MATHS UNIT NUMBER DIFFERENTIATION APPLICATIONS 5 (Maclaurin s and Taylor s series) A.J.Hobson

SECTION A. f(x) = ln(x). Sketch the graph of y = f(x), indicating the coordinates of any points where the graph crosses the axes.

A note on parallel and alternating time

Supplementary Notes for W. Rudin: Principles of Mathematical Analysis

8.7 Taylor s Inequality Math 2300 Section 005 Calculus II. f(x) = ln(1 + x) f(0) = 0

Separating NE from Some Nonuniform Nondeterministic Complexity Classes

MT804 Analysis Homework II

Immerse Metric Space Homework

Introduction to Proofs in Analysis. updated December 5, By Edoh Y. Amiran Following the outline of notes by Donald Chalice INTRODUCTION

PHY411 Lecture notes Part 5

Calculus II Lecture Notes

Discrete Mathematics CS October 17, 2006

ITCS:CCT09 : Computational Complexity Theory Apr 8, Lecture 7

Abstract. 2. We construct several transcendental numbers.

1 Computational Problems

CLASS NOTES FOR APRIL 14, 2000

On the equivalence of some approaches to computability on the real line

= F (b) F (a) F (x i ) F (x i+1 ). a x 0 x 1 x n b i

Q = Set of states, IE661: Scheduling Theory (Fall 2003) Primer to Complexity Theory Satyaki Ghosh Dastidar

MATH 202B - Problem Set 5

Analysis Qualifying Exam

CS154, Lecture 17: conp, Oracles again, Space Complexity

The basic feasible functionals in computable analysis

Metric Spaces and Topology

The Arzelà-Ascoli Theorem

A brief introduction to p-adic numbers

MA257: INTRODUCTION TO NUMBER THEORY LECTURE NOTES

Theoretical Cryptography, Lectures 18-20

Limitations of Efficient Reducibility to the Kolmogorov Random Strings

1. Theorem. (Archimedean Property) Let x be any real number. There exists a positive integer n greater than x.

Compute the Fourier transform on the first register to get x {0,1} n x 0.

11.10a Taylor and Maclaurin Series

Notes for Lecture Notes 2

Contraction Mappings Consider the equation

Numbers. 2.1 Integers. P(n) = n(n 4 5n 2 + 4) = n(n 2 1)(n 2 4) = (n 2)(n 1)n(n + 1)(n + 2); 120 =

Transcription:

Real Numbers and Computational Complexity Norbert Müller mueller@uni-trier.de FB IV Informatik Universität Trier Norbert Müller (Trier) Darmstadt, 2012-10-05 1 / 34

Introduction 1 Introduction 2 Computational complexity / efficient algorithms 3 Real vs. discrete computational complexity Norbert Müller (Trier) Darmstadt, 2012-10-05 2 / 34

Introduction Double precision: numbers as basic objects... generalization to R: BSS model (Blum/Shub/Smale): algebraic approach restricted to basic arithmetic comparison like as total functions ERA, exact real arithmetic: approach is algebraic and analytic starting from basic arithmetic comparison like as partial functions extendable via (restricted) operator for limits ERA is already implemented, BSS will remain a theoretical model uniform cost measure not realistic complexity connected to: long integers (Karatsuba, Toom/Cook, Schönhage/Str., Fürer) multiple precision floating point numbers (Brent) Norbert Müller (Trier) Darmstadt, 2012-10-05 3 / 34

Introduction Example for ERA: Solving differential equations Exact trajectory x 1 = ẋ 2 x 2 = ẋ 1 t 0 = 0 x 0 = (1, 0) 0.8 1 0.6 0.4 0.2 0.2 0 0.4 0.6 0.8 1 0 5 10 15 20 25 1 0.8 0.6 0.4 0.2 00.20.40.60.81 data structures for real numbers / sequences / functions... operators for Taylor sum, IVP solving... (t i, x i ) (a n,i ) n N := IVP(t i, x i ) f i := λt. a n,i t n x i+1 := f i (t i+1 ) Norbert Müller (Trier) Darmstadt, 2012-10-05 4 / 34

Introduction (theoretical) computer science computable analysis / complexity on the reals constructive mathematics numerical mathematics TTE: Type-2 theory of effectivity (Weihrauch, Brattka, Hertling, Ko, Rettinger, Ziegler, M.,...) domains (Blanck, Edalat, Escardo, Tucker,...) BSS-Modell Real RAM (Blum, Shub, Smale, Meer, Gassner...) Norbert Müller (Trier) Darmstadt, 2012-10-05 5 / 34

Introduction Models of computation for functions f : S S for non-countable S: S 1 = Σ Type-2-Turing machine infinite input tape, output tape write-once, infinite computations prefix of the output is determined by prefix of the input S 2 = [Σ Σ ] oracle Turing machine M with functions as oracles fixing oracle Φ S2, M Φ computes Γ(Φ) S 2 : input output { oracle Φ S 2 }} { [ }{{} Σ }{{} Σ ] queries answers Γ(Φ) S 2 { }} { [ }{{} Σ ] }{{} Σ ] input output machine queries answers oracle Norbert Müller (Trier) Darmstadt, 2012-10-05 6 / 34

Introduction From Σ to R using Type-2-Turing machines: use e.g. infinite decimal strings w for input and output w 1 = 1.41421356237... w 2 = 3.14159265359... w 3 = 2.71828182846... better: signed digits { 9, 8, 7,..., 1, 0, 1,..., 8, 9} alternatively use sequences w of finite decimals with delimiter w 4 = 1#1.4#1.41#1.414#1.4142#... Generalization for metric spaces (M, d): use a countable dense subset D in M and encode fast converging Cauchy sequences in D... Norbert Müller (Trier) Darmstadt, 2012-10-05 7 / 34

Introduction From S 2 = [Σ Σ ] to R using oracle Turing machines: interpret S = [Σ Σ ] as [N Q]: Φ S Γ(Φ) S { }} { { }} { [ }{{} N queries Q }{{} answers ] [ }{{} N input Q }{{} output ] i.e. Φ is a sequence (q n ) n N and Γ(Φ) is a sequence (q n ) n N n N n N f x q n Q q n Q a real function f is computed as follows: if x R is given by (qn ) n N with ( n) x q n 2 n then (q n ) must satisfy ( n) f (x) q n 2 n Norbert Müller (Trier) Darmstadt, 2012-10-05 8 / 34

Introduction Computable analysis (via representations ): R ϱ f 1 f 2 R ϱ R ϱ Q N Γ Q N 1 Γ Q N 2 Remember: Computable functions are continuous! Norbert Müller (Trier) Darmstadt, 2012-10-05 9 / 34

Computational complexity / efficient algorithms 1 Introduction 2 Computational complexity / efficient algorithms 3 Real vs. discrete computational complexity Norbert Müller (Trier) Darmstadt, 2012-10-05 10 / 34

Computational complexity / efficient algorithms Computational complexity t G (n) on a (compact) set G: Type-2-machines M: worst case (on strings w for x G) t G (n) = for the number of steps of M until the output is determined up to a precision 2 n oracle Turing { machines M: worst case (on all oracles Φ for a x G) t G (n) = for the number of steps of M for input n Results (almost) independent of machine model! addition, subtraction: computable in linear time multiplication: computable in time M(n) := n log(n)2 θ(log (n)) Norbert Müller (Trier) Darmstadt, 2012-10-05 11 / 34

Computational complexity / efficient algorithms division, rational functions, x q (with q Q): (using fix point algorithms...) sin(x), cos(x), e x : (using Taylor series) O(M(n)) O(M(n) n/ log n) π, e, ln(2), sin(x), cos(x), ln(x), e x,...: O(M(n) log n) (using arithmetic/geometric mean a = a+b 2 ; b = a b ) Norbert Müller (Trier) Darmstadt, 2012-10-05 12 / 34

Computational complexity / efficient algorithms important aspect: modulus of computation, lookahead, delay to determine output with precision n, we need to know input with precision d(n) Example: substitution of functions g and f : t g f (n) = O( t g (n) + t f (d g (n)) ) d g f (n) = d f (d g (n)) f with Lipschitz constant L delay d f (n) n + log 2 L possible Norbert Müller (Trier) Darmstadt, 2012-10-05 13 / 34

Computational complexity / efficient algorithms A complexity bound t : N N is called regular, if eventually t is monotonic increasing with then: t is at least linear: id O(t) 2 t(n) t(2n) β t(n) t is polynomially bounded: k t O(n k ) important closure properties: linear increase: sparse sums: t(c n) O(t) log 2 n k=0 t(2 k ) O(t) Norbert Müller (Trier) Darmstadt, 2012-10-05 14 / 34

Computational complexity / efficient algorithms example: t(n) = n α (log n) β (log log n) γ for arbitrary α 1, β, γ 0, α, β, γ R are regular! bounds now implicitly regular (hence polynomial)! Norbert Müller (Trier) Darmstadt, 2012-10-05 15 / 34

Computational complexity / efficient algorithms Important application: computation of fixpoints given f with fixpoint ξ = f (ξ) use iteration x i+1 f (x i ) starting in some x 0 lim x i = ξ if f appropriate f(x) Norbert Müller (Trier) Darmstadt, 2012-10-05 16 / 34

Computational complexity / efficient algorithms Case (1), f converges linear to ξ with L < 1 ξ x i L ξ x i 1 L i ξ x 0 To get x i with precision 2 n, we have i n/ log 2 (1/L) complexity n t f (i + c) i=1 ξ has complexity O(n t f (n)) f(x) Norbert Müller (Trier) Darmstadt, 2012-10-05 17 / 34

Computational complexity / efficient algorithms Case (2), f converges superlinear to ξ with α > 1: ξ x i L ξ x i 1 α c ξ x 0 α 2i To get x i with precision 2 n, we have i log α n complexity ξ has complexity O(t f (n)) log α n i=1 t f (α i + c) f(x) Norbert Müller (Trier) Darmstadt, 2012-10-05 18 / 34

Computational complexity / efficient algorithms Applications: f (x) = 2 x + a x 2 mit ξ = 1 a division is in O(M) mit ξ = a square root is in O(M) f (x) = x + a/x 2 Norbert Müller (Trier) Darmstadt, 2012-10-05 19 / 34

Computational complexity / efficient algorithms Application: Differentiation suppose f twice continuously differentiable f f (x + h) f (x) (x) h = f (x) f (ξ) = f (θ) (x ξ) f (θ) h choose h 2 2n f has complexity O(t f (n)). Norbert Müller (Trier) Darmstadt, 2012-10-05 20 / 34

Computational complexity / efficient algorithms Applications: inverse function, f f 1 (if f (x) 0 on interval [a, b] ): f 1 (a) is fixpoint of x f (x) a f (x) f 1 has complexity O(t f (n)) root finding, f ξ, f (ξ) = 0 (with simple root ξ) ξ = f 1 (0) root ξ has complexity O(t f (n)) numerical integration, f f f holomorphic on intervall [a, b] integral x a f (y)dy has complexity O(n2 t f (n)) Norbert Müller (Trier) Darmstadt, 2012-10-05 21 / 34

Real vs. discrete computational complexity 1 Introduction 2 Computational complexity / efficient algorithms 3 Real vs. discrete computational complexity Norbert Müller (Trier) Darmstadt, 2012-10-05 22 / 34

Real vs. discrete computational complexity Consider functionals like derivative : (f, x) f (x) integral : (f, x, y) y x f (t)dt maximum : (f, x, y) max{f (t) x t y} maxarg : (f, x, y) z with f (z) = maximum(f, x, y)} or operators like derive : f f integrate : f (y integral(f, 0, y)) maximize : f (y maximum(f, 0, y)) solve : f u with u (x) = f (x, u(x)), u(0) = 0 Norbert Müller (Trier) Darmstadt, 2012-10-05 23 / 34

Real vs. discrete computational complexity [Ko et al.]: non-uniform negative results like (grossly shortened...) f P+C[0, 1] with derive(f )(q) not computable for all q Q P = NP iff maximize(f ) is in P+C[0, 1] for all f P+C[0, 1] #P = FP iff integrate(f ) is in P+C[0, 1] for all f P+C[0, 1] P = PSPACE iff solve(f ) is in P+C[0, 1] for all f P+C[[0, 1] [ 1, 1]] Norbert Müller (Trier) Darmstadt, 2012-10-05 24 / 34

Consider Real vs. discrete computational complexity g a (x) = e 1 x(x 1) g b (x) = x 0 e 1 y(y 1) dy 0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1 g a, g b P+C [0, 1] and for all i > 0 g (i) a g a (0) = g a (1) = g b (0) = 0 g b (1) 0.073 > 0 (0) = g (i) a (1) = g (i) b (0) = g(i) b (1) = 0 Norbert Müller (Trier) Darmstadt, 2012-10-05 25 / 34

Real vs. discrete computational complexity Every computable ξ R is root of a strictly monotonic f P+C. in general: complexity of f does not tell anything about complexity of ξ! Norbert Müller (Trier) Darmstadt, 2012-10-05 26 / 34

Real vs. discrete computational complexity P = NP max 0 y 1 f (y) polytime for any f P+C...v00000......v100...000......v100...100......v100...010......v100...110......v1w0......v111...110... f L (...v0u) = c 1 (v) + c 2 (v) 1 2 g a(u) f L (...v1wu) = c 1 (v) + c 2 (v) g a (u), if w is a witness for v L f L (...v1wu) = c 1 (v), if w is not a witness for v L Norbert Müller (Trier) Darmstadt, 2012-10-05 27 / 34

Real vs. discrete computational complexity x 0 FP = #P f (y)dy polytime for any f P+C...v100...000......v100...100......v100...010......v100...110......v1w0......v111...110... f L (...v1wu) = c 1 (v) + c 2 (v) g a (u), if w is a witness for v L f L (...v1wu) = c 1 (v), if w is a witness for v L Norbert Müller (Trier) Darmstadt, 2012-10-05 28 / 34

Real vs. discrete computational complexity [M. et al]: non-uniform positive results like Let f be holomorphic on compact G and computable in polynomial time t(n) then derive(f ) is computable in time t(n) integrate(f ) is computable in time n 2 t(n) solve(f ) is computable in time n 2 t(n 2 ) Norbert Müller (Trier) Darmstadt, 2012-10-05 29 / 34

Real vs. discrete computational complexity suppose f holomorphic, f (x) = a k x k f is completely determined by arbitrary infinite set of values basic operators: f (a k ) and (a k ) f map polytime argumtents to polytime results for many real operators Φ the complexity of Φ(f ) is comparable to f s complexity! integration, differentiation, differential equations... via formal operations on coeffizients Norbert Müller (Trier) Darmstadt, 2012-10-05 30 / 34

Real vs. discrete computational complexity standard TTE approach for definition of complexity: use a metric/norm on functions spaces, (e.g. for C[0, 1]) use some dense subset D, (e.g. rational polygons, rational polynomials, box lists...) represent functions as limits of sequences in D ( f = lim p n for polygons/polynomials/boxes (p n ) n N ) usual condition for speed of convergence: f p n 2 n approximations are valid everywhere, but time complexity is exponential... 1.2 1 0.8 0.6 0.4 0.2 0 sqrt(x) 3-bit, 50 boxes -0.2 5-bit, 200 boxes 0 0.2 0.4 0.6 0.8 1 Norbert Müller (Trier) Darmstadt, 2012-10-05 31 / 34

Real vs. discrete computational complexity usual applications only need local approximations to functions! new computational model: Instead of n p n for approximating f with use (x, n) p n (x) with f p n 2 n (i.e. p n is a complete list of boxes f ) f (x) p n (x) 2 n (i.e. just one single box ) idea e.g. used in: Zhao/M. [CCA 2008]: Complexity of operators on compact sets M. [CCA 2009]: Enhancing imperative exact real arithmetic... Kawamura/Cook [STOC 2010]: Complexity theory for operators in analysis Norbert Müller (Trier) Darmstadt, 2012-10-05 32 / 34

Real vs. discrete computational complexity Kawamura/Cook: real functions as argument/result of an operator Γ: Φ 1,2 S { }} { [ (Q N) N }{{} Q }{{} ] queries/input answers/output Φ1 : (Q N) Q approximating values: f (q) Φ 1 (q, n) 2 n Φ 2 : N Q bounding the global modulus: x y Φ 2 (n) f (x) f (y) 2 n (q, n ) Q N n N (q, n) Q N n N form of results (here shortened and without explanation...): solve is FPSPACE 2-2 mf -complete Γ f Φ 1 (n, q ) Q Φ 2 (n ) Q Φ 1(n, q) Q Φ 2(n) Q until now: no definition for finer distinctions (eg. linear complexity) Norbert Müller (Trier) Darmstadt, 2012-10-05 33 / 34

Real vs. discrete computational complexity Thank you for your attention! Any questions or remarks? Norbert Müller (Trier) Darmstadt, 2012-10-05 34 / 34