Matroids Matheplanet Forum Index
Moderiert von Bilbo
Theoretische Informatik » Berechenbarkeitstheorie » Berechenbarkeit einer bestimmten Funktion
Druckversion
Druckversion
Autor
Universität/Hochschule J Berechenbarkeit einer bestimmten Funktion
LernenWollen
Aktiv Letzter Besuch: im letzten Monat
Dabei seit: 06.06.2019
Mitteilungen: 76
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Themenstart: 2019-07-22


Hallo!

Zu betrachten ist folgendes Problem:
Sei $\Sigma = \{0, 1\}$ und $loop: (\Sigma^*)^3 \to \Sigma^*$ eine Funktion.

Ergebnisse der Funktion $loop(w_1, w_2, x)$ sind schlicht
1, falls $M_{w_1}$ und $M_{w_2}$ auf Eingabe $x$ halten,
0, falls keins von beidem auf $x$ hält,
$w_1$, falls nur $M_{w_1}$ auf $x$ hält,
$w_2$, falls nur $M_{w_2}$ auf $x$ hält.

$w_i$ ist eine eindeutige Kodierung einer dTM, $M_{w_k}$ ist dabei die Simulation dieser kodierten dTM. $x$ ist ein "normales" Wort.

Zu betrachten ist nun die Berechenbarkeit von $loop$.
Ich suche einen Algorithmus, mit dem ich eben $loop$ berechnen kann. Der naive Ansatz wäre, die TMs nacheinander zu simulieren, allerdings ist das sehr offensichtlich sinnlos.
Also wäre ein abwechselndes Simulieren der TMs nach ein paar Schritten sinnvoller. Sehr grob also:

while($M_{w_1}$ noch nicht terminiert oder $M_{w_2}$ noch nicht terminiert) {
   simuliere 10 Schritte $M_{w_1}$;
   simuliere 10 Schritte $M_{w_2}$;
}

Aber so werde ich niemals fertig, falls eine oder beide doch loopen. Ich könnte nach $n$ Schritten abbrechen und annehmen, dass eine TM nicht hält, aber was ist, wenn diese nach $n+1$ Schritten gehalten hätte?
Die Funktion ist berechenbar, aber ich verstehe nicht warum und wie.
In meinem Verständnis würde ich ein Ergebnis außer der $1$ nie bekommen.
Und eine Idee, wie man zuverlässig herausbekommt, ob etwas loopt, habe ich auch nicht.

Vielen Dank für Anregungen, wie mein Problem aufgelöst werden kann.

Grüße
LernenWollen



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
smirk_mirkin
Junior Letzter Besuch: vor mehr als 3 Monaten
Dabei seit: 04.12.2014
Mitteilungen: 17
Aus: Leipzig, Deutschland
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.1, eingetragen 2019-07-23


Hallo LernenWollen,

wieso bist du dir so sicher, dass die Funktion berechenbar ist? Versuch doch mal eine Reduktion auf das Halteproblem.



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
LernenWollen
Aktiv Letzter Besuch: im letzten Monat
Dabei seit: 06.06.2019
Mitteilungen: 76
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.2, vom Themenstarter, eingetragen 2019-08-22


Entschuldige, dass ich erst so spät antworte.
Die Funktion ist berechenbar, da sie eine ehemalige Klausuraufgabe einer Universität ist.
Man kann sich daher sehr sicher sein, dass bei der Vorgabe, sie sei berechenbar, auch berechenbar ist.
Eine Reduktion ist doch nur für die Komplexität relevant.
Hier war explizit nach einem Alogorithmus gefragt, der $loop§ löst.

Grüße
LernenWollen



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
tactac
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 15.10.2014
Mitteilungen: 1727
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.3, eingetragen 2019-08-22

