A Survey on Analog Models of Computation

Amaury Pouly Joint work with Olivier Bournez

Université de Paris, IRIF, CNRS, F-75013 Paris, France

30 june 2020

Survey: https://arxiv.org/abs/1805.05729

1 / 24 Nowadays: “analog” = continuous/opposite of digital

orthogonal concepts ) even continuous/discrete unclear: hybrid exists )

The meaning of “analog”

Historically: “analog” = by analogy, i.e. same evolution

R L

z b k V (t) q C

m

F(t) F = mz¨ + bz˙ + kz V = Lq¨ + Rq˙ + 1 q , C

2 / 24 The meaning of “analog”

Historically: “analog” = by analogy, i.e. same evolution

R L

z b k V (t) q C

m

F(t) F = mz¨ + bz˙ + kz V = Lq¨ + Rq˙ + 1 q , C

Nowadays: “analog” = continuous/opposite of digital

orthogonal concepts ) even continuous/discrete unclear: hybrid exists )

2 / 24 Some analog machines

Slide Rule

Difference Engine

Antikythera mechanism Linear Planimeter

3 / 24 Some analog machines

Admiralty Fire Control Table ENIAC

Differential Analyzer Kelvin’s Tide Predicter

4 / 24 MathematicalComputabilityNot general purpose model model Analog Circuits Differential Analyzer

Planimetery 0 = f (y) AntikytheraContinuousGPAC y 0 Tide= p(y Predicter) DynamicalAFCT System Difference Engine Discrete Turingyn+1 machine= f (yn) ENIAC Commodore Digital Circuits Slide Rule laptop server

Classifying machines/models

time continuous

space

discrete

5 / 24 MathematicalComputabilityNot general purpose model model Analog Circuits Differential Analyzer

Planimetery 0 = f (y) AntikytheraContinuousGPAC y 0 Tide= p(y Predicter) DynamicalAFCT System Difference Engine Discrete Turingyn+1 machine= f (yn) Dynamical System

Slide Rule

Classifying machines/models

time continuous

space

ENIAC Commodore Digital Circuits laptop server discrete supercomputer

5 / 24 MathematicalComputabilityNot general purpose model model

y 0 = f (y) ContinuousGPAC y 0 = p(y) Dynamical System Difference Engine Discrete Turingyn+1 machine= f (yn) Dynamical System

Slide Rule

Classifying machines/models

time continuous Analog Circuits Differential Analyzer Planimeter Antikythera Tide Predicter AFCT

space

ENIAC Commodore Digital Circuits laptop server discrete supercomputer

5 / 24 MathematicalComputabilityNot general purpose model model

y 0 = f (y) ContinuousGPAC y 0 = p(y) Dynamical System

Discrete Turingyn+1 machine= f (yn) Dynamical System

Classifying machines/models

time continuous Analog Circuits Differential Analyzer Planimeter Antikythera Tide Predicter AFCT Difference Engine space

ENIAC Commodore Digital Circuits Slide Rule laptop server discrete supercomputer

5 / 24 MathematicalComputability model model

y 0 = f (y) ContinuousGPAC y 0 = p(y) Dynamical System

Discrete Turingyn+1 machine= f (yn) Dynamical System

Classifying machines/models

time Not general purpose continuous Analog Circuits Differential Analyzer Planimeter Antikythera Tide Predicter AFCT Difference Engine space

ENIAC Commodore Digital Circuits Slide Rule laptop server discrete supercomputer

5 / 24 MathematicalComputabilityNot general purpose model model

y 0 = f (y) ContinuousGPAC y 0 = p(y) Dynamical System

Discrete Turingyn+1 machine= f (yn) Dynamical System

Classifying machines/models

time continuous Analog Circuits Differential Analyzer

space

ENIAC Commodore Digital Circuits laptop server discrete supercomputer

5 / 24 ComputabilityNot general purpose model

GPAC y 0 = p(y)

Turing machine

Classifying machines/models

time continuous Mathematical model Analog Circuits Differential Analyzer = ( ) Continuous y 0 f y Dynamical System

space Discrete yn+1 = f (yn) Dynamical System ENIAC Commodore Digital Circuits laptop server discrete supercomputer

5 / 24 MathematicalNot general purpose model

= ( ) Continuous y 0 f y Dynamical System

