Hamiltonkreds, den handelsrejsendes problem, delmængdesum-problemet

Relaterede dokumenter
Sprog L : mængden af instanser for et afgørlighedsproblem

Tirsdag 12. december David Pisinger

16. marts P NP. Essentielle spørgsmål: NP P? Et problem Q kaldes NP -fuldstændigt 1 Q NP 2 R NP : R pol Q. Resume sidste gang

16. december. Resume sidste gang

Klasserne af problemer, der kan løses i deterministisk og i ikke-deterministisk polynomiel tid; polynomiel reduktion; N P-fuldstændighed

.. if L(u) + w(u, v) < L(v) then.. begin... L(v) := L(u) + w(u, v)... F (v) := u.. end. med længde L(z)}

Videregående Algoritmik. Version med vejledende løsninger indsat!

Sidste gang Motivation Definitioner Approximations-algoritme for knudeoverdækning Approximations-algoritme for TSP med trekantsulighed

P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2.

Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528)

t a l e n t c a m p d k Matematiske Metoder Anders Friis Anne Ryelund 25. oktober 2014 Slide 1/42

dks Noter Michael Lind Mortensen, illio 24. juni 2010

Definition : Et træ er en sammenhængende ikke-orienteret graf uden simple kredse. Sætning : En ikke-orienteret graf er et træ hvis og kun hvis der er

P vs. NP. Niels Grønbæk Matematisk Institut Københavns Universitet 3. feb. 2012

Hamilton-veje og kredse:

Datalogisk indsigt Der findes problemer som kan løses effektivt (polynomiel

Løs til optimalitet i eksponentiel tid Find tilnærmet løsning i polynomiel tid

Grafer og graf-gennemløb

Iteration af et endomorft kryptosystem. Substitutions-permutations-net (SPN) og inversion. Eksklusiv disjunktion og dens egenskaber

Symmetrisk Traveling Salesman Problemet

Approximations-algoritmer. Løsningsmetoder for NP -hårde opt.problemer

Grafer og graf-gennemløb

Grafer og graf-gennemløb

Løs til optimalitet i eksponentiel tid Find tilnærmet løsning i polynomielt tid Optimeringsproblemer kan ikke altid verificeres i polynomiel

Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528)

Grafer og graf-gennemløb

P2-projektforslag Kombinatorik: grafteori og optimering.

Eulers sætning Matematikken bag kryptering og signering v.hj.a. RSA Et offentlig nøgle krypteringssytem

Elementær Matematik. Mængder og udsagn

Tirsdag 18. december David Pisinger

M=3 kunde forbindelse. oprettet lokation Steinerkant

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Branch-and-bound. David Pisinger. Videregående algoritmik, DIKU ( ) 1 Introduktion Gennemgående eksempler Brute-force metoder 10

Skriftlig Eksamen Algoritmer og Datastrukturer 2 (2003-ordning)

01017 Diskret Matematik E12 Alle bokse fra logikdelens slides

Baggrundsnote om logiske operatorer

Forslag til løsning af Opgaver til afsnittet om de naturlige tal (side 80)

8 Regulære flader i R 3

Matematikken bag kryptering og signering RSA

Eksamen i Diskret Matematik

P2-gruppedannelsen for Mat og MatØk

Grafer og graf-gennemløb

Selvreference i begrænsningsresultaterne

K 7 - og K 4,4 -minors i grafer

Grundlæggende køretidsanalyse af algoritmer

TALTEORI Følger og den kinesiske restklassesætning.

Skriftlig Eksamen Introduktion til lineær og heltalsprogrammering (DM515)

Noter til Perspektiver i Matematikken

Talteoriopgaver Træningsophold ved Sorø Akademi 2007

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Aalborg University. Synopsis. Titel: Traveling Salesman Problem

Minimum udspændende Træer (MST)

Eksamen i Diskret Matematik

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Perspektiverende Datalogikursus

Matematik YY Foråret Kapitel 1. Grupper og restklasseringe.

Minimum udspændende Træer (MST)

