next up previous
Next: About this document

DM17:Supplerende noter om uafgørligheds beviser:

formålet med denne note er at give de studerende en form for kogebogsopskrift på, hvorledes man bygger et uafgørlighedsbevis op.

Lad os starte med at genkalde definition 5.4.1 fra Lærebogen:

Lad tex2html_wrap_inline644 være sprog. En reduktion fra tex2html_wrap_inline646 til tex2html_wrap_inline648 er en rekursiv funktion tex2html_wrap_inline650 som opfylder at tex2html_wrap_inline652.

Bemærk at vi kræver at er rekursiv, dvs at der findes en Turing Maskine som beregner . Dette er meget vigtigt og det betyder, at vi for at bruge en reduktion skal kunne gøre rede for, at den tilsvarende funktion faktisk kan beregnes af en turing maskine. Typisk gøres dette ved en diskution i ord af hvad den turing maskine der beregner skal kunne gøre og argumentere for at disse ting er mulige (se eksemplerne nedenfor).


 lemma57
Bevis: Ideen i beviset kan udemærket illustreres skematisk som vist i Figur 1. Her er tex2html_wrap_inline672 en turing maskine der omdanner en streng tex2html_wrap_inline674 til strengen tex2html_wrap_inline676. Denne streng gives så videre til tex2html_wrap_inline678, som afgør tex2html_wrap_inline648. Heraf fås at tex2html_wrap_inline678 svarer ja på input tex2html_wrap_inline676 præcis hvis tex2html_wrap_inline686 og nej ellers.

  
Figure: Turing maskinen tex2html_wrap_inline698 afgør tex2html_wrap_inline646, forudsat at tex2html_wrap_inline678 findes.

Dvs den samlede maskine tex2html_wrap_inline698 som er beskrevet i diagramform i Figur 1 har egenskaben at den altid stopper og svarer ja præcis når . Altså tex2html_wrap_inline698 afgør tex2html_wrap_inline646.

Hvordan kan vi bruge Lemma 0.1 til uafgørligheds beviser?

Hvis vi kender et sprog L som er uafgørligt og kan vise at L kan reduceres til sproget L' vha en turing beregnelig funktion , så kan vi bruge Lemma 0.1 til at konkludere at sproget L' er uafgørligt, thi lemmaet siger at hvis L' er afgørligt, så er også L afgørligt, hvilket er en modstrid.

Opskrift på et uafgørlighedsbevis:

Lad K være et sprog vi ønsker at vise er uafgørligt, dvs vi vil vise at der ikke kan findes en turing maskine som givet en streng x over samme alfabet som K, kan afgøre om .

  1. Vælg et sprog R som vides at være uafgørligt.
  2. Beskriv en reduktion fra R til K vha en turing beregnelig funktion. Lad tex2html_wrap_inline672 være en turing maskine der beregner denne reduktion. Dvs givet x beregner tex2html_wrap_inline672 strengen tex2html_wrap_inline676 som har egenskaben at hvis og kun hvis . Der skal redegøres for hvordan tex2html_wrap_inline672 kan realiseres.
  3. Lad være en hypotetisk turing maskine der afgør K (vi ønsker at vise at ikke findes).
  4. Brug tex2html_wrap_inline672 og som vist i Figur 1 (med ) til at lave en Turing maskine tex2html_wrap_inline698 der afgør R. tex2html_wrap_inline698 afgør R thi vi har argumenteret for at hvis og kun hvis .
  5. Konkluder ud fra ovenstående modstrid at ikke kan findes, hvorfor K er uafgørligt.

Bemærkninger:

Eksempler på uafgørlighedsbeviser.

Her følger to eksempler som er repræsentative, men selvfølgelig ikke udtømmende. Husk f.eks at Rice's sætning er et andet nyttigt værktøj, som I må bruge medmindre det eksplicit forbydes i den pågældende opgave. Husk at Rice's sætning kun kan bruges på spørgsmål som omhandler sprog for turing maskiner!




next up previous
Next: About this document

Joergen Bang-Jensen
Tue Nov 23 16:42:53 MET 1999