Discrete yn+1 = f (yn) Dynamical System

Classifying machines/models

time continuous model Analog Circuits Differential Analyzer

GPAC y 0 = p(y)

space

ENIAC Commodore Digital Circuits laptop server discrete supercomputer

5 / 24 R recursive functions Large population protocols Hybrid Systems Timed automata Physarum Boolean difference equation models Shannon’s GPAC Black hole models Hopfield’s neural networks Reaction-Diffusion Systems Chemical reaction networks

Continuous Automata Deep learning models Neural networks Blum Shub Smale machines Hybrid systems Natural computing influence dynamics Signal machines

The many many models

time continuous

space Population protocols Finite state automata Turing machines Petri nets Lambda calculus Recursive functions discrete Post systems Cellular automata Chemical reaction networks

6 / 24 R recursive functions Large population protocols Hybrid Systems Timed automata Physarum computing Boolean difference equation models Shannon’s GPAC Black hole models Hopfield’s neural networks Reaction-Diffusion Systems Chemical reaction networks

The many many models

time continuous

space Population protocols Continuous Automata Finite state automata Deep learning models Turing machines Neural networks Petri nets Lambda calculus Blum Shub Smale machines Recursive functions Hybrid systems discrete Post systems Natural computing influence dynamics Cellular automata Signal machines Chemical reaction networks

6 / 24 Boolean difference equation models

The many many models

time R recursive functions continuous Large population protocols Hybrid Systems Timed automata Physarum computing Shannon’s GPAC Black hole models Hopfield’s neural networks Reaction-Diffusion Systems Chemical reaction networks space Population protocols Continuous Automata Finite state automata Deep learning models Turing machines Neural networks Petri nets Lambda calculus Blum Shub Smale machines Recursive functions Hybrid systems discrete Post systems Natural computing influence dynamics Cellular automata Signal machines Chemical reaction networks

6 / 24 The many many models

time R recursive functions continuous Large population protocols Hybrid Systems Timed automata Physarum computing Boolean difference equation models Shannon’s GPAC Black hole models Hopfield’s neural networks Reaction-Diffusion Systems Chemical reaction networks space Population protocols Continuous Automata Finite state automata Deep learning models Turing machines Neural networks Petri nets Lambda calculus Blum Shub Smale machines Recursive functions Hybrid systems discrete Post systems Natural computing influence dynamics Cellular automata Signal machines Chemical reaction networks

6 / 24 ?

quantum analog

Making sense of all these models

boolean circuits discrete

recursive Turing lambda functions machines calculus

continuous

“Church” thesis All discrete models are Turing machine-computable.

7 / 24 ?

analog

Making sense of all these models

logic boolean circuits discrete

recursive Turing lambda functions machines calculus

continuous quantum

“Church” thesis All discrete models are Turing machine-computable.

7 / 24 Making sense of all these models

logic boolean circuits discrete

recursive Turing lambda functions machines calculus

?

continuous quantum analog

“Church” thesis ? All models are Turing machine-computable.

Clearly wrong: a single real number (⌦ of Chaitin) is super-Turing pow- erful.

7 / 24 Making sense of all these models

logic boolean circuits discrete

recursive Turing lambda functions machines calculus

?

continuous quantum analog

“Church” thesis ? All physical machine-based models are Turing machine-computable.

Several issues with that statement.

7 / 24 abstraction mathematical model

? proof

physical computability truth results

I mathematical model = abstraction of a system I properties of model = properties of system 6 I conclusion might be quantitatively or qualitatively wrong

Machine vs mathematical model

physical machine

8 / 24 ? proof

physical interpretation computability truth results

I properties of model = properties of system 6 I conclusion might be quantitatively or qualitatively wrong

Machine vs mathematical model

physical abstraction mathematical machine model

I mathematical model = abstraction of a system

8 / 24 ?

physical interpretation truth

I conclusion might be quantitatively or qualitatively wrong

Machine vs mathematical model

physical abstraction mathematical machine model

proof

computability results

I mathematical model = abstraction of a system I properties of model = properties of system 6

8 / 24 Machine vs mathematical model

physical abstraction mathematical machine model

? proof

physical interpretation computability truth results

I mathematical model = abstraction of a system I properties of model = properties of system 6 I conclusion might be quantitatively or qualitatively wrong

