Continuous models of computation: computability, complexity, universality Amaury Pouly 22 august 2017 1 / 20
Teaser Characterization of P using differential equations Universal differential equation 2 / 20
Digital vs analog computers 3 / 20
Digital vs analog computers VS 3 / 20
Church Thesis Computability logic boolean circuits discrete recursive Turing lambda functions machine calculus continuous quantum analog Church Thesis All reasonable models of computation are equivalent. 4 / 20
Church Thesis Complexity logic boolean circuits discrete recursive Turing lambda functions machine calculus � ? ? continuous quantum analog Effective Church Thesis All reasonable models of computation are equivalent for complexity. 4 / 20
Polynomial Differential Equations u × k uv k v u � + � u + v u u v General Purpose Analog Computer Differential Analyzer polynomial differential Newton mechanics equations : � y ( 0 )= y 0 y ′ ( t )= p ( y ( t )) Reaction networks : chemical Rich class enzymatic Stable (+, × , ◦ ,/,ED) No closed-form solution 5 / 20
Example of dynamical system y 2 � � y 1 × ℓ y 3 y 4 − g � × ℓ θ m � × × − 1 θ + g ¨ ℓ sin( θ ) = 0 y ′ 1 = y 2 y 1 = θ 2 = − g y 2 = ˙ y ′ l y 3 θ ⇔ y ′ 3 = y 2 y 4 y 3 = sin( θ ) y ′ 4 = − y 2 y 3 y 4 = cos( θ ) 6 / 20
Computing with differential equations Generable functions � y ( 0 )= y 0 x ∈ R y ′ ( x )= p ( y ( x )) f ( x ) = y 1 ( x ) y 1 ( x ) x Shannon’s notion 7 / 20
Computing with differential equations Generable functions � y ( 0 )= y 0 x ∈ R y ′ ( x )= p ( y ( x )) f ( x ) = y 1 ( x ) y 1 ( x ) x Shannon’s notion sin , cos , exp , log , ... Strictly weaker than Turing machines [Shannon, 1941] 7 / 20
Computing with differential equations Generable functions Computable � y ( 0 )= y 0 � y ( 0 )= q ( x ) x ∈ R x ∈ R y ′ ( x )= p ( y ( x )) y ′ ( t )= p ( y ( t )) t ∈ R + f ( x ) = y 1 ( x ) f ( x ) = lim t →∞ y 1 ( t ) y 1 ( x ) y 1 ( t ) x f ( x ) x t Shannon’s notion Modern notion sin , cos , exp , log , ... Strictly weaker than Turing machines [Shannon, 1941] 7 / 20
Computing with differential equations Generable functions Computable � y ( 0 )= y 0 � y ( 0 )= q ( x ) x ∈ R x ∈ R y ′ ( x )= p ( y ( x )) y ′ ( t )= p ( y ( t )) t ∈ R + f ( x ) = y 1 ( x ) f ( x ) = lim t →∞ y 1 ( t ) y 1 ( x ) y 1 ( t ) x f ( x ) x t Shannon’s notion Modern notion sin , cos , exp , log , ... sin , cos , exp , log , Γ , ζ, ... Strictly weaker than Turing Turing powerful machines [Shannon, 1941] [Bournez et al., 2007] 7 / 20
Equivalence with computable analysis Definition (Bournez et al, 2007) f computable by GPAC if ∃ p polynomial such that ∀ x y ′ ( t ) = p ( y ( t )) y ( 0 ) = ( x , 0 , . . . , 0 ) satisfies | f ( x ) − y 1 ( t ) | � y 2 ( t ) et y 2 ( t ) − t →∞ 0. − − → y 1 ( t ) − t →∞ f ( x ) − − → y 1 ( t ) f ( x ) y 2 ( t ) = error bound x t 8 / 20
Equivalence with computable analysis Definition (Bournez et al, 2007) f computable by GPAC if ∃ p polynomial such that ∀ x y ′ ( t ) = p ( y ( t )) y ( 0 ) = ( x , 0 , . . . , 0 ) satisfies | f ( x ) − y 1 ( t ) | � y 2 ( t ) et y 2 ( t ) − t →∞ 0. − − → y 1 ( t ) − t →∞ f ( x ) − − → y 1 ( t ) f ( x ) y 2 ( t ) = error bound x t Theorem (Bournez et al, 2007) f : [ a , b ] → R computable ⇔ f computable by GPAC 8 / 20
Complexity of analog systems Turing machines : T ( x ) = number of steps to compute on x 9 / 20
Complexity of analog systems Turing machines : T ( x ) = number of steps to compute on x GPAC : time contraction problem Tentative definition T ( x , µ ) = first time t so that | y 1 ( t ) − f ( x ) | � e − µ y ′ = p ( y ) y ( 0 ) = ( x , 0 , . . . , 0 ) y 1 ( t ) f ( x ) x t 9 / 20
Complexity of analog systems Turing machines : T ( x ) = number of steps to compute on x GPAC : time contraction problem Tentative definition T ( x , µ ) = first time t so that | y 1 ( t ) − f ( x ) | � e − µ y ′ = p ( y ) z ( t ) = y ( e t ) y ( 0 ) = ( x , 0 , . . . , 0 ) y 1 ( t ) z 1 ( t ) f ( x ) f ( x ) � x x t t 9 / 20
Complexity of analog systems Turing machines : T ( x ) = number of steps to compute on x GPAC : time contraction problem Tentative definition T ( x , µ ) = first time t so that | y 1 ( t ) − f ( x ) | � e − µ y ′ = p ( y ) z ( t ) = y ( e t ) y ( 0 ) = ( x , 0 , . . . , 0 ) y 1 ( t ) z 1 ( t ) f ( x ) f ( x ) � x x t t w ( t ) = y ( e e t ) w 1 ( t ) f ( x ) x t 9 / 20
Complexity of analog systems Turing machines : T ( x ) = number of steps to compute on x GPAC : time contraction problem → open problem Tentative definition T ( x , µ ) = first time t so that | y 1 ( t ) − f ( x ) | � e − µ y ′ = p ( y ) z ( t ) = y ( e t ) y ( 0 ) = ( x , 0 , . . . , 0 ) y 1 ( t ) z 1 ( t ) f ( x ) f ( x ) � x x t t w ( t ) = y ( e e t ) Problem w 1 ( t ) f ( x ) All functions have constant time x complexity. t 9 / 20
Time-space correlation of the GPAC y ′ = p ( y ) z ( t ) = y ( e t ) y ( 0 ) = q ( x ) y 1 ( t ) z 1 ( t ) f ( x ) f ( x ) � ˜ q ( x ) q ( x ) t t 10 / 20
Time-space correlation of the GPAC y ′ = p ( y ) z ( t ) = y ( e t ) y ( 0 ) = q ( x ) y 1 ( t ) z 1 ( t ) f ( x ) f ( x ) � ˜ q ( x ) q ( x ) t t extra component : w ( t ) = e t w ( t ) t 10 / 20
Time-space correlation of the GPAC y ′ = p ( y ) z ( t ) = y ( e t ) y ( 0 ) = q ( x ) y 1 ( t ) z 1 ( t ) f ( x ) f ( x ) � ˜ q ( x ) q ( x ) t t extra component : w ( t ) = e t Observation Time scaling costs “space”. � Time complexity for the GPAC must involve time and space! w ( t ) t 10 / 20
Complexity of solving polynomial ODEs y ′ ( t ) = p ( y ( t )) y ( 0 ) = x Theorem (Graça, Pouly) [TCS 2016] � � � � 2 − n in time � p If y ( t ) exists, one can compute p , q such that q − y ( t ) � � poly ( size of x and p , n , ℓ ( t )) � t max( 1 , � y ( u ) � ) deg( p ) du ≈ length of the curve where ℓ ( t ) = 0 x y ( t ) x y ( t ) length of the curve = complexity = ressource 11 / 20
Characterization of polynomial time Definition : L ∈ ANALOG-PTIME ⇔ ∃ p polynomial, ∀ word w | w | y ′ = p ( y ) � w i 2 − i y ( 0 ) = ( ψ ( w ) , | w | , 0 , . . . , 0 ) ψ ( w ) = i = 1 y 1 ( t ) 1 ψ ( w ) ℓ ( t ) = length of y − 1 12 / 20
Characterization of polynomial time Definition : L ∈ ANALOG-PTIME ⇔ ∃ p polynomial, ∀ word w | w | y ′ = p ( y ) � w i 2 − i y ( 0 ) = ( ψ ( w ) , | w | , 0 , . . . , 0 ) ψ ( w ) = i = 1 accept : w ∈ L y 1 ( t ) 1 ψ ( w ) ℓ ( t ) = length of y computing − 1 satisfies if y 1 ( t ) � 1 then w ∈ L 1 12 / 20
Characterization of polynomial time Definition : L ∈ ANALOG-PTIME ⇔ ∃ p polynomial, ∀ word w | w | y ′ = p ( y ) � w i 2 − i y ( 0 ) = ( ψ ( w ) , | w | , 0 , . . . , 0 ) ψ ( w ) = i = 1 accept : w ∈ L 1 ψ ( w ) ℓ ( t ) = length of y computing − 1 y 1 ( t ) reject : w / ∈ L satisfies if y 1 ( t ) � − 1 then w / ∈ L 2 12 / 20
Characterization of polynomial time Definition : L ∈ ANALOG-PTIME ⇔ ∃ p polynomial, ∀ word w | w | y ′ = p ( y ) � w i 2 − i y ( 0 ) = ( ψ ( w ) , | w | , 0 , . . . , 0 ) ψ ( w ) = i = 1 accept : w ∈ L 1 forbidden y 1 ( t ) ψ ( w ) ℓ ( t ) = length of y poly( | w | ) computing − 1 reject : w / ∈ L satisfies if ℓ ( t ) � poly( | w | ) then | y 1 ( t ) | � 1 3 12 / 20
Characterization of polynomial time Definition : L ∈ ANALOG-PTIME ⇔ ∃ p polynomial, ∀ word w | w | y ′ = p ( y ) � w i 2 − i y ( 0 ) = ( ψ ( w ) , | w | , 0 , . . . , 0 ) ψ ( w ) = i = 1 accept : w ∈ L y 1 ( t ) 1 forbidden y 1 ( t ) ψ ( w ) ℓ ( t ) = length of y poly( | w | ) computing − 1 y 1 ( t ) reject : w / ∈ L Theorem (JoC 2016; ICALP 2016) PTIME = ANALOG-PTIME 12 / 20
Characterization of real polynomial time Definition : f : [ a , b ] → R in ANALOG-P R ⇔ ∃ p polynomial, ∀ x ∈ [ a , b ] y ′ = p ( y ) y ( 0 ) = ( x , 0 , . . . , 0 ) y 1 ( t ) f ( x ) x ℓ ( t ) 13 / 20
Characterization of real polynomial time Definition : f : [ a , b ] → R in ANALOG-P R ⇔ ∃ p polynomial, ∀ x ∈ [ a , b ] y ′ = p ( y ) y ( 0 ) = ( x , 0 , . . . , 0 ) satisfies : | y 1 ( t ) − f ( x ) | � 2 − ℓ ( t ) 1 «greater length ⇒ greater precision» ℓ ( t ) � t 2 «length increases with time» y 1 ( t ) f ( x ) x ℓ ( t ) 13 / 20
Characterization of real polynomial time Definition : f : [ a , b ] → R in ANALOG-P R ⇔ ∃ p polynomial, ∀ x ∈ [ a , b ] y ′ = p ( y ) y ( 0 ) = ( x , 0 , . . . , 0 ) satisfies : | y 1 ( t ) − f ( x ) | � 2 − ℓ ( t ) 1 «greater length ⇒ greater precision» ℓ ( t ) � t 2 «length increases with time» y 1 ( t ) f ( x ) x ℓ ( t ) Theorem (JoC 2016; ICALP 2016) f : [ a , b ] → R computable in polynomial time ⇔ f ∈ ANALOG-P R . 13 / 20
Recommend
More recommend