/
Faster  Space-Efficient Faster  Space-Efficient

Faster Space-Efficient - PowerPoint Presentation

trish-goza
trish-goza . @trish-goza
Follow
351 views
Uploaded On 2018-10-02

Faster Space-Efficient - PPT Presentation

Algorithms for Subset Sum kSum and related problems Nikhil Bansal Shashwat Garg Jesper Nederlof Nikhil Vyas available at arXiv161202788 disclaimer no turtles or hares were harmed during this research ID: 683951

subset sum random space sum subset space random time bcm list disjointness cycle distinct sums crypto element distinctness floyd

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Faster Space-Efficient" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Faster Space-Efficient Algorithms for Subset Sum, k-Sum and related problems

Nikhil Bansal, Shashwat Garg, Jesper Nederlof, Nikhil Vyas

(available at arXiv:1612.02788)

disclaimer: no turtles or hares were harmed during this research Slide2

Given: integers

Asked:

is there an

with

?Focus on instances with small The `classic’ results: time, space (trivial) time, space HS(JACM72)Introduces `Meet-in-the-Middle’ (MitM) approach time, space SS(SICOMP81)

 

Subset Sum

Main Result: There is a Monte Carlo algorithm for Subset Sum using

time and space,assuming random read-only access to random bits

 

Algo

010011110010000010100001100001101010010

0/1

i’th

bit?

time

 Slide3

Subset Sum (many distinct sums)

BCM:Element

Distinctness

Floyd:

Cycle FindingAKKN (STACS16): Subset Sum distribution is smoothHS (JACM72): MitMList Disjointness(with small freqs2)

Crypto: List merging

Subset Sum

(few distinct sums)

BCM (FOCS13):Shuffle function

Hash mod p

LN(STOC10): Save space with DFT

Subset SumSlide4

BCM:Element

Distinctness

Floyd:

Cycle Finding

BCM (FOCS13):Shuffle functionSlide5

Element Distinctness (ED) by BCM

Given list

with

Asked

if all values are distinctIn time, space, time, space Theorem(BCM): time, space, assuming random read-only access to random bits

 

To prove, let’s first assume

, and let

Thus we seek with  Slide6

Floyd’s Cycle Finding

Finds such using little space

Basic algo in crypto, much more obscure in TCS

View

as digraph (with arcs ) 

sSlide7

T = #steps turtle (6 in ex)

p= stem-length (3 in ex), q=cycle length (6 in ex)2T=T+xq -> T=xq ->

T+p=xq+p

Floyd’s Cycle Finding

Finds such using little spaceBasic algo in crypto, much more obscure in TCSView as digraph (with arcs ) 

i

j

sSlide8

Floyd’s Cycle Finding

Finds such using little space

Basic algo in crypto, much more obscure in TCS

View

as digraph (with arcs ) 

i

j

Only works if start outside cycle!

Works well if

is random:

Probly

reached after

steps (birthday paradox)

 

sSlide9

`Shuffling’ f

What if is not random? `shuffle’

Let

be a random function

Cannot remember , but use assumed oracleDefine Use Floyd to sample such that is a bad pair if but Expect at most bad pairsUsing

samples, expect to see real solution

 

Theorem(BCM):

time, space, assuming random read-only access to random bits

 Slide10

BCM:Element

Distinctness

Floyd:

Cycle Finding

BCM (FOCS13):Shuffle functionList Disjointness(with small freqs2) Crypto: List mergingSlide11

Given two lists

,

Asked

do they share a common value? Very similar to ED; but want values from different listsDefine i.e p Counts number of pseudo-solutions

 

List

Disjointness

Theorem: There is an time, space algorithm for List Disjointness, if given

assuming

random read-only access to random bits

 Slide12

Define

by

merging

E.g. just concatenate

and In paper we set or with prob .5Sample such that as beforeIf and , also check or Need samplesExpect

vertices needed for a sample

 

List

DisjointnessTheorem: There is an time, space algorithm for List Disjointness