8 / 24 Informal If slowly rotating Kerr black holes exists, one can check consistency of ZFC or solve the Turing in finite time.

I conclusion: hypercomputations are possible ? Common occurrence in analog models: non-computable reals, Zeno phenomena, ...

Black hole model and hypercomputations

I machine: the universe I model: general relativity

9 / 24 Common occurrence in analog models: non-computable reals, Zeno phenomena, ...

Black hole model and hypercomputations

I machine: the universe I model: general relativity

Informal theorem If slowly rotating Kerr black holes exists, one can check consistency of ZFC or solve the Turing halting problem in finite time.

I conclusion: hypercomputations are possible ?

9 / 24 Black hole model and hypercomputations

I machine: the universe I model: general relativity

Informal theorem If slowly rotating Kerr black holes exists, one can check consistency of ZFC or solve the Turing halting problem in finite time.

I conclusion: hypercomputations are possible ? Common occurrence in analog models: non-computable reals, Zeno phenomena, ... 9 / 24 Physical Church Turing thesis/Thesis M Whatever can be calculated by a machine (with finite data/instructions) is Turing machine-computable.

machine that conforms to the physical laws ) Alternative thesis All reasonable models of computations are equivalent to Turing machines.

Back to the Church thesis

Distinguish machines from models: Actual Church thesis Every effective computation can be carried out by a Turing machine, and vice versa. effective = systematic method in logic//CS )

10 / 24 Alternative thesis All reasonable models of computations are equivalent to Turing machines.

Back to the Church thesis

Distinguish machines from models: Actual Church thesis Every effective computation can be carried out by a Turing machine, and vice versa. effective = systematic method in logic/mathematics/CS ) Physical Church Turing thesis/Thesis M Whatever can be calculated by a machine (with finite data/instructions) is Turing machine-computable.

machine that conforms to the physical laws )

10 / 24 Back to the Church thesis

Distinguish machines from models: Actual Church thesis Every effective computation can be carried out by a Turing machine, and vice versa. effective = systematic method in logic/mathematics/CS ) Physical Church Turing thesis/Thesis M Whatever can be calculated by a machine (with finite data/instructions) is Turing machine-computable.

machine that conforms to the physical laws ) Alternative thesis All reasonable models of computations are equivalent to Turing machines.

10 / 24 Observation A system/machine can have several models, all useful, depending on the level of abstraction.

Semantics (assuming law of mass action): I discrete I differential I stochastic

Chemical Reaction Networks (CRNs)

A reaction system is a finite of I molecular species y1,...,yn f I reactions of the form ai yi bi yi (ai , bi N, f = rate) i ! i 2 Example (any resemblanceP to chemistryP is purely coincidental): 2H + O H O ! 2 C + O CO 2 ! 2

11 / 24 Observation A system/machine can have several models, all useful, depending on the level of abstraction.

Chemical Reaction Networks (CRNs)

A reaction system is a finite set of I molecular species y1,...,yn f I reactions of the form ai yi bi yi (ai , bi N, f = rate) i ! i 2 Example (any resemblanceP to chemistryP is purely coincidental): 2H + O H O ! 2 C + O CO 2 ! 2 Semantics (assuming law of mass action): I discrete I differential I stochastic

11 / 24 Observation A system/machine can have several models, all useful, depending on the level of abstraction.

Chemical Reaction Networks (CRNs)

A reaction system is a finite set of I molecular species y1,...,yn f I reactions of the form ai yi bi yi (ai , bi N, f = rate) i ! i 2 Example (any resemblanceP to chemistryP is purely coincidental): 2H + O H O ! 2 C + O CO 2 ! 2 Semantics (assuming law of mass action): I discrete ! yi = molecule count I differential close to population protocols I stochastic

11 / 24 Observation A system/machine can have several models, all useful, depending on the level of abstraction.

Chemical Reaction Networks (CRNs)

A reaction system is a finite set of I molecular species y1,...,yn f I reactions of the form ai yi bi yi (ai , bi N, f = rate) i ! i 2 Example (any resemblanceP to chemistryP is purely coincidental): 2H + O H O ! 2 C + O CO 2 ! 2 Semantics (assuming law of mass action): discrete I yi = concentration I differential ! polynomial ODEs I stochastic

