Introducing fractal computation Jérôme Durand-Lose COPCOM '11  Cluj Napoca

advertisement
Introducing fractal computation
Introducing fractal computation
Jérôme Durand-Lose
Joint work with Denys Duchier and Maxime Senot
Laboratoire d'Informatique Fondamentale d'Orléans,
Université d'Orléans, Orléans, FRANCE
COPCOM '11 Cluj Napoca
1 / 27
Introducing fractal computation
Brute force search
easy check
(too) many to check
Physical limitations
classical parallelism
unconventional computation
Fractal parallelism
continuous space and time idealization
using a fractal to broadcast
2 / 27
Introducing fractal computation
1
2
3
4
5
Introduction
Physical limitations
Signal machines
Fractal parallelism
Conclusion
3 / 27
Introducing fractal computation
Introduction
1
2
3
4
5
Introduction
Physical limitations
Signal machines
Fractal parallelism
Conclusion
4 / 27
Introducing fractal computation
Introduction
Hard to nd but easy to check
Very important in, e.g., asymmetric cryptography
Example: nd 3 integers a, b, and c such that...
10 < a < b < c < 100
and
a2 + b 2 = c 2
5 / 27
Introducing fractal computation
Introduction
Hard to nd but easy to check
Very important in, e.g., asymmetric cryptography
Example: nd 3 integers a, b, and c such that...
10 < a < b < c < 100
and
Easy
a2 + b 2 = c 2
30 + 40 = 50
2
2
2
5 / 27
Introducing fractal computation
Introduction
Hard to nd but easy to check
Very important in, e.g., asymmetric cryptography
Example: nd 3 integers a, b, and c such that...
10 < a < b < c < 100
and
Easy
a2 + b 2 = c 2
30 + 40 = 50
2
Indeed
2
2
900 + 1600 = 2500
5 / 27
Introducing fractal computation
Introduction
Link with NP problems
NP: class of decision problems
YES : easily proved (polynomial time) with the right certicate
NO : there is no certicate
6 / 27
Introducing fractal computation
Introduction
Link with NP problems
NP: class of decision problems
YES : easily proved (polynomial time) with the right certicate
NO : there is no certicate
Trivial algorithm
try all certicates
6 / 27
Introducing fractal computation
Introduction
Link with NP problems
NP: class of decision problems
YES : easily proved (polynomial time) with the right certicate
NO : there is no certicate
Trivial algorithm
try all certicates
BUT there are too many to try
6 / 27
Introducing fractal computation
Introduction
SAT
: Boolean formula with free variables x , x , ..., xn .
Is there a way to set the free variables such that φ is true?
Example
Instance
φ
1
2
Question
φ = (x1 ∨ ¬x2 ) ∧ x3
7 / 27
Introducing fractal computation
Introduction
SAT
: Boolean formula with free variables x , x , ..., xn .
Is there a way to set the free variables such that φ is true?
Example
Instance
φ
1
2
Question
φ = (x1 ∨ ¬x2 ) ∧ x3
x1
x2
x3
7 / 27
Introducing fractal computation
Introduction
SAT
: Boolean formula with free variables x , x , ..., xn .
Is there a way to set the free variables such that φ is true?
Example
Instance
φ
1
2
Question
φ = (x1 ∨ ¬x2 ) ∧ x3
x1
x2
x3
Complexity according to n, the number of variables
Test a valuation: linear in the length of the formula easy
Number of valuations: 2n
exponential growth
7 / 27
Introducing fractal computation
Introduction
Brute force parallelism
Try them all!
A few... easy
Polynomially many... might take a while
Exponentially many... not feasible
...unless
exponentially many computing units
8 / 27
Introducing fractal computation
Physical limitations
1
2
3
4
5
Introduction
Physical limitations
Signal machines
Fractal parallelism
Conclusion
9 / 27
Introducing fractal computation
Physical limitations
Classical computation
Parallelism/grid/cloud
1 microprocessor ⇒ 1 unit of space
≈ d processor at distance d
exponential diameter for exponentially many processors
exponential communication time
3
10 / 27
Introducing fractal computation
Physical limitations
Unconventional Computation
and Natural Computation (UC NC)
DNA computation
very small
totally uncentralized computation
still at some (faraway) point the soup will be too big
11 / 27
Introducing fractal computation
Physical limitations
Unconventional Computation
and Natural Computation (UC NC)
DNA computation
very small
totally uncentralized computation
still at some (faraway) point the soup will be too big
Quantum computation
superposition of exponentially many states
big decoherence/stability problem
limited set of operations (unitary operators and projections)
11 / 27
Introducing fractal computation
Physical limitations
Idealized model
Wanted properties
no space nor time granularity
can work at any scale
can compute
12 / 27
Introducing fractal computation
Signal machines
1
2
3
4
5
Introduction
Physical limitations
Signal machines
Fractal parallelism
Conclusion
13 / 27
Introducing fractal computation
Signal machines
Time (R)
continuous space
continuous time
Vocabulary
Signal (meta-signal)
Collision (rule)
dimensionless
Space (R)
deterministic
uniform
14 / 27
Introducing fractal computation
Signal machines
Example: nd the middle
Meta-signals, speed
M, S (M) = 0
Collision rules
M
M
15 / 27
Introducing fractal computation
Signal machines
Example: nd the middle
Meta-signals, speed
M, S (M) = 0
div, S (div) = 3
Collision rules
div
M
M
15 / 27
Introducing fractal computation
Signal machines
Example: nd the middle
Meta-signals, speed
M, S (M) = 0
div, S (div) = 3
hi, S (hi) = 1
lo, S (lo) = 3
M
div
hi
lo
M
M
Collision rules
{ div, M } → { M, hi, lo }
15 / 27
Introducing fractal computation
Signal machines
Example: nd the middle
back
M
hi
M
lo
M
div
M
Meta-signals, speed
M, S (M) = 0
div, S (div) = 3
hi, S (hi) = 1
lo, S (lo) = 3
back, S (back) = −3
Collision rules
{ div, M } → { M, hi, lo }
{ lo, M } → { back, M }
15 / 27
Introducing fractal computation
Signal machines
Example: nd the middle
M
M
back
hi
M
lo
M
div
M
Meta-signals, speed
M, S (M) = 0
div, S (div) = 3
hi, S (hi) = 1
lo, S (lo) = 3
back, S (back) = −3
Collision rules
{ div, M } → { M, hi, lo }
{ lo, M } → { back, M }
{ hi, back } → { M }
15 / 27
Introducing fractal computation
Signal machines
Complex dynamics
16 / 27
Introducing fractal computation
Signal machines
Complex dynamics
16 / 27
Introducing fractal computation
Signal machines
Complex dynamics
16 / 27
Introducing fractal computation
Signal machines
Fractal space-time diagrams
17 / 27
Introducing fractal computation
Fractal parallelism
1
2
3
4
5
Introduction
Physical limitations
Signal machines
Fractal parallelism
Conclusion
18 / 27
Introducing fractal computation
Fractal parallelism
Using a fractal to compute
Scheme
Use the structure
to dispatch the computation
19 / 27
Introducing fractal computation
Fractal parallelism
QSat: quantied satisfaction problem
Quantied boolean formula
(without free variable)
Find its logical value
PSPACE-complete problem
Example
φ = ∃x1 ∀x2 ∀x3 (x1 ∧ ¬x2 ) ∨ x3
20 / 27
Introducing fractal computation
Fractal parallelism
QSat: quantied satisfaction problem
Quantied boolean formula
(without free variable)
Find its logical value
PSPACE-complete problem
Example
φ = ∃x1 ∀x2 ∀x3 (x1 ∧ ¬x2 ) ∨ x3
20 / 27
Introducing fractal computation
Fractal parallelism
Building the tree / combinatorial comb
21 / 27
Introducing fractal computation
Fractal parallelism
Lens and variables assignment
22 / 27
Introducing fractal computation
Fractal parallelism
Formula evaluation
−t
←
t
=c
⇒
φ = ∃x1 ∀x2 ∀x3 (x1 ∧ ¬x2 ) ∨ x3
a
⇒◦
=
¬
−
←
γ+
⇒◦
=
¬
−
←
γ+
=t
⇒
γ←−
+
a
=t
⇒
=t
⇒
←
T−
=t
⇒
γ←−
+
a
a
=
⇒
¬
←
T−
a
=
⇒
f
←
T−
γ←−
+
=t
⇒
=t
⇒
a
=t
⇒
−
←
γ+
γ←−
+
−
←
γ+
=γ
⇒
a
=γ
⇒
=γ
⇒
a
=
⇒
¬
−
←
T
=t
⇒
−F
←
γ←−
+
=t
⇒
=t
⇒
=t
⇒
−
←
T
⇒
=
∧◦
⇒
=
f+
←
−
F
=∧
⇒
−
←
T
=∨
⇒
=∧
⇒
⇒
=
t+
a
=s
⇒
−
←
T
Case here
(true ∧ ¬true) ∨ true
=
⇒
T←
T−
=t
⇒
←
−
F
=
⇒
f
23 / 27
Introducing fractal computation
Conclusion
1
2
3
4
5
Introduction
Physical limitations
Signal machines
Fractal parallelism
Conclusion
24 / 27
Introducing fractal computation
Conclusion
Fractal computation
continuous media
(time and space)
structure automaticaly unfold
structure used
to dispatch and to collect
generic machine
modular programming
25 / 27
Introducing fractal computation
Conclusion
Complexities
Time
constant (as a duration)
cubic (as max length of collision chain)
Space
constant (as a width)
exponential (as max number of independant signals, antichain)
26 / 27
Introducing fractal computation
Conclusion
Complexities
Time
constant (as a duration)
cubic (as max length of collision chain)
Space
constant (as a width)
exponential (as max number of independant signals, antichain)
NB: Super-Turing Model with accumulations
decide Halt in nite duration and width...
26 / 27
Introducing fractal computation
Conclusion
Future work
Fractal computation
non deterministic processes
higher complexity classes
Automatic discretization
into a cellular automata
nice properties are lost
easy way to dene a CA
27 / 27
Introducing fractal computation
Conclusion
Future work
Fractal computation
non deterministic processes
higher complexity classes
Automatic discretization
into a cellular automata
nice properties are lost
easy way to dene a CA
Thank you for your attention
27 / 27
Download