Matematisk induktion

Reeksamen i Diskret Matematik

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Analyse af ombytningspuslespil

Sammenhængskomponenter i grafer

Repræsentation af tal

Analyse af ombytningspuslespil

It og informationssøgning Forelæsning september 2006 Nils Andersen. Underprogrammer og betingelser. Standardfunktioner, typeomsætning

DM72 Diskret matematik med anvendelser

Definition (Pseudo-graf): En pseudo-graf G = (V, E) består af V, en ikke-tom mængde hvis elementer kaldes punkter, en mængde E samt en funktion f : E

Affine rum. a 1 u 1 + a 2 u 2 + a 3 u 3 = a 1 u 1 + (1 a 1 )( u 2 + a 3. + a 3. u 3 ) 1 a 1. Da a 2

Udtømmende søgning. Udtømmende søgning (kombinatorisk søgning) Problem med 4461 byer Udtømmende søgning i grafer. Find den korteste rundtur

Fejlkorligerende køder Fejlkorrigerende koder

KRYPTOLOGI ( Litt. Peter Landrock & Knud Nissen : Kryptologi)

Mindste udspændende træ

Skriftlig Eksamen Algoritmer og sandsynlighed (DM538)

Perspektiverende Datalogi Klassiske Algoritmer

Udtømmende søgning 1