11 / 24 Observation A system/machine can have several models, all useful, depending on the level of abstraction.

Chemical Reaction Networks (CRNs)

A reaction system is a finite set of I molecular species y1,...,yn f I reactions of the form ai yi bi yi (ai , bi N, f = rate) i ! i 2 Example (any resemblanceP to chemistryP is purely coincidental): 2H + O H O ! 2 C + O CO 2 ! 2 Semantics (assuming law of mass action): I discrete yi = distribution I differential stochastic ODEs I stochastic !

11 / 24 Chemical Reaction Networks (CRNs)

A reaction system is a finite set of I molecular species y1,...,yn f I reactions of the form ai yi bi yi (ai , bi N, f = rate) i ! i 2 Example (any resemblanceP to chemistryP is purely coincidental): 2H + O H O ! 2 C + O CO 2 ! 2 Semantics (assuming law of mass action): I discrete I differential I stochastic Observation A system/machine can have several models, all useful, depending on the level of abstraction.

11 / 24 Something is wrong, change the model.

Let’s study it! Even if it exists, Especially if it it cannot be verified. doesn’t exist.

Possible conclusion All reasonable models of computations are equivalent to Turing machines. Hypercomputability results can help us correct models.

Let’s do something useful with it!

Are analog systems capable of hypercomputations? Examples: Black holes, signal machines, hybrid systems

12 / 24 Something is wrong, change the model.

Let’s study it! Even if it exists, Especially if it it cannot be verified. doesn’t exist.

Possible conclusion All reasonable models of computations are equivalent to Turing machines. Hypercomputability results can help us correct models.

Are analog systems capable of hypercomputations? Examples: Black holes, signal machines, hybrid systems

Let’s do something useful with it!

12 / 24 Let’s study it! Even if it exists, Especially if it it cannot be verified. doesn’t exist.

Possible conclusion All reasonable models of computations are equivalent to Turing machines. Hypercomputability results can help us correct models.

Are analog systems capable of hypercomputations? Examples: Black holes, signal machines, hybrid systems

Let’s do something Something is wrong, useful with it! change the model.

12 / 24 Even if it exists, it cannot be verified.

Possible conclusion All reasonable models of computations are equivalent to Turing machines. Hypercomputability results can help us correct models.

Are analog systems capable of hypercomputations? Examples: Black holes, signal machines, hybrid systems

Let’s do something Something is wrong, useful with it! change the model.

Let’s study it! Especially if it doesn’t exist.

12 / 24 Possible conclusion All reasonable models of computations are equivalent to Turing machines. Hypercomputability results can help us correct models.

Are analog systems capable of hypercomputations? Examples: Black holes, signal machines, hybrid systems

Let’s do something Something is wrong, useful with it! change the model.

Let’s study it! Even if it exists, Especially if it it cannot be verified. doesn’t exist.

12 / 24 Are analog systems capable of hypercomputations? Examples: Black holes, signal machines, hybrid systems

Let’s do something Something is wrong, useful with it! change the model.

Let’s study it! Even if it exists, Especially if it it cannot be verified. doesn’t exist.

Possible conclusion All reasonable models of computations are equivalent to Turing machines. Hypercomputability results can help us correct models.

12 / 24 u k k uv v ⇥

u u+v u u v + R R General Purpose Analog , Shannon 1936

y1(t) y(0)=y0, y 0(t)=p(y(t)) t Polynomial , Graça 2004

General Purpose (GPAC)

Differential analyzer

13 / 24 y1(t) y(0)=y0, y 0(t)=p(y(t)) t Polynomial Differential Equation, Graça 2004

General Purpose Analog Computer (GPAC)

u k k uv v ⇥

u u+v u u v + R R General Purpose Analog Computer, Shannon 1936 Differential analyzer

13 / 24 General Purpose Analog Computer (GPAC)

u k k uv v ⇥

u u+v u u v + R R General Purpose Analog Computer, Shannon 1936 Differential analyzer

y1(t) y(0)=y0, y 0(t)=p(y(t)) t Polynomial Differential Equation, Graça 2004

13 / 24 General Purpose Analog Computer (GPAC)

u k k uv v ⇥

u u+v u u v + R R General Purpose Analog Computer, Shannon 1936 Differential analyzer

y1(t) y(0)=y0, y 0(t)=p(y(t)) t Polynomial Differential Equation, Graça 2004