, if given

assuming

random read-only access to random bits

 Slide13

BCM:Element

Distinctness

Floyd:

Cycle Finding

Subset Sum (many distinct sums)HS (JACM72): MitMList Disjointness(with small freqs2) Crypto: List merging

BCM (FOCS13):Shuffle functionSlide14

Meet in the Middle

 

 

,

 

LD instance solved in

time, which is

. Also uses

space

 

 

 

Ints

. Denote w

Reduce SSS on

integers to List

Disjointness

on lists of length

run the sorting

algo

 Slide15

Meet in the Middle

Ints

. Denote w

Reduce SSS on

integers to List Disjointness on lists of length run the sorting algo.  space,

time

If

,

and no improvement

How do instances with

look?

 

new

 

 

,

 

 

 Slide16

Subset Sum (many distinct sums)

BCM:Element

Distinctness

Floyd:

Cycle FindingAKKN (STACS16): Subset Sum distribution is smoothHS (JACM72): MitMList Disjointness(with small freqs2)

Crypto: List merging

BCM (FOCS13):

Shuffle functionSlide17

Histogram

0 0 0 0 0

1

1 2 4

8 16321 2 3 4 516

Histogram

0 0 0 0 0

1

1 2 4 8 16321 2 3 4 516Subset Sum Distribution is smooth (AKKN)Lemma:

 Slide18

We use this as follows:Suppose

then

and

thus  Lemma: If , can solve SSS in

time and

space,

assuming random read-only access to random bits

 Lemma:

 

Subset Sum Distribution is smooth (AKKN)Slide19

 

 

 

 

Proof sketch:

There exists a

frequent sum

s.t

.

;

Let

be such that for all

implies

Then |

:

Suppose

(add in

)

Thus

 

Subset Sum Distribution is smooth (AKKN)

 

Lemma

:

 Slide20

Subset Sum (many distinct sums)

BCM:Element

Distinctness

Floyd:

Cycle FindingAKKN (STACS16): Subset Sum distribution is smoothHS (JACM72): MitMList Disjointness(with small freqs2)

Crypto: List merging

Subset Sum

(few distinct sums)

BCM (FOCS13):Shuffle function

Hash mod p + DFT

Subset SumSlide21

Subset Sum with few Distinct Sums

Lemma: Can solve instance

in time

)

and space.  Done by hashing numbers mod a prime of order and run time space algorithm, that uses DFT.Combining with previous lemma we obtain 

Main Result’: There is a Monte Carlo for Subset Sum using

time and

space

,assuming random read-only access to random bits  Left out many optimization to get

 Slide22

Subset Sum (many distinct sums)

BCM:Element

Distinctness

Floyd:

Cycle FindingAKKN (STACS16): Subset Sum distribution is smoothHS (JACM72): MitMList Disjointness(with small freqs2)

Crypto: List merging

Subset Sum

(few distinct sums)

BCM (FOCS13):Shuffle function

Subset Sum

Random k-Sum

Knapsack & Binary Linear Programming

NvdZvL

(MFCS12):Reduce without adding variables

Hash mod p + DFTSlide23

Further Results

Using reduction to Subset SumAlso time/space tradeoffs for List Disjointness using methods of BCM

List Disjointness in

time given

space.  Theorem: Binary LP on vars and constraints in time and space where is max integer,assuming random read-only access to random bits Slide24

Further Research

How strong is random bits assumptions exactly?Weaker than the existence of sufficiently strong PRG’sStill don’t know the exact (low-space) complexity of ED!!Can we do something problem specific?

Solve Subset Sum in time

Great open question, progress made recently (

AKKN)Study Subset Sum combinatoricsConnection by AKKN relates this to UDCP’sIf spike of size for some constant , upper bound for some depending on  Slide25

Take-home MessagesCycle finding is a great tool low space

algo’sWin/win approach for many/few distinct sums

Thanks for listening!!Slides available at

http://www.win.tue.nl/~

jnederlo/;paper available at arXiv