Was ist ein Quantor?

Ein Quantor beschreibt einen mathematischen Operator, welcher die Gültigkeit von Aussagen festlegt. Quantoren oder auch Quantifikatoren genannt, werden der sogenannten Prädikatenlogik zugeordnet. Die Prädikatenlogik stellt eine Erweiterung der Aussagenlogik dar. Informell werden Quantifikatoren auch als schriftliche Abkürzungen von gesprochenen Aussagen bezeichnet.

Typen

Die verbreitetsten Typen von Quantoren sind Allquantoren und Existenzquantoren. Andere Typen von Quantoren wie beispielsweise Anzahlquantoren oder eindeutige Existenzquantoren lassen sich auf Allquantoren oder Existenzquantoren zurückführen.

Ein Allquantor kann als Konjunktion, das heißt als eine Verkettung von logischen UND-Verknüpfungen interpretiert werden. Er legt die Gültigkeit einer Aussageform, beispielsweise A(?) fest. ? stellt dabei eine Variable dar. Die Schreibweise ∀? sagt aus „für alle/jedes ? gilt“. Der Allquantor kann dabei als ein auf den Kopf gestellter Buchstabe „A“ angesehen werden. Der Ausdruck ∀? : ?² ≤ 0 bedeutet beispielsweise: „für alle ? gilt, dass ?² ≤ 0 ist“, wobei „für alle“ den Allquantor, ? die Variable und ?² ≤ 0 die Aussageform darstellt.

Ein Existenzquantor kann im Gegenzug zu einem Allquantor als Disjunktion, das heißt als eine Verkettung von logischen ODER-Verknüpfungen angesehen werden. Der Ausdruck ∃? beschreibt „es existiert mindestens ein ?“, für welche die nachgestellte Aussageform gilt. ∃? : ?² ≤ 0 bedeutet im Vergleich zu vorhin: „es gibt mindestens eine Zahl ?, auf welche die Aussageform ?² ≤ 0 zutrifft“, das heißt die Aussageform wahr ist. Das Symbol ∃ kann als horizontal gespiegelter Buchstabe „E“ angesehen werden.

Sowohl bei Allquantoren als auch bei Existenzquantoren muss die Bezugsmenge, auf welche sich der jeweilige Quantifikator bezieht, eindeutig definiert sein. Sofern es sich nicht aus dem Kontext ergibt, muss zur Angabe der Bezugsmenge für Allquantoren etwa der Ausdruck ∀? ∊ M : A(?), für Existenzquantoren der Ausdruck ∃? ∊ M : A(?) definiert werden. Das Elementzeichen ∊ gibt dabei an, dass das Objekt ∀? oder ∃? Element einer Menge M ist.

Was sind Quantoren in regulären Ausdrücken (Regex)?

Reguläre Ausdrücke, kurz Regex, beschreiben Zeichenketten, welche in Programmiersprachen oder in der Suchen-und-Ersetzen-Funktion eingesetzt werden und der Beschreibung dieser Ketten durch bestimmte syntaktischer Regeln dienen. Regex können als allgemeine Notation zur Beschreibung von Textmustern interpretiert werden und werden in der Textanalyse, der Struktur- wie Datenanalytik.

Quantoren bzw. Quantifizierer in regulären Ausdrücken geben dabei die Wahrheitsbedingung für eine Übereinstimmung in der Suche an. Die Quantoren werden dabei in eine gierige sowie eine nicht gierige bzw. träge Version unterteilt. Während eine gierige Version versucht, ein Element so oft wie möglich zu finden, versucht eine träge Version, ein Element so selten wie möglich zu finden. Die folgende Tabelle zeigt die Notation der Standard-Quantifizierer in ihrer gierigen und trägen Version.

Gieriger
Quantifizierer

Träger
Quantifizierer

Beschreibung
**?mit null oder mehr Vorkommen.
++?mit einem oder mehr Vorkommen.
???mit null oder einem Vorkommen.
{n}{n}?Übereinstimmung mit genau n Vorkommen.
{n,}{n,}?Übereinstimmung mit mindestens n Vorkommen.
{n,m}{n,m}?Übereinstimmung mit n bis m Vorkommen.

Neben den beschriebenen Standard-Ausdrücken in Regex existieren unter anderem weitere Sonderformen wie Lookahead und Lookbehind. Damit werden Ausdrücke gesucht, die nur einen (relevanten) Teil des gesuchten Ausdrucks zurückgegeben und zur Weiterverarbeitung vorgesehen ist.

  • Lookahead: Wird zum Beispiel in einem Text jedes „a“ gesucht, auf welches der Buchstabe „b“ folgt, wobei lediglich „a“ als Rückgabe erfolgen soll, kann dies durch Lookahead bewerkstelligt werden.
    Der Syntax „a(?=b)“ sucht den Begriff „ab“ liefert als Ergebnis immer nur „a“ zurück.
  • Lookbehind: Genau umgekehrt verhält es sich bei Lookbehind. Die Benennung als Lookbehind erklärt sich dadurch, dass auch vorangestellte Zeichen in die Suche einfließen.
    Der Syntax für „(? <=a)b“ sucht auch den Begriff „ab“, liefert jedoch immer nur „b“ als Ergebnis zurück.