13 / 24 y2 y1 ⇥ R R

g y3 y4 ` ⇥ R 1 ⇥ ⇥ R

y10 = y2 y1 = ✓ y = g y y = ✓˙ 8 20 l 3 8 2 y 0 = y y , y =sin(✓) > 3 2 4 > 3 > Remark on “analog” : : Continuous and analogy between circuits/mechanics/ODEs.

Example of dynamical system

`

✓ m

g

¨ g ✓ + ` sin(✓)=0

14 / 24 y2 y1 ⇥ R R

g y3 y4 ` ⇥ R 1 ⇥ ⇥ R

Remark on “analog” Continuous and analogy between circuits/mechanics/ODEs.

Example of dynamical system

`

✓ m

g y10 = y2 y1 = ✓ y = g y y = ✓˙ 8 20 l 3 8 2 y 0 = y y , y =sin(✓) ✓¨ + g sin(✓)=0 > 3 2 4 > 3 ` > :> :>

14 / 24 Remark on “analog” Continuous and analogy between circuits/mechanics/ODEs.

Example of dynamical system

y2 y1 ⇥ R R ` g y3 y4 ` ⇥ ✓ m R 1 ⇥ ⇥ R

g y10 = y2 y1 = ✓ y = g y y = ✓˙ 8 20 l 3 8 2 y 0 = y y , y =sin(✓) ✓¨ + g sin(✓)=0 > 3 2 4 > 3 ` > :> :>

14 / 24 Example of dynamical system

y2 y1 ⇥ R R ` g y3 y4 ` ⇥ ✓ m R 1 ⇥ ⇥ R

g y10 = y2 y1 = ✓ y = g y y = ✓˙ 8 20 l 3 8 2 y 0 = y y , y =sin(✓) ✓¨ + g sin(✓)=0 > 3 2 4 > 3 ` > Remark on “analog” : : Continuous and analogy between circuits/mechanics/ODEs.

14 / 24 Turing powerful [Bournez et al., 2007]

Computable y(0)= q(x) x R 2 y 0(t)= p(y(t)) t R+ ⇢ 2 f (x) =limy1(t) t !1

y1(t) f (x)

x t Modern notion sin, cos, exp, log, ,⇣,... Considered "weak": not and ⇣ Only analytic functions

Computing with differential equations

Generable functions

y(0)= y0 x R y 0(x)= p(y(x)) 2 ⇢ f (x)=y1(x)

y (x) 1 x

Shannon’s notion sin, cos, exp, log,...

15 / 24 Turing powerful [Bournez et al., 2007]

Computable y(0)= q(x) x R 2 y 0(t)= p(y(t)) t R+ ⇢ 2 f (x) =limy1(t) t !1

y1(t) f (x)

x t Modern notion sin, cos, exp, log, ,⇣,...

Computing with differential equations

Generable functions

y(0)= y0 x R y 0(x)= p(y(x)) 2 ⇢ f (x)=y1(x)

y (x) 1 x

Shannon’s notion sin, cos, exp, log,... Considered "weak": not and ⇣ Only analytic functions

15 / 24 Turing powerful [Bournez et al., 2007]

Computing with differential equations

Generable functions Computable y(0)= y0 y(0)= q(x) x R x R 2 y 0(x)= p(y(x)) 2 y 0(t)= p(y(t)) t R+ ⇢ ⇢ 2 f (x)=y1(x) f (x) =limy1(t) t !1 y (x) 1 x y1(t) f (x) x t Shannon’s notion Modern notion sin, cos, exp, log,... sin, cos, exp, log, ,⇣,... Considered "weak": not and ⇣ Only analytic functions

15 / 24 Computing with differential equations

Generable functions Computable y(0)= y0 y(0)= q(x) x R x R 2 y 0(x)= p(y(x)) 2 y 0(t)= p(y(t)) t R+ ⇢ ⇢ 2 f (x)=y1(x) f (x) =limy1(t) t !1 y (x) 1 x y1(t) f (x) x t Shannon’s notion Modern notion sin, cos, exp, log,... sin, cos, exp, log, ,⇣,... Considered "weak": not and ⇣ Turing powerful Only analytic functions [Bournez et al., 2007]

15 / 24 Theorem (Bournez et al, 2010) This is equivalent to a Turing machine.

I analog computability I purely continuous characterization of classical computability

More formally

Yes y1(t) 1

y1(t) x t

1 y1(t) No

16 / 24 I analog computability theory I purely continuous characterization of classical computability

More formally

Yes y1(t) 1

y1(t) x t

1 y1(t) No

Theorem (Bournez et al, 2010) This is equivalent to a Turing machine.

16 / 24 More formally

Yes y1(t) 1

y1(t) x t

1 y1(t) No

Theorem (Bournez et al, 2010) This is equivalent to a Turing machine.

I analog computability theory I purely continuous characterization of classical computability

16 / 24 Can Analog Machines Compute Faster?

Computability

logic boolean circuits discrete

recursive Turing lambda functions machine calculus

continuous quantum analog

Church Thesis All reasonable models of computation are equivalent.

17 / 24 Can Analog Machines Compute Faster?

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.

17 / 24 time contraction problem open problem !

Something is wrong... All functions have constant time complexity.

I GPAC:

Tentative definition

t y(0)=xy0 = p(y) z(t)=y(e )

y1(t) f (x) z1(t) f (x) x x t ; t

t w(t)=y(ee )

w1(t) f (x) x t

Complexity of analog systems

I Turing machines: T (x)=number of steps to compute on x

18 / 24 Something is wrong... All functions have constant time complexity.

time contraction problem open problem !

z(t)=y(et )

z1(t) f (x) x ; t

t w(t)=y(ee )

w1(t) f (x) x t

Complexity of analog systems

I Turing machines: T (x)=number of steps to compute on x I GPAC: Tentative definition T (x)=??

y(0)=xy0 = p(y)

y1(t) f (x) x t

18 / 24 Something is wrong... All functions have constant time complexity.

time contraction problem open problem !

first time t so that y (t) f (x) e µ | 1 | 6 z(t)=y(et )

z1(t) f (x) x ; t

t w(t)=y(ee )

w1(t) f (x) x t

Complexity of analog systems

I Turing machines: T (x)=number of steps to compute on x I GPAC: Tentative definition T (x,µ)=

y(0)=xy0 = p(y)

y1(t) f (x) x t

18 / 24 Something is wrong... All functions have constant time complexity.

time contraction problem open problem !

z(t)=y(et )

z1(t) f (x) x ; t

t w(t)=y(ee )

w1(t) f (x) x t

Complexity of analog systems

I Turing machines: T (x)=number of steps to compute on x I GPAC: Tentative definition T (x,µ)=first time t so that y (t) f (x) e µ | 1 | 6

y(0)=xy0 = p(y)

y1(t) f (x) x t

18 / 24 Something is wrong... All functions have constant time complexity.

time contraction problem open problem !

t w(t)=y(ee )

w1(t) f (x) x t

Complexity of analog systems

I Turing machines: T (x)=number of steps to compute on x I GPAC: Tentative definition T (x,µ)=first time t so that y (t) f (x) e µ | 1 | 6 t y(0)=xy0 = p(y) z(t)=y(e )

y1(t) f (x) z1(t) f (x) x x t ; t

18 / 24 time contraction problem open problem !

Something is wrong... All functions have constant time complexity.

Complexity of analog systems

I Turing machines: T (x)=number of steps to compute on x I GPAC: Tentative definition T (x,µ)=first time t so that y (t) f (x) e µ | 1 | 6 t y(0)=xy0 = p(y) z(t)=y(e )

y1(t) f (x) z1(t) f (x) x x t ; t

t w(t)=y(ee )

w1(t) f (x) x t

18 / 24 Complexity of analog systems

I Turing machines: T (x)=number of steps to compute on x I GPAC: time contraction problem open problem ! Tentative definition T (x,µ)=first time t so that y (t) f (x) e µ | 1 | 6 t y(0)=xy0 = p(y) z(t)=y(e )

y1(t) f (x) z1(t) f (x) x x t ; t

t w(t)=y(ee )

Something is wrong... w1(t) f (x) x All functions have constant t time complexity.

18 / 24 Observation Time scaling costs “space”.

Time complexity; for the GPAC must involve time and space !

extra component: w(t)=et

w(t)

t

Time-space correlation of the GPAC

t y(0)=q(x) y 0 = p(y) z(t)=y(e )

y1(t) f (x) z1(t) f (x)

q(x) q˜(x) t ; t

19 / 24 Observation Time scaling costs “space”.

Time complexity; for the GPAC must involve time and space !

Time-space correlation of the GPAC

t y(0)=q(x) y 0 = p(y) z(t)=y(e )

y1(t) f (x) z1(t) f (x)

q(x) q˜(x) t ; t extra component: w(t)=et

w(t)

t

19 / 24 Time-space correlation of the GPAC

t y(0)=q(x) y 0 = p(y) z(t)=y(e )

y1(t) f (x) z1(t) f (x)

q(x) q˜(x) t ; t extra component: w(t)=et

Observation Time scaling costs “space”.

Time complexity; for the GPAC must involve time and space ! w(t) t

19 / 24 ⌧ x y(1) x y(1)

Same time, different curves: different complexity !

Complexity in the analog world

Complexity measure: length of the curve

= x y(10) x y(1)

Time acceleration: same curve = same complexity !

20 / 24 Complexity in the analog world

Complexity measure: length of the curve

= x y(10) x y(1)

Time acceleration: same curve = same complexity !

⌧ x y(1) x y(1)

Same time, different curves: different complexity !

20 / 24 I Only rational coefficients needed

Analog complexity

ANALOG-PTIME ANALOG-PR w ( ) 2L y1 t 1 y1(t) f (x) y1(t) (w) `(t) poly( w ) x | | `(t) 1 y (t) w / 1 2L

Theorem I PTIME of and only if ANALOG-PTIME L2 L2 I f :[a, b] R computable in polynomial time f ANALOG-P ! , 2 R

I Analog complexity theory based on length I Time of Turing machine length of the GPAC , I Purely continuous characterization of PTIME

21 / 24 Analog complexity

ANALOG-PTIME ANALOG-PR w ( ) 2L y1 t 1 y1(t) f (x) y1(t) (w) `(t) poly( w ) x | | `(t) 1 y (t) w / 1 2L

Theorem I PTIME of and only if ANALOG-PTIME L2 L2 I f :[a, b] R computable in polynomial time f ANALOG-P ! , 2 R

I Analog complexity theory based on length I Time of Turing machine length of the GPAC , I Purely continuous characterization of PTIME I Only rational coefficients needed 21 / 24 Complexity: ???

y x x y x y

x > y x = y x < y Output: sign(x y) ?

Does a balance scale compute a ? Inputs: x, y [0, + ) 2 1

x y

22 / 24 Complexity: ???

y x

x y

x > y x < y Output: sign(x y) ?

Does a balance scale compute a function? Inputs: x, y [0, + ) 2 1

x y

x y

x = y

22 / 24 Complexity: ???

x

y

x < y Output: sign(x y) ?

Does a balance scale compute a function? Inputs: x, y [0, + ) 2 1

x y

y x y x

x > y x = y

22 / 24 Complexity: ???

Output: sign(x y) ?

Does a balance scale compute a function? Inputs: x, y [0, + ) 2 1

x y

y x x y x y

x > y x = y x < y

22 / 24 Complexity: ???

Does a balance scale compute a function? Inputs: x, y [0, + ) 2 1

x y

y x x y x y

x > y x = y x < y Output: sign(x y) ? 22 / 24 Does a balance scale compute a function? Inputs: x, y [0, + ) 2 1

x y

y x x y x y

x > y x = y x < y Output: sign(x y) ? Complexity: ??? 22 / 24 x ↵ x ↵ x ↵

1 5 I x = 2 , T = 1 second Yes I x = 8 , T = 1 second Timeout 3 ; 5 ; I x = 4 , T = 1 second No I x = 8 , T = 2 seconds Yes ; ;

Physical Oracles (Beggs, Costa, Poças and Tucker)

Model: Turing Machine with “physical oracle” Oracle: performs physical experiments with time Outcomes: Yes, No, Timeout

Example: ↵ [0, 1] unknown, x programmable 2

Turing machine x ↵

Queries:

23 / 24 x ↵ x ↵ x ↵ x ↵

5 I x = 8 , T = 1 second Timeout 3 5 ; I x = 4 , T = 1 second No I x = 8 , T = 2 seconds Yes ; ;

Physical Oracles (Beggs, Costa, Poças and Tucker)

