polymorphic p systems artiom alhazov sergiu ivanov yurii rogozhin hiroshima university....
Post on 21-Dec-2015
222 views
TRANSCRIPT
Polymorphic P Systems
Artiom AlhazovSergiu IvanovYurii Rogozhin
Hiroshima University. Higashi-Hiroshima, Japan
Chişinău, Moldova
Institute of Mathematics and Computer ScienceAcademy of Sciences of Moldova{artiom, sivanov,rogozhin}@math.md
Technical University of Moldova
repeat N times{if(STATE=0)increment A else decrement A; (code not using STATE)}
if(STATE=0)INSTR="increment“ else INSTR="decrement";repeat N times{INSTR A; (code not using STATE)}
Three motives for yet another extension
• Practical problems need more than just computational completeness– Determinism; both input & output– Proper internal data representation– Efficiency; complicated data structures
• Von Neumann architecture– Program is data
• What is a Nucleus in P systems?– It is inside– It describes the rules
Main idea• Most papers changing the active rules
– subsets of a predefined finite set
• What is data?– Multisets in regions
• Most natural way to specify rules as data– Interpret a pair of regions as a rule
– Contents left/right side of the rule
a128
aa 1L a 1R
2L b 2RInput over a
s
• Input: byte (in unary).• Output: number of bits 1• R={2:anb, 1:nn/2}
Try it (time and descriptionally efficiently) with P systems studied so far
Definition: polymorphic P systems=(O,T,μ,ws,w1L,w1R,…,wmL,wmR,,iout),
• H={s,1L,1R,…,mL,mR},s=skin,parent(iL)=parent(iR),• No rules, only features. In this paper :HTar
• Example notation: OPk(polym+d(coo),tar)
• +d: disabling rules allowed (by left side=)
• coo: cooperative rules
• tar: targets allowed (here,inj,out).
• k: membrane bound. (thus #rules(k-1)/2)
More definitions
• Initial rules are i:wiL(wiR,(i))Rparent(iL)
• -d: Regions iL are never empty
• Computing: Input O in iin.
• D: deterministic (for every input)• Deciding: T={yes,no}, confluent.
• Generating - N(), accepting – Na(), deciding – Nd(), computing a partial function in the deterministic case – f()
Superexponential growth example1=({a},{a},μ,a,a,a,a,a,a,aa,,1),• μ=[[]1L[[]2L[[]3L[]3R]2R]1R]s, here.• In the rest of the talk – graphical notation.
aa 3L aa3R
2Ra 2La
1Ra 1La
s
R2R={aaa}R1R={aa}Rs={aa}skin: a
Initial rules
• Multisets defining rules are changing• Use “old contents”, i.e.
– compute all, then update
Superexponential - continued
2
1
1
1
2
2
1
1
x
x
x
2
4
2
1
x
x
x
2
2n
2(n(n-1)/2)
2(n(n-1)(n-2)/6)
x
x
x
n
………
aa 3L aa3R
2Ra 2La
1Ra 1La
s
R2R={aaa}R1R={aa}Rs={aa}
R2R={aaa}R1R={aaa}
Rs={aa}
R2R={aaa}R1R={aaaaa}
Rs={aaa}
Exponential of polynomial
⇒n a2^n
a 3L aa3R
2Ra 2La2^(n(n-1)/2)
1Ra 1La2^(n(n-1)(n-2)/6)
s
R2R={aaa}R1R={aa1024}
Rs={aa35184372088832}skin:
a1329227995784915872903807060280344576
n=10
Maximal Growth
• I: initial number of objects
• c: maximum right side size
• n: number of steps
• d: membrane structure depth
• Non-polymorphic systems: Icn
• Polymorphic, no targets: Icp(n), deg(p)=d-1
Results
Universality with 47 membranesGenerating without cooperation and without disabling
Factorials with cooperationGenerating even faster with targets
Computing functionsStay tuned
NOP47(polym-d(coo))=NRE
• [AlhazovVerlan2008]: strongly universal P system with 1 membrane and 23 rules
• Each rule i:uv becomes [u]iL[v]iR
– total of 47 membranes.
• Focus: efficiency of computations– e.g., generating/deciding factorials by
constant-time multiplication of variable factors.
Targets. No cooperation• {n!nk|n1,k0}NOP13(polym-d(ncoo),tar)
• b produces copies of d– erased non-deterministically
• d enters 1R as a, increasing n in 1: aan
• The number of objects a in skin is multiplied by n– Until rule 3 changes rule 1 to can. Non-det.
• If b is erased too soon, multiplication continues without growing n.
a 2L a 2R
3Ra 3L
a1L
a1R ab
s
c
b 4L bd4R
b 5L 5R
d 6L a 6R
2:aa3:ac
a1L
a1R
4:bbd 5:b 6:d(a,in1R)
ab s
Remarks• If multiplication stops while n still grows, a
factorial of a smaller number is generated
• The shortest computation generating n!nk is only n+k+1
• To generate exactly factorials– We need to stop the multiplication when we
stop the increment– Seems impossible without cooperative rules.
Exactly factorials• {n!|n1}NOP9(polym-d(coo),tar)
• Similar to the previous system
• Rule 3 stops both incre-ment and multiplication
• A non-cooperative rule1:acan is actually neverapplied; used to stop the computation.
• n! are generated in n+1 step.
a1L
a1R
2:bbd 3:b(c,in1L)4:d(a,in1R)
ab s
Yet faster growth
• Polymorphic, no targets: exponential of polynomial
• Polymorphic, targets: exponential of exponential.
• Upper bound– The fastest growth is by squaring– Having n+n+1 objects, in one step we can
obtain at most n2+n+1 objects.
Lower bound: Superpowers
• {2^(2n)|n0}NOP15(polym-d(ncoo),tar) iterated squaring (b,s)⇒2(a,s)
(b,1R) ak ⇒(1:abk) bkk
rule 4: cleanup• Stopped by rule 3 making 1:cbk.• Numbers 2^(2n) generated in 3n+2 steps.• No cooperation! Reminder: 15 membranes.
2:aa3:ac
a1L 1R
5:ba’b’ 6:a’a 7:b’(b,in1R)
bb s
4:b
,,2,,,4,,,16,,,256,,,65536,,,4294967296,,,18446744073709551616,,, …
Deterministic computing
• ( n2^(2n) )DfOP15(polym+d(coo),tar)
• Similar to the previous system– a in 1L powers one squaring– Input dn in skin– cd ⇒3 ca in 1L
Deterministic computing: remarks
• Disabling rules may be avoided: +d -d– a‘s appear in skin every 3rd step– No need to disable rule 1 in the process of computing– Deterministic subtraction and appearance checking– c moves into 1L and blocks rule 1– n2^(2n) computed in O(n)
Deterministic deciding• {n!|n1}NdDOP37(polym-d(coo),tar)
• Deciding is more than accepting• Iterated division of the input number
– 4-step cycles– Verifying quotient and remainder
• A number kn! is decided in at most 4n steps (sublogarithmic w.r.t. k)
Summary - 1• Polymorphic P systems as a variant of object
rewriting model of P systems: rules are– Not specified explicitly (only features e.g. targets are)– Dynamically inferred from the contents of inner
regions• Idea: similar with cell nucleus, but simpler• Conventional computing: von Neumann
architecture VS Harvard architecture• Usual P systems cannot grow with factorial
speed; polymorphic P systems can deterministically decide factorials of n in O(n)
• Nice possibilities like constant-time multiplication/division
• Extensions possible
Summary - 2• Strong universality in OP47(polym-d(coo))
• Superexp. growth in DOP7(polym-d(ncoo))
• Gen. {n!nk}, n+k+1steps, OP13(polym-d(ncoo),tar)
• Gen. n! in n+1steps, OP9(polym-d(coo),tar)
• Generating 2^(2n) in 3n+2 steps by a P system in OP15(polym-d(coo),tar)
• Computing n2^(2n) in O(n) steps by a P system in DOP*(polym-d(coo),tar)
• Deciding factorials in sublogarithmic time by a P system in DOP37(polym-d(coo),tar)
Summary - 3• Growth
– polymorphic with targets (exp of exp)– polymorphic without targets (exp of poly)– non-polymorphic (exp)
• There exists infinite sets of numbers that are accepted in time which is sublinear w.r.t. the size of the input in binary representation (without cheating by only examining a part of the input).
• Selected open questions– Characterization of restricted classes
like OP*(polym-d(ncoo),ntar)– “Real” applications for which non-polymorphic P systems are not
suitable– Can polymorphic P systems use superexponential growth to
attack intractable problems in polytime? (Conjecture: no)
>>
On one slide• Strong universality in OP47(polym-d(coo))
• Superexp. growth in DOP7(polym-d(ncoo))
• Gen. {n!nk}, n+k+1steps, OP13(polym-d(ncoo),tar)
• Gen. n! in n+1steps, OP9(polym-d(coo),tar)
• Generating 2^(2n) in 3n+2 steps by a P system in OP15(polym-d(ncoo),tar)
• Computing n2^(2n) in O(n)steps by a P system inDOP*(polym-d(coo),tar)
• Deciding factorials in sublogarithmic time by a P system in DOP37(polym-d(coo),tar)Thank youThank you for your questions
a128aa 1L a 1R
2L b 2R
a85
s⇒8
aaa 1L a 1R
2L b 2R
b4
s