Grafteori. 1 Terminologi. Grafteori, Kirsten Rosenkilde, august fra V. (Engelsk: subgraph, spanning subgraph, the subgraph

Normale tal. Outline. Hvad er tilfældighed? Uafhængighed. Matematiklærerdag Simon Kristensen. Aarhus Universitet, 24/03/2017

Mindste udspændende træ

Eksempel på muligt eksamenssæt i Diskret Matematik

Grafteori. 1 Terminologi. Indhold

Tal. Vi mener, vi kender og kan bruge følgende talmængder: N : de positive hele tal, Z : de hele tal, Q: de rationale tal.

Introduktion til prædikatlogik

3.1 Baser og dimension

Fejlkorligerende køder Fejlkorrigerende koder

dcomnet-nr. 6 Talrepræsentation Computere og Netværk (dcomnet)

TALTEORI Wilsons sætning og Euler-Fermats sætning.

DATALOGISK INSTITUT, AARHUS UNIVERSITET

Fejlkorligerende køder Fejlkorrigerende koder

Mat H /05 Note 2 10/11-04 Gerd Grubb

Matroider Majbritt Felleki

Implikationer og Negationer

Knudeteori. Introduktion Isotopi-begrebet Trefarvning af knuder Primknuder og knudeklassifikation Jones-polynomiet Flere invarianter Nogle anvendelser

er et helt tal. n 2 AB CD AC BD (b) Vis, at tangenterne fra C til de omskrevne cirkler for trekanterne ACD og BCD står vinkelret på hinanden.

DATALOGI 1E. Skriftlig eksamen torsdag den 3. juni 2004

Noter om opgaver i diskret matematik, Kirsten Rosenkilde, Maj Diskret matematik

sætning: Hvis a og b er heltal da findes heltal s og t så gcd(a, b) = sa + tb.

Minimum udspændende Træer (MST)

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

matx.dk Enkle modeller

4.1 Lineære Transformationer

Transkript:

, den handelsrejsendes problem, delmængdesum-problemet Videregående algoritmik Cormen et al. 34.5.3 34.5.5 Fredag den 19. december 2008

1 N P-fuldstændige problemer

1 N P-fuldstændige problemer 2 Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP

1 N P-fuldstændige problemer 2 Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP 3

Overordnet plan for reduktioner Plan: CIRCUIT-SAT SAT 3-CNF-SAT 3 CLIQUE VERTEX-COVER HAM-CYCLE TSP SUBSET-SUM

N P-fuldstændige problemer Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP En hamiltonkreds (hamiltonian cycle) i en graf er en kreds, der netop besøger hver af knuderne en gang. Som afgørlighedsproblem: HAM-CYCLE = { G G har en hamiltonkreds} En systematisk kombinatorisk dybde-først-gennemsøgning fra knude til knude ville være meget ineffektiv. Men: Sætning HAM-CYCLE N P Bevis Brug en påstået hamiltonkreds som attest; let at kontrollere (i polynomiel tid)

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (1) Nu godtgøres VERTEX-COVER pol HAM-CYCLE. For en forelagt graf G = (V, E) og et heltal k skal vi med andre ord anvise en graf G = (V, E ), der netop har en hamiltonkreds, hvis G har en knudeoverdækning af størrelse k. For hver kant (u, v) E konstrueres en widget (tingest, dims, dippedut, dingenot) W uv med 12 knuder og 14 kanter: For en kant (u, v) E benævnes de 12 knuder [u, v, 1], [u, v, 2],..., [u, v, 6], [v, u, 1], [v, u, 2],..., [v, u, 6]. Da grafen er ikke-orienteret, er (u, v) samme kant som (v, u) (burde egentlig skrives {u, v}), og man kan vælge at opfatte W uv som W vu.

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (2) V består af s 1,..., s k samt af knuderne i W uv, (u, v) E.

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (2) V består af s 1,..., s k samt af knuderne i W uv, (u, v) E. Som et eksempel vil denne knudeoverdækningsinstans give anledning til knuderne herunder

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (3) For hver knude u V vælges en ordning ((u, u (1) ), (u, u (2) ),..., (u, u (deg(u)) )) af kanterne incidente med knuden.

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (3) For hver knude u V vælges en ordning ((u, u (1) ), (u, u (2) ),..., (u, u (deg(u)) )) af kanterne incidente med knuden. Denne (vilkårlige) ordning bruges i definitionen af E : E består af tre typer kanter: 1 Kanterne i W uv erne 2 Kanter ([u, u (i), 6], [u, u (i+1), 1]) for alle u V, 1 i < deg(u) 3 Kanter (s j, [u, u (1), 1]) og ([u, u (deg(u)), 6], s j ) for alle u V, 1 j k

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (3) For hver knude u V vælges en ordning ((u, u (1) ), (u, u (2) ),..., (u, u (deg(u)) )) af kanterne incidente med knuden. Denne (vilkårlige) ordning bruges i definitionen af E : E består af tre typer kanter: 1 Kanterne i W uv erne 2 Kanter ([u, u (i), 6], [u, u (i+1), 1]) for alle u V, 1 i < deg(u) 3 Kanter (s j, [u, u (1), 1]) og ([u, u (deg(u)), 6], s j ) for alle u V, 1 j k Konstruktionen kan foretages i polynomiel tid; specielt optælles V = 12 E + k 12 E + V E = 14 E + (2 E V ) + 2k V = 16 E + (2k 1) V 16 E + (2 V 1) V

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (4) Vi gør eksemplet færdigt. De valgte ordninger er: fra w : ((w, x), (w, y), (w, z)), fra x : ((x, w), (x, y)), fra y : ((y, x), (y, w)), fra z : ((z, w)).

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (5) Fra delgraferne W uv er det kun knuderne [u, v, 1], [v, u, 1], [u, v, 6] og [v, u, 6], der forbindes udadtil. En eventuel hamiltonkreds i G må derfor internt inden for W uv forløbe på en af følgende måder:

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (5) Fra delgraferne W uv er det kun knuderne [u, v, 1], [v, u, 1], [u, v, 6] og [v, u, 6], der forbindes udadtil. En eventuel hamiltonkreds i G må derfor internt inden for W uv forløbe på en af følgende måder: Egentlig er der kun to forskellige måder: Idet (u, v) og (v, u) jo er samme kant, er også W uv = W vu og (b) = (d) (ved u v).

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (6) Lemma For alle 1 i, j k findes der i G for hvert u V en vej P iuj fra s i til s j, som ikke indeholder indre punkter af form s l. Disse veje er de eneste fra s i til s j, som ikke indeholder indre punkter af form s l, og pånær forløbet gennem delgraferne W vw er de entydige.

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (6) Lemma For alle 1 i, j k findes der i G for hvert u V en vej P iuj fra s i til s j, som ikke indeholder indre punkter af form s l. Disse veje er de eneste fra s i til s j, som ikke indeholder indre punkter af form s l, og pånær forløbet gennem delgraferne W vw er de entydige. Bevis Ved inspektion af de forskellige kanttyper. W vw Kanter gennem W vw ; forløb som enten (b) eller (c) ovenfor (2) Kant af type 2 (3) Kant af type 3 P iuj = s i (3)[u, u (1), 1]W uu (1)[u, u (1), 6](2)[u, u (2), 1]W uu (2)[u, u (2), 6]... (2)[u, u (deg(u)), 1]W uu (deg(u))[u, u (deg(u)), 6](3)s j

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (7) Sætning G, k VERTEX-COVER, hvis og kun hvis G HAM-CYCLE. Bevis

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (7) Sætning G, k VERTEX-COVER, hvis og kun hvis G HAM-CYCLE. Bevis Antag, U = {u 1,..., u k } overdækker G; da vil P 1u1 2P 2u2 3... P kuk 1 være en hamiltonkreds i G, idet vi udformer passagerne gennem delgraferne W vw som henholdsvis (b) eller (c), efter som kun det ene af punkterne v, w eller de begge ligger i overdækningen U.

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (7) Sætning G, k VERTEX-COVER, hvis og kun hvis G HAM-CYCLE. Bevis Antag, U = {u 1,..., u k } overdækker G; da vil P 1u1 2P 2u2 3... P kuk 1 være en hamiltonkreds i G, idet vi udformer passagerne gennem delgraferne W vw som henholdsvis (b) eller (c), efter som kun det ene af punkterne v, w eller de begge ligger i overdækningen U. Hvis der omvendt er forelagt en hamiltonkreds i G, vil den efter tur gå gennem en permutation s p(1), s p(2),..., s p(k) af knuderne s l og derfor have form P p(1)u1 p(2)p p(2)u2 p(3)... P p(k)uk p(1). Men så vil {u 1, u 2,..., u k } overdække G.

Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE (7) Sætning G, k VERTEX-COVER, hvis og kun hvis G HAM-CYCLE. Bevis Antag, U = {u 1,..., u k } overdækker G; da vil P 1u1 2P 2u2 3... P kuk 1 være en hamiltonkreds i G, idet vi udformer passagerne gennem delgraferne W vw som henholdsvis (b) eller (c), efter som kun det ene af punkterne v, w eller de begge ligger i overdækningen U. Hvis der omvendt er forelagt en hamiltonkreds i G, vil den efter tur gå gennem en permutation s p(1), s p(2),..., s p(k) af knuderne s l og derfor have form P p(1)u1 p(2)p p(2)u2 p(3)... P p(k)uk p(1). Men så vil {u 1, u 2,..., u k } overdække G. I forbindelse med det tidligere resultat HAM-CYCLE N P følger heraf HAM-CYCLE N PC.

Den handelsrejsendes problem Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP For en ikke-orienteret graf med heltallige kantvægte søges den billigste rundtur (dvs. hamiltonkreds). Uønskede kanter kan gøres urimeligt dyre, så vi kan lige så godt antage grafen fuldstændig, det vil sige c : V V Z. Som afgørlighedsproblem: TSP = { n, c, k K n har en hamiltontur, der højst koster k} Sætning TSP N P Bevis Turen kan bruges som attest

Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Sætning HAM-CYCLE pol TSP Bevis For { en forelagt graf G = (V, E) defineres 0 hvis (u, v) E c(u, v) = og k = 0. 1 hvis (u, v) / E Instans af HAM-CYCLE Instans af TSP

Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Sætning HAM-CYCLE pol TSP Bevis For { en forelagt graf G = (V, E) defineres 0 hvis (u, v) E c(u, v) = og k = 0. 1 hvis (u, v) / E Instans af HAM-CYCLE Instans af TSP Konstruktionen af ( V, c, k) kan foretages i polynomiel tid.

Reduktion af HAM-CYCLE til TSP Reduktion af VERTEX-COVER til HAM-CYCLE Reduktion af HAM-CYCLE til TSP Sætning HAM-CYCLE pol TSP Bevis For { en forelagt graf G = (V, E) defineres 0 hvis (u, v) E c(u, v) = og k = 0. 1 hvis (u, v) / E Instans af HAM-CYCLE Instans af TSP Konstruktionen af ( V, c, k) kan foretages i polynomiel tid. G har en hamiltonkreds, hvis og kun hvis K V har en rundtur med omkostning 0. Sætning TSP N PC.

Betragt {4, 7, 10, 12, 15, 24}. Kan man herfra udvælge tal med sum 38?

Betragt {4, 7, 10, 12, 15, 24}. Kan man herfra udvælge tal med sum 38?

Betragt {4, 7, 10, 12, 15, 24}. Kan man herfra udvælge tal med sum 38? SUBSET-SUM = { (s 1,..., s n ), t m N 1 i 1 <...<i m n : m j=1 s i j = t} idet {n, s 1,..., s n, t} N.

Betragt {4, 7, 10, 12, 15, 24}. Kan man herfra udvælge tal med sum 38? SUBSET-SUM = { (s 1,..., s n ), t m N 1 i 1 <...<i m n : m j=1 s i j = t} idet {n, s 1,..., s n, t} N. Sætning SUBSET-SUM N P Bevis Man kan bruge {i 1,..., i m } som attest

Betragt {4, 7, 10, 12, 15, 24}. Kan man herfra udvælge tal med sum 38? SUBSET-SUM = { (s 1,..., s n ), t m N 1 i 1 <...<i m n : m j=1 s i j = t} idet {n, s 1,..., s n, t} N. Sætning SUBSET-SUM N P Bevis Man kan bruge {i 1,..., i m } som attest Sætning 3-CNF-SAT pol SUBSET-SUM

Reduktion af 3-CNF-SAT til SUBSET-SUM (1) Bevis Vi får forelagt et udtryk ϕ = C 1... C k på 3-CN-form, det vil sige hver klausul C j er en disjunktion af netop tre litteraler (variable eller deres negation) dannet af logiske variable x 1,..., x n. Vi antager, ingen klausul både indeholder en variabel og dens negation, samt at alle variable bliver brugt.

Reduktion af 3-CNF-SAT til SUBSET-SUM (1) Bevis Vi får forelagt et udtryk ϕ = C 1... C k på 3-CN-form, det vil sige hver klausul C j er en disjunktion af netop tre litteraler (variable eller deres negation) dannet af logiske variable x 1,..., x n. Vi antager, ingen klausul både indeholder en variabel og dens negation, samt at alle variable bliver brugt. Delmængdesumproblemet får 2n + 2k tal, nemlig to (som vi vil kalde v i og v i ) for hver logisk variabel x i og to (som vi vil kalde s j og s j ) for hver klausul C j. Disse addender tilligemed måltallet konstrueres som n + k-cifrede tal i titalssystemet, idet vi lader de enkelte cifre (fra venstre mod højre) svare til x 1,..., x n, C 1,..., C k.

Reduktion af 3-CNF-SAT til SUBSET-SUM (2) Måltallet t skal have 1 i hvert ciffer svarende til en variabel og 4 i hvert ciffer svarende til en klausul. v i skal have 1 i cifferet svarende til x i og i cifre svarende til klausuler med x i og 0 på alle andre pladser. v i skal have 1 i cifferet svarende til x i og i cifre svarende til klausuler med x i og 0 på alle andre pladser. s j skal have 1 i cifferet svarende til C j og ellers 0 på alle andre pladser. s j skal have 2 i cifferet svarende til C j og ellers 0 på alle andre pladser. Forudsætningen om, at alle logiske variable bruges, og at ingen klausul både indeholder en variabel og dens negation, indebærer, at alle disse tal bliver forskellige.

Reduktion af 3-CNF-SAT til SUBSET-SUM (3) Som et eksempel kodes dette logiske udtryk som delmængdesumproblem: ϕ = C 1 C 2 C 3 C 4 = (x 1 x 2 x 3 ) ( x 1 x 2 x 3 ) ( x 1 x 2 x 3 ) (x 1 x 2 x 3 )

Reduktion af 3-CNF-SAT til SUBSET-SUM (3) Som et eksempel kodes dette logiske udtryk som delmængdesumproblem: ϕ = C 1 C 2 C 3 C 4 = (x 1 x 2 x 3 ) ( x 1 x 2 x 3 ) ( x 1 x 2 x 3 ) (x 1 x 2 x 3 ) Transformationen kan foretages i polynomiel tid (måltallets n + k cifre hver i O(1), de 2n + 2k addenders n + k cifre hver i O(k)).

Reduktion af 3-CNF-SAT til SUBSET-SUM (4) Sætning ϕ har en tilfredsstillende tildeling, hvis og kun hvis det konstruerede delmængdesumproblem kan løses.

Reduktion af 3-CNF-SAT til SUBSET-SUM (4) Sætning ϕ har en tilfredsstillende tildeling, hvis og kun hvis det konstruerede delmængdesumproblem kan løses. Bevis Bemærk først, at de enkelte cifferpladser kan adderes uden mente (blot grundtallet er 7; og vi har valgt grundtal 10).

Reduktion af 3-CNF-SAT til SUBSET-SUM (4) Sætning ϕ har en tilfredsstillende tildeling, hvis og kun hvis det konstruerede delmængdesumproblem kan løses. Bevis Bemærk først, at de enkelte cifferpladser kan adderes uden mente (blot grundtallet er 7; og vi har valgt grundtal 10). kun hvis : Vælg de tal blandt {v 1, v 1,..., v n, v n}, som svarer til sande litteraler. (Så passer summen i de n mest betydende pladser.) Tilpas ved passende valg af {s 1, s 1,..., s k, s k }. (Hver af de k mindst betydende pladser bidrager allerede med 1, 2 eller 3.)

Reduktion af 3-CNF-SAT til SUBSET-SUM (5) S = {1, 2, 10, 20, 100, 200, 1.000, 2.000, 10.011, 11.100, 100.001, 101.110, 1.000.110, 1.001.001}, t = 1.114.444.

Reduktion af 3-CNF-SAT til SUBSET-SUM (5) S = {1, 2, 10, 20, 100, 200, 1.000, 2.000, 10.011, 11.100, 100.001, 101.110, 1.000.110, 1.001.001}, t = 1.114.444.

Reduktion af 3-CNF-SAT til SUBSET-SUM (5) S = {1, 2, 10, 20, 100, 200, 1.000, 2.000, 10.011, 11.100, 100.001, 101.110, 1.000.110, 1.001.001}, t = 1.114.444. x 1 = 1, x 2 = 0, x 3 = 0

Reduktion af 3-CNF-SAT til SUBSET-SUM (5) S = {1, 2, 10, 20, 100, 200, 1.000, 2.000, 10.011, 11.100, 100.001, 101.110, 1.000.110, 1.001.001}, t = 1.114.444. x 1 = 1, x 2 = 0, x 3 = 0 hvis : En delmængde S med sum t må for i = 1,..., n netop indeholde enten v i eller v i. Vælges sandhedsværdien af x i tilsvarende, vil tildelingen tilfredsstille ϕ. (For s j og s j kan højst bidrage til position j med en sum på 3.)

Reduktion af 3-CNF-SAT til SUBSET-SUM (5) S = {1, 2, 10, 20, 100, 200, 1.000, 2.000, 10.011, 11.100, 100.001, 101.110, 1.000.110, 1.001.001}, t = 1.114.444. x 1 = 1, x 2 = 0, x 3 = 0 hvis : En delmængde S med sum t må for i = 1,..., n netop indeholde enten v i eller v i. Vælges sandhedsværdien af x i tilsvarende, vil tildelingen tilfredsstille ϕ. (For s j og s j kan højst bidrage til position j med en sum på 3.) Sætning SUBSET-SUM N PC

Reduktion af 3-CNF-SAT til SUBSET-SUM (5) S = {1, 2, 10, 20, 100, 200, 1.000, 2.000, 10.011, 11.100, 100.001, 101.110, 1.000.110, 1.001.001}, t = 1.114.444. x 1 = 1, x 2 = 0, x 3 = 0 hvis : En delmængde S med sum t må for i = 1,..., n netop indeholde enten v i eller v i. Vælges sandhedsværdien af x i tilsvarende, vil tildelingen tilfredsstille ϕ. (For s j og s j kan højst bidrage til position j med en sum på 3.) Sætning SUBSET-SUM N PC Samlinger af N P-fuldstændige problemer findes i Garey & Johnson: Computers and Intractability, a guide to the theory of NP-completeness, 1979 Pierluigi Crescenzi & Viggo Kann (eds.): A compendium of NP optimization problems, 2005. (Reference fra hjemmesiden)

En hemmelig kode skal være svær at bryde, så det kunne være en god ide at tage afsæt fra et N P-fuldstændigt problem! Vælg et så omfattende addendsystem S = {s 0,..., s n 1 }, at det bliver uoverkommeligt at prøve alle 2 n muligheder (det vil sige n 80), og send meddelelsen x = n 1 i=0 x i2 i som y = n 1 i=0 x is i. At genfinde x fra y, selv med kendskab til S, er umedgørligt.

En hemmelig kode skal være svær at bryde, så det kunne være en god ide at tage afsæt fra et N P-fuldstændigt problem! Vælg et så omfattende addendsystem S = {s 0,..., s n 1 }, at det bliver uoverkommeligt at prøve alle 2 n muligheder (det vil sige n 80), og send meddelelsen x = n 1 i=0 x i2 i som y = n 1 i=0 x is i. At genfinde x fra y, selv med kendskab til S, er umedgørligt. Men indkodningen skal have en bagdør, så den rette modtager kan afkode!

Strengt voksende addendmængde Betragt {2, 3, 6, 13, 27, 52}. Kan man herfra udvælge tal med sum 38?

Strengt voksende addendmængde Betragt {2, 3, 6, 13, 27, 52}. Kan man herfra udvælge tal med sum 38?

Strengt voksende addendmængde Betragt {2, 3, 6, 13, 27, 52}. Kan man herfra udvælge tal med sum 38? Et addendmængde S = {s 1,..., s n } kaldes strengt voksende, hvis det for alle j = 1,..., n gælder, at j 1 i=1 s i < s j.

Strengt voksende addendmængde Betragt {2, 3, 6, 13, 27, 52}. Kan man herfra udvælge tal med sum 38? Et addendmængde S = {s 1,..., s n } kaldes strengt voksende, hvis det for alle j = 1,..., n gælder, at j 1 i=1 s i < s j. Hvis S er strengt voksende, kan alle delmængdesum-problemer S, t løses efter det grådige princip: Betragt efter faldende størrelse hver addend, og medtag den, hvis der stadig er plads.

Strengt voksende addendmængde Betragt {2, 3, 6, 13, 27, 52}. Kan man herfra udvælge tal med sum 38? Et addendmængde S = {s 1,..., s n } kaldes strengt voksende, hvis det for alle j = 1,..., n gælder, at j 1 i=1 s i < s j. Hvis S er strengt voksende, kan alle delmængdesum-problemer S, t løses efter det grådige princip: Betragt efter faldende størrelse hver addend, og medtag den, hvis der stadig er plads. R. Merkle og M. Hellman foreslog i 1978 en metode, hvor en strengt voksende addendmængde (via modulo-regning) blev maskeret som et generelt umedgørligt problem til brug i et krypteringssystem med den beskrevne struktur.