Model: Turing Machine with “physical oracle” Oracle: performs physical experiments with time limit Outcomes: Yes, No, Timeout

Example: ↵ [0, 1] unknown, x programmable 2

Turing x machine ↵

Queries: 1 I x = 2 , T = 1 second Yes ;

23 / 24 x x ↵ x ↵ ↵

5 I x = 8 , T = 1 second Timeout 5 ; I x = 8 , T = 2 seconds Yes ;

Physical Oracles (Beggs, Costa, Poças and Tucker)

Model: Turing Machine with “physical oracle” Oracle: performs physical experiments with time limit Outcomes: Yes, No, Timeout

Example: ↵ [0, 1] unknown, x programmable 2

Turing ↵ machine x

Queries: 1 I x = 2 , T = 1 second Yes 3 ; I x = 4 , T = 1 second No ; 23 / 24 x ↵ x ↵ x ↵

5 I x = 8 , T = 2 seconds Yes ;

Physical Oracles (Beggs, Costa, Poças and Tucker)

Model: Turing Machine with “physical oracle” Oracle: performs physical experiments with time limit Outcomes: Yes, No, Timeout

Example: ↵ [0, 1] unknown, x programmable 2

Turing x machine ↵

Queries: 1 5 I x = 2 , T = 1 second Yes I x = 8 , T = 1 second Timeout 3 ; ; I x = 4 , T = 1 second No ; 23 / 24 x ↵ x ↵ x ↵ x ↵

Physical Oracles (Beggs, Costa, Poças and Tucker)

Model: Turing Machine with “physical oracle” Oracle: performs physical experiments with time limit Outcomes: Yes, No, Timeout

Example: ↵ [0, 1] unknown, x programmable 2

Turing x machine ↵

Queries: 1 5 I x = 2 , T = 1 second Yes I x = 8 , T = 1 second Timeout 3 ; 5 ; I x = 4 , T = 1 second No I x = 8 , T = 2 seconds Yes ; ; 23 / 24 Precision: infinite, unbounded, fixed

Physical Oracles (Beggs, Costa, Poças and Tucker)

Model: Turing Machine with “physical oracle” Oracle: performs physical experiments with time limit Outcomes: Yes, No, Timeout

Wheatstone bridge or x ↵ x ↵ Brewster’s angle experiment

Experiments types: C I Two-sided: time x ↵ d , Yes/No/Timeout | | C I One-sided: time x ↵ d , Yes/Timeout | | I Vanishing: Yes (if x = ↵)/Timeout, can test if x ↵ x0 ↵ 6 | | 6 | |

23 / 24 Physical Oracles (Beggs, Costa, Poças and Tucker)

Model: Turing Machine with “physical oracle” Oracle: performs physical experiments with time limit Outcomes: Yes, No, Timeout

Wheatstone bridge or x ↵ x ↵ Brewster’s angle experiment

Experiments types: C I Two-sided: time x ↵ d , Yes/No/Timeout | | C I One-sided: time x ↵ d , Yes/Timeout | | I Vanishing: Yes (if x = ↵)/Timeout, can test if x ↵ x0 ↵ 6 | | 6 | | Precision: infinite, unbounded, fixed 23 / 24 Physical Oracles (Beggs, Costa, Poças and Tucker)

Wheatstone bridge or x ↵ x ↵ Brewster’s angle experiment

Experiments types: C I Two-sided: time x ↵ d , Yes/No/Timeout | | C I One-sided: time x ↵ d , Yes/Timeout | | I Vanishing: Yes (if x = ↵)/Timeout, can test if x ↵ x0 ↵ 6 | | 6 | | Precision: infinite, unbounded, fixed Theorem (Beggs, Costa, Poças and Tucker) For a broad of oracles + PTIME machine, complexity bounded by1 BPP//log?, or P/poly if non-computable analog-digital interface. 1BPP + non-uniform log advise. 23 / 24 Summary

I analog: analogy/continuous, orthogonal meanings I machines vs models: need to distinguish concepts I “Church” thesis: subtle, several variants I hypercomputability: various interpretations I some reasonable models exists: GPAC, equivalent to TM I complexity: difficult to define in general, several approaches I influence of noise on computations

Wheatstone bridge or x ↵ Brewster’s angle experiment

24 / 24