www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Englisch
  Status Grammatik
  Status Lektüre
  Status Korrekturlesen
  Status Übersetzung
  Status Sonstiges (Englisch)

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Formale Sprachen" - Satz von Rice
Satz von Rice < Formale Sprachen < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Formale Sprachen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Satz von Rice: Tipp
Status: (Frage) überfällig Status 
Datum: 14:29 So 19.02.2012
Autor: judithlein

Hallo,

ich habe eine Frage zu dem Satz von Rice:

Sei R die Klasse aller Turing-berechenbaren Funktionen über dem Alphabet E. Sei S eine echte, nichttriviale Teilmenge von R.
Dann ist die folgende Sprache unentscheidbar:

C(S) = {w | die von [mm] M_{w} [/mm] berechnete Funktion liegt in S}

So, den Satz verstehe ich eigentlich schon nicht richtig. Was sagt mir das?

Dann der Beweis:
Sei S gegeben und sei ud die überall undefinierte berechenbare Funktion. Also ist ud [mm] \in [/mm] S oder ud [mm] \not\in [/mm] S.

1. Fall: ud [mm] \in [/mm] S.
Wegen S [mm] \not= [/mm] R gibt es ein q [mm] \in [/mm] R \ S.
Sei Q die TM für q.
Betrachte folgende Turingmaschine TM:

Bei Eingabe von w#x simuliert TM erst die Maschine [mm] M_{w} [/mm] angesetzt auf w. Kommt diese Rechnung zum Ende, so soll TM anschließend Q angesetzt auf x simulieren.

Und folgendes verstehe ich nicht:

Dann folgt:
- Hält [mm] M_{w} [/mm] auf w, so ist die berechnete Funktion = q
- Hält [mm] M_{w} [/mm] nicht auf w, so ist die berechnete Funktion = ud

So, erstmal bis hier hin. Wäre super, wenn mir jemand das erklären könnte. Vielen Dank!

        
Bezug
Satz von Rice: Antwort
Status: (Antwort) fertig Status 
Datum: 11:09 Di 27.03.2012
Autor: FritzB

Hallo liebe judithlein,

der Satz von Rice hat eine ziemlich intuitiven und sinnvollen Hintergrund: Er besagt nämlich (jetzt mal ganz frei), dass wenn eine Eigenschaft S eines beliebigen Programmes (oder einer Rechenmaschine, iPhone, Alienware Gamer PC, Supercomputer) genügend schwierig ist, dann kann es kein Programm geben, welches entscheidet, ob ein beliebiges Programm diese Eigenschaft erfüllt.

Beispielsweise sagt der Satz von Rice, dass wir kein Programm schreiben können, dem wir ein Programm als Eingabe geben und das uns dann ausgibt, ob das Programm immer den gleichen Wert ausgibt (eine konstante Funktion berechnet). Oder ob es eine andere bestimmte Funktion berechnet wie z.B. a [mm] \cdot [/mm] b, n!, ...
Wenn wir jetzt die charakteristische Funktion einer Sprache betrachten ist es auch nicht entscheidbar, ob ein Programm die leere Sprache berechnet oder [mm] \Sigma^\star [/mm] oder das Cliquenproblem in polynomieller Zeit ;-)
Wichtig ist hierbei: Für ein festes Programm ist es nicht unbedingt schwierig zu berechnen, ob eine Eigenschaft erfüllt ist. Z.B. können wir für ein bestimmtes Programm leicht einen Algorithmus entwickeln, der uns sagt, ob das Programm Zahlen, Strings oder Bilder (etc.) ausgibt. Beim Satz von Rice sind aber die „Quantoren umgetauscht“: Es ist nicht für ein Programm ein Algorithmus zu finden, sondern ein Algorithmus, der für alle Programme entscheidet ob die Eigenschaft vorliegt.

Diese Interpretation lässt sich durch die folgenden Überlegungen erklären:

— Das „Programm“ ist eine Turingmaschine, die eine Funktion aus R berechnet. Mit der Churchschen These lässt sich der Satz von Rice dann auf alle rechnenden Maschinen (-modelle) übertragen.

— Eine Eigenschaft S können wir als Teilmenge aller rekursiven Funktionen auffassen: Alle Turingmaschinen besitzen die Eigenschaft S, wenn sie eine Funktion aus S berechnen.

— „genügend schwierig“ heißt, dass es Turingmaschinen mit dieser Eigenschaft gibt und dass nicht alle Turingmaschinen diese Eigenschaft erfüllen. Sonst wäre ein Algorithmus, der immer „Ja“ ausgibt bzw. ein Algorithmus der immer „Nein“ ausgibt denkbar.

Ich hoffe ich konnte dir damit den Satz von Rice intuitiv etwas näher bringen.

Zu deiner Frage im Beweis ein paar Gegenfragen:

1) Welche Ausgabe erzeugt denn die Turingmaschine, wenn sie hält?

2) Welche Ausgabe erzeugt eine Turingmaschine, die nie hält? Bzw. welche Funktion berechnet sie? Beachte dabei, dass eine Turingmaschine, die nie hält, tatsächlich eine berechenbare Funktion berechnet. Sogar jede nie haltende Turingmaschine die gleiche.

Viel Erfolg weiterhin! Theoretische Informatik ist ein echt spannendes Gebiet. :-)

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Formale Sprachen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.englischraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]