\(\begingroup\)\(\newcommand{\sem}[1]{[\![#1]\!]} \newcommand{\name}[1]{\ulcorner#1\urcorner} \newcommand{\upamp}{\mathbin {⅋}}\)
Was ergibt denn $loop(w_1,w_2,x)$, wenn $w_1=w_2$?
\(\endgroup\)


Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
LernenWollen
Aktiv Letzter Besuch: im letzten Monat
Dabei seit: 06.06.2019
Mitteilungen: 76
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.4, vom Themenstarter, eingetragen 2019-08-24


0 oder 1, abhängig davon, ob die durch $w_1$ beschriebene TM auf $x$ hält.



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
tactac
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 15.10.2014
Mitteilungen: 1727
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.5, eingetragen 2019-08-24

\(\begingroup\)\(\newcommand{\sem}[1]{[\![#1]\!]} \newcommand{\name}[1]{\ulcorner#1\urcorner} \newcommand{\upamp}{\mathbin {⅋}}\)
Denkst du jetzt immer noch, dass $loop$ berechenbar ist?
\(\endgroup\)


Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
LernenWollen
Aktiv Letzter Besuch: im letzten Monat
Dabei seit: 06.06.2019
Mitteilungen: 76
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.6, vom Themenstarter, eingetragen 2019-08-25


Selbstverständlich. Das ist eine Klausuraufgabe aus einer Klausur einer technischen Universität in Deutschland. Sie wurde von einem Prof. Dr. gestellt und wurde offensichtlich mehrfach erfolgreich gelöst. Nur die Lösung ist nicht zugänglich.

Ich selbst frage hier, wie man per Algorithmus zeigen kann, dass sie berechenbar ist. Es ist nicht die Frage, ob sie berechenbar ist, sondern wie sie berechnet werden kann.



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
tactac
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 15.10.2014
Mitteilungen: 1727
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.7, eingetragen 2019-08-25

\(\begingroup\)\(\newcommand{\sem}[1]{[\![#1]\!]} \newcommand{\name}[1]{\ulcorner#1\urcorner} \newcommand{\upamp}{\mathbin {⅋}}\)
Ogottogott. Ich schlage folgendes Vorgehen vor.
1) Beweise, dass $loop$ nicht berechenbar ist. (Das ist einfach.)
2) Gib eine Turingmaschine an, die $loop$ realisiert. (Dürfte recht schwer sein.)
3) Fields-Medaille abholen. (Einfach, wenn 2. korrekt erledigt ist.)
\(\endgroup\)


Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
LernenWollen
Aktiv Letzter Besuch: im letzten Monat
Dabei seit: 06.06.2019
Mitteilungen: 76
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.8, vom Themenstarter, eingetragen 2019-08-27


Ich verstehe nicht, wieso $loop$ nicht berechenbar sein soll.
Vielleicht habe ich die Aufgabe falsch wiedergegeben. Deswegen hier der Link zur Klausur:



Danke für die Geduld, aber wenn $loop$ immernoch nicht berechenbar sein soll, dann benötige ich einen Grund. Mir fällt es nicht leicht zu glauben, diese Klausuraufgabe sei nicht lösbar.



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
ligning
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 07.12.2014
Mitteilungen: 3134
Aus: Berlin
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.9, eingetragen 2019-08-27


Klausur schreibt:
Dabei sind w1, w2 ∈ Σ∗ Kodierungen von deterministischen LBAs.

LBAs, keine allgemeinen Turingmaschinen.


-----------------
⊗ ⊗ ⊗



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
LernenWollen
Aktiv Letzter Besuch: im letzten Monat
Dabei seit: 06.06.2019
Mitteilungen: 76
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.10, vom Themenstarter, eingetragen 2019-08-27


Achso, danke.
Aber das Problem bleibt ja bestehen:
Wie weiß ich, dass ein LBA loopt?



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
Yggdrasil
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 01.07.2004
Mitteilungen: 857
Aus: Berlin
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.11, eingetragen 2019-08-27


2019-08-27 17:11 - LernenWollen in Beitrag No. 10 schreibt:
Achso, danke.
Aber das Problem bleibt ja bestehen:
Wie weiß ich, dass ein LBA loopt?

Hallo,

wie in dem Hinweis im PDF schon erwähnt wird: Es gibt nur endlich viele unterschiedliche Gesamtzustände des Systems (damit ist der Zustand der TM und der Inhalt der Bänder gemeint) und diese Größe kann für jeden LBA auch im Voraus berechnet werden.

Also muss man dann nur noch die Anzahl der Gesamtschritte tracken, denn nach dem Schubfachprinzip muss sich irgendwann einer der Zustände wiederholen.

Gruß Yggdrasil



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
LernenWollen
Aktiv Letzter Besuch: im letzten Monat
Dabei seit: 06.06.2019
Mitteilungen: 76
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.12, vom Themenstarter, eingetragen 2019-08-27


2019-08-27 18:36 - Yggdrasil in Beitrag No. 11 schreibt:
Also muss man dann nur noch die Anzahl der Gesamtschritte tracken, denn nach dem Schubfachprinzip muss sich irgendwann einer der Zustände wiederholen.

Das ist es! Danke sehr!

Grüße
LernenWollen



Eine Notiz zu diese Forumbeitrag schreiben Notiz   Profil  Quote  Link auf diesen Beitrag Link
LernenWollen hat die Antworten auf ihre/seine Frage gesehen.
LernenWollen hat selbst das Ok-Häkchen gesetzt.
LernenWollen wird per Mail über neue Antworten informiert.
Neues Thema [Neues Thema]  Druckversion [Druckversion]

 


Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2020 by Matroids Matheplanet
This web site was originally made with PHP-Nuke, a former web portal system written in PHP that seems no longer to be maintained nor supported. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]