Theoretische und technische Informatik - ganz praktisch
Herzlich willkommen auf der Question/Answer-Plattform zu Grundlagen der Informatik II. Wir wünschen Ihnen viel Spaß beim Lernen und Diskutieren!
Loggen Sie sich mit Ihrem KIT-Account (u...) ein, um loszulegen!
Beachten Sie auch diese Informationen zum Schnelleinstieg.
(Nicht-KIT-Studierende beachten bitte diese Informationen.)

Beliebteste Tags

verständnis alternativlösung klausur kellerautomat endlicher-automat grammatik regulärer-ausdruck turingmaschine pumpinglemma tipp zahlendarstellung cmos bonusklausur klausurrelevant komplexität schaltwerk binary-decision-diagram deterministisch assembler schaltnetz minimierung sprachen nichtdeterministisch huffman chomsky-normalform fehler-in-aufgabe anwesenheitsübung rechtslinear heimübung flip-flop huffman-kodierung cocke-younger-kasami-algorithmus kontextsensitive-grammatik kontextfreie-grammatik fehlererkennbarkeit hauptklausur vorlesungsfolien polynomialzeitreduktion kontextfreie-sprache faq gleitkommazahl fehlerkorrigierbarkeit rechtslineare-grammatik dateiorganisation cache darstellung-klausur nachklausur xwizard adressierungsarten mealy lambda endliche-automaten konjunktive-normalform pipelining zustände saalübung leeres-wort moore ohne-lösungen betriebssystem speicherorganisation monotone-grammatik 2-komplement hammingzahl lösungsweg fehler pumping-lemma-für-kontextfreie-sprachen pumping-lemma reguläre-sprache monoton kodierung berechenbarkeit klausureinsicht disjunktive-normalform abzählbarkeit info-ii bussysteme rechnerarchitektur entscheidbarkeit komplexitätsklassen chomsky-klassen ableitungsbaum vorlesungsaufzeichnung round-robin aufzählbarkeit minimierung-endlicher-automaten von-neumann-rechner binärzahl entscheidbar programmiersprachen stern-symbol automaten schaltnetze-und-schaltwerke nukit-fragen bewertung zugriffsarten umformung adressierung mengen binär-subtrahieren

Kategorien

0 Pluspunkte 1 Minuspunkt
25 Aufrufe
Hallo,
Kurze allgemeine Frage zur a):
Kann ich statt z.B. (A+...+Z+0*)(A+...+Z+0*) auch einfach (A+...+Z+0*)^2 schreiben oder setzt dies voraus, dass ich 2 mal dasselbe Zeichen wählen muss?

Danke und liebe Grüße :)
in HU-2-2 von uafjv uafjv Tutor(in) (168k Punkte)  

1 Eine Antwort

0 Pluspunkte 0 Minuspunkte
 
Beste Antwort

Hallo,

"^2" ist nicht definiert in der Sprache der regulären Ausdrücke, deswegen dürfen Sie es (zunächst) nicht benutzen.

Wenn Sie es definieren und das korrekt machen, dann können Sie es auch verwenden.

Sie müssten also etwas schreiben, wie:

Für ein Alphabet \( X \), das alle Elemente enthält, die zu den betrachteten regulären Ausdrücken gehören [also die leere Menge, die Zeichen des zu den regulären Ausdrücken gehörenden Alphabets \( E \) UND die syntaktischen Symbole \( +,*,(,),] \) und ein Wort \( x \in X^{\star} \) sei definiert:

\( (x)^2 =_{def} xx \)

Auf diese Weise können Sie einfach auf syntaktischer Ebene den Potenzoperator definieren und müssen sich keine Sorgen machen, dass bei der Auswertung etwas schiefläuft (etwa beide Male dasselbe Symbol dasteht). Sie haben ja nur einen String kopiert, also bspw.

\( ((a+b)^\star)^2 = (a+b)^\star(a+b)^\star \)

und dadurch einen neuen regulären Ausdruck erstellt, bei dessen Auswertung die beiden Kopien separat behandelt werden. Auf diese Weise dürfen Sie, wenn Sie es korrekt machen, alle möglichen Abkürzungen definieren, wenn Sie wollen (beliebt ist auch der "^+"-Operator: \( (x^+) =_{def} xx^{\star} \). (Allerdings verbraucht man damit oft mehr Zeit als man später durch die Abkürzung einspart.)

Viele Grüße

Lukas König

von uafjv uafjv Tutor(in) (168k Punkte)  
...