Advertisement

Grundlagen der Spezifikation eines lexikalisch verteilten Text-Parsers mit einer Aktorensprache

Chapter
  • 19 Downloads
Part of the Informatik-Fachberichte book series (INFORMATIK, volume 243)

Zusammenfassung

In diesem Kapitel wird die Spezifikationssprache für verteilte Systeme, auf der die Beschreibung des Text-Parsers in Kap.4 beruht, motiviert und eingeführt. Dazu werden in Kap.2.1 zunächst Anforderungen betrachtet, die bei der Beschreibung verteilter Systeme zu beachten sind, und entsprechend dazu die Wahl des Aktorenmodells als Repräsentationsformat für lexikalisch verteilte Grammatiken begründet. Die Charakteristiken des Aktorenmodells als einer der auch formal am weitesten ausformulierten Entwürfe zur Beschreibung verteilter und durch Botschaftsaustausch kommunizierender Systeme werden in Kap.2.2 ausgeführt. Schließlich enthält Kap.2.3 die wesentlichen Konstrukte einer objektorientierten Spezifikationssprache auf der Basis des Aktorenmodells, die die Grundlage der Spezifikation des lexikalisch verteilten Text-Parsers in Kap.4 bildet.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Literature

  1. 129.
    Charakteristisch dafür sind die Darstellungen in RIESBECK/SCHANK 1978 (für den ELI-Parser) oder Small/Rieger 1982 (für den Wortexperten-Parser WEP).Google Scholar
  2. 130.
    Etwa in RIESBECK/SCHANK 1978. S.264 (über die besonderen Kontrollstrukturaspekte des Produktionssystems ELI) oder Small 1980, S.21 bzw. S.56 (über die Analogien von Wortexperten zu Aktoren).Google Scholar
  3. 131.
    Chomsky 1965a [1956].Google Scholar
  4. 132.
    Woods 1970. Das Repräsentationsformat von ATNs ist nichtsdestoweniger formal weitaus unterbestimmter als etwa das von Produktionssystemen. Einen vielversprechenden Ansatz für eine auch formal hochstehende algebraische Beschreibung von ATNs bieten etwa Graph-Grammatiken (vgl. Ehrig 1979).Google Scholar
  5. 133.
    Montague 1974a, 1974b.Google Scholar
  6. 134.
    Adriaens 1986b, S.217–218 weist zurecht darauf hin, daß empirische Restriktionen (etwa die Linearität der Sprache) eine ausgeprägte theoretische Kontrolle des Wechsels sequentieller und paralleler Verarbeitungsschritte beim Sprachverstehen nahelegen und inhärente Abhängigkeiten zwischen einzelnen morphologischen, syntaktischen und semantischen Teilprozessen bestehen. Gleichartige Überlegungen stellt De Smedt 1990 für die unterschiedlichen Formierungsphasen der Spachgenerierung an. Diese Aspekte schlagen sich im übrigen auch in der in Kap.4 beschriebenen Grammatik nieder.Google Scholar
  7. 135.
    Hewitt 1977, YONEZAWA/HEWITT 1976 und 1977, HEWITT/BAKER 1978, HEWITT/ATTARDI/LIEBERMAN 1979, Agha 1985. Eine aktuelle (jedoch sehr komprimierte) Zusammenfassung der wesentlichen Merkmale der Aktorentheorie gibt Agha 1986.Google Scholar
  8. 136.
    HEWTTT/DEJONG 1983.Google Scholar
  9. 137.
    Besonders im Bereich der Textverstehenssysteme gibt es eine Reihe von Anwendungen des Aktorenkonzepts: Eine mit einem Frame-Repräsentationsmodell verknüpfte Form der Textrepräsentation in einem Verstehenssystem für einfache Geschichten beschreiben Ogawa/Nishi/Tanaka 1980, den Schwerpunkt auf die Modellierung der Kontrollstruktur eines Information-Retrieval-Systems zur Analyse von Patenttexten mit einem objektorientiert spezifizierten syntaktischen Parser (Phillips 1984) legen Phillips/Hendler 1982. Die message passing-Metapher liegt auch dem von Marino 1988 beschriebenen SAIL-System für die Kommunikation komplexer Merkmalsbündel zur Analyse von long-distance dependencies zugrunde, während McCalla 1983 für ein Dialogsystem eine Aktorenimplementierung der Wissensrepräsentationsebene (Frames) vorstellt. Ein mit “Wortaktoren” bei der linguistischen Analyse operierendes Frage-Antwort-System wird von Fujita/Inoue/Imura 1981 beschrieben. Weniger auf message passing-Kommunikationskonzepten als auf dem verteilten Problemlösungsansatz der functionally accurate, cooperative (FA/C) systems (Lesser/Corkill 1981) beruht der verteilte Parser eines von COSTANTINI et al. 1987 beschriebenen Text-verstehenssystems für technische Texte. Neben der mehr konzeptionellen Studie von Steels 1978 zu einem aktorenbasierten Parser dokumentieren UEHARA et al. 1984 die weitestgehende Umsetzung des Aktorenkonzepts in einen Parserkern anhand eines auf einer Lexical Functional Grammar beruhenden “integrierten” Parsers (s. Kap. 1.2.1). Die Darstellung des in Miyoshi/Furukawa 1985 beschriebenen objektorientierten Parsers orientiert sich weniger an der Kontrollstruktur des message passing als an den Klassenabstraktions- und Vererbungsmechanismen des objektorientierten Paradigmas. Ein auf objektorientierten Programmierprinzipien beruhendes paralleles Sprachgenerierungssystem beschreiben Finkler/Neumann 1989 im Rahmen einer im PATR-II-Formalismus spezifizierten Dependenzgramma-tik.Google Scholar
  10. 138.
    HEWITT/ATTARDI/LIEBERMAN 1979, S.317–318.Google Scholar
  11. 139.
    Hewitt 1977, S. 340–347, 350; Yonezawa 1977, S.49–50. Diese Bemerkung bezieht sich auf die Metaebene der Beschreibungssprachen, nicht auf die Objektebene, also etwa die empirischen und funktionalen Rahmenbedingungen, die in die Spezifikation einer partiellen, statt vollständigen Textgrammatik (vgl. Kap. 1.5) eingehen.Google Scholar
  12. 140.
    Pereira/Warren 1980.Google Scholar
  13. 141.
    Parser ist dann z.B. ein entsprechendes PROLOG-Programm, in dem die Grammatik implementiert ist (vgl. etwa Gust 1983).Google Scholar
  14. 142.
    Gängiger Standard sind Pseudo-Code-Beschreibungen (s.u.) zusammen mit funktionalen Spezifikationselementen (vgl. etwa Aho/Ullman 1972).Google Scholar
  15. 143.
    Die folgende Gliederung entspricht noch einem eher konservativen Verständnis, da auch im Programmiersprachenbereich eine starke Tendenz zur Abstraktion (etwa in Prolog oder in objektorientierten Sprachen, wie Smalltalk) besteht.Google Scholar
  16. 144.
    Etwa auf der Basis einer denotationalen Beschreibung, wie sie Shieber 1984 für den PATR-II-Grammatik-Formalismus entwickelt hat.Google Scholar
  17. 145.
    Small selbst hat die Aktoren-Metapher für Wortexpertensysteme und ihre Interaktionsmuster gebraucht (Small 1980, S.21, 56), ohne sie aber formal umzusetzen. Ein ähnlich organisiertes verteiltes System zum Sprachverstehen beschreibt Steels 1978 in groben konzeptionellen Umrissen.Google Scholar
  18. 146.
    Damit wird ein uniformer Formalismus für das Sprachmodell (die Textgrammatik) und die Spezifikation des Text-Parsers verwendet (vgl. Steels 1978, S.3–4 zur Begründung dieser Anforderung an die Modellierung natürlicher Sprache im Kontext des automatischen Sprachverstehens).Google Scholar
  19. 147.
    Hewitt/DeJong 1983, S. 164–65.Google Scholar
  20. 149.
    Neben der häufig nur ad hoc ausgeführten (syntaktischen) Erweiterung konventioneller Programmiersprachen durch Parallelverarbeitungskonstrukte erscheinen zwei theoretische Entwicklungen besonders problematisch, den methodologischen Problemen bei der Modellierung verteilter Systeme gerecht zu werden: die Abbildung paralleler Berechnungen auf nicht-deterministische serielle (und damit verknüpfte Anbindung an die gut entwickelte formale Semantik serieller Programmiersprachen) sowie die Betrachtung globaler Systemzustände (und folglich globaler Auswirkungen jeder lokalen Zustandsänderung) in parallelen Systemen (zur Diskussion der Problematik dieser Ansätze, s. Hewitt/Baker 1977, S.987–988).Google Scholar
  21. 150.
    Yonezawa/Hewttt 1977, S.370.Google Scholar
  22. 151.
    Eine Diskussion alternativer Ansätze zur formalen Beschreibung der Semantik paralleler Prozesse (der axiomatische Ansatz von Floyd und Hoare, Milners LCF-Modell auf der Basis der denotationalen Semantikkonzeption von Scott und Strachey, das auf Transitionsnetzen beruhende Konzept der Petrinetze) und Spezifikation entsprechender Systeme führt Greif 1975, S.8–16. Eine insbesondere um die Auseinandersetzung mit Milners Calculus of Communicating Systems (CCS) aktualisierte Darstellung gibt AGHA 1985, Kap.2 und Appendix-A.Google Scholar
  23. 152.
    vgl. etwa die in Hewitt 1977 beschriebene Realisierung des Aktorenmodells in PLASMA.Google Scholar
  24. 153.
    Hewitt 1977, S.325.Google Scholar
  25. 154.
    Hewitt 1977, S.327–329.Google Scholar
  26. 155.
    Eine (bis auf wenige Details, wie die Kreierung von Aktoren, umfassende) vereinheitlichte Darstellung des aktuellen Standes dieser Theorie gibt Clinger 1981, der eine Fixpunkt-Semantik für Aktoren auf der Grundlage einer speziellen Form von Verbänden (power domains) beschreibt. Deren Elemente sind Mengen von erweiterten Ereignis-Diagrammen (Beschreibungen des Ablaufs von Berechnungen in Aktorensystemen), die zuerst von Greif 1975 entwickelt wurden. Gegen diese Form der denotationalen Beschreibung, die bewußt von Operationellen Details abstrahiert, argumentiert Agha 1985 (S. 104–105) damit, daß sie die für parallele Systeme charakteristische Evolution einzelner Prozesse nicht erfasse und setzt ihr eine mehr auf operationale Aspekte ausgelegte denotationale Beschreibung der Aktorensemantik (ebd., Kap.5) entgegen, die das Verhalten von Aktoren durch Übergangsrelationen zwischen einzelnen Zustanden von Aktorensystemen charakterisiert.Google Scholar
  27. 156.
    vgl. etwa zur Axiomatisierung des Lese/Schreibzugriifs auf Zellen oder zur Synchronisierung konkurrenter Ereignisse Greif 1975, Kap.3+4 bzw. in einer komprimierteren Darstellung Greif/Hewttt 1975, S.69–72. Eine Zusammenstellung von Aktorengesetzen geben Hewitt/ Baker 1978 (aktualisiert und erweitert in Baker 1978, Kap.2).Google Scholar
  28. 157.
    Bezüge zwischen Ereignisdiagrammen und Plasma-Implementationen (s.u.) für einfache Kontrollstrukturmuster, wie Rekursion und Iteration, werden ausführlich in Hewitt 1977 diskutiert.Google Scholar
  29. 158.
    Eine Einführung in Syntax und Semantik von Plasma enthält Hewitt 1977, S.351–361.Google Scholar
  30. 159.
    Eine Überblicksdarstellung über die Philosophie dieser Sprache (Version ACT1) enthält Lieberman 1981b, detaillierter ist die Beschreibung zweier grundlegender Sprachkonstrukte (futures und serializers), auf denen die Parallelität der Berechnungen in ACT1 beruht, in Lieberman 1981a (beide Arbeiten sind — mit geringen Auslassungen — in Lieberman 1987 zusammengefaßt). Den momentanen Schlußpunkt einer Folge von Implementationen bildet ACT3 (Agha/Hewitt 1985), die die wesentlichen Vorteile objektorientierter Programmiersprachen mit denen funktionaler und applikativer Sprachen zu verbinden sucht.Google Scholar
  31. 160.
    Der Schwerpunkt dieser Implementation liegt in der Erweiterung des message passing-Typen-repertoires; vgl. Yonezawa et al. 1987.Google Scholar
  32. 161.
    Spezifikationssprachen für Aktorensysteme sind sowohl anhand von theoretischen Problemstellungen (Axiomatisierung von Zeitordnungen in kommunizierenden parallelen Prozessen (Greif 1975)) als auch einer Reihe von praktischen Anwendungsproblemen, etwa der Modellierung abstrakter Operationen (Einfügen, Löschen) auf dem Datentyp Schlange (HEWITT/SMITH 1975), eines Flugbuchungssystems (Yonezawa/Hewitt 1977), der Handlungsabläufe in einem Postamt (Yonezawa 1977, Kap.8) oder eines Hardcopy-Servers (HEWITT/ATTARDI/LIEBERMAN 1979) exemplifiziert worden.Google Scholar
  33. 162.
    Ihre auf Ereignisdiagrammen beruhende verhaltensorientierte Semantik ist — wie Clinger 1981 (insbesondere in Kap.4) zeigt — kompatibel mit der von ihm gegebenen denotationalen semantischen Spezifikation der mathematischen Aktorentheorie.Google Scholar
  34. 163.
    Denn Spezifikation und Implementation sind im gleichen Formalismus beschrieben, so daß keine eigene Spezifikationssprache mit anderer Semantik als die der Implementationssprache entworfen werden muß (HEWITT/SMITH 1975, S.43).Google Scholar
  35. 164.
    Wie sie für den PATR-II-Formalismus in Shieber 1984 explizit und in PEREIRA/SHIEBER 1984 am Beispiel einer denotationalen semantischen Spezifikation von PATR-II formuliert sind.Google Scholar
  36. 165.
    In diesem Punkt weicht die Aufzählung der Eigenschaften grammatikalischer Beschreibungssprachen von der in Shieber 1984 scheinbar ab — die dort geforderte Eigenschaft der Deklarativität entspricht aber der Spezifikation von Grammatiken und wird auch durch den textgrammatischen Kern der Spezifikation in Kap.4 abgedeckt. Sie ergänzt diesen aber noch durch eine formal saubere Beschreibung der prozeduralen Charakteristiken des verteilten Text-Parsers.Google Scholar
  37. 166.
    Dieser aktorensprachliche Ansatz ist zu unterscheiden von Aktorenimplementationen objektorientierter Wissensrepräsentationssprachen, wie etwa der von OGAWA/NANBA/TANAKA 1979 oder McCalla 1983 beschriebenen Framesprachen oder der hybriden Wissensrepräsentationssprache OMEGA (Attardi 1987).Google Scholar
  38. 167.
    Die bislang vorgestellten Spezifikationssprachen für Aktorensysteme sind nicht einheitlich formalisiert. Einen stark an die PLASMA-Syntax angelehnten Entwurf formulieren HEWITT/SMITH 1975 und Hewitt 1977. Einen höheren Abstraktionsgrad besitzt eine in HEWITT/ATTARDI/LIEBERMAN 1979 auf informalem Niveau eingeführte “aktoren”orientierte (s. u.) Spezifikationssprache. Die formal präzisesten Beschreibungen dieses Sprachtyps sind die Definitionen der Sprachkerne von SAL (auf der Basis einer Algol-ähnlichen Notation) und Act (unter Verwendung einer LISP-ähnlichen Syntax) in AGHA 1985, Kap.3.3 bzw. nur für SAL in AGHA 1984, Kap.4 (insbes. Kap.4.1). Beide Sprachen besitzen jedoch ein zu niedriges Abstraktionsniveau, um mit ihnen ein so komplexes verteiltes System, wie den in Kap.4 beschriebenen Text-Parser zu spezifizieren und scheiden aus diesem Grunde aus der Betrachtung als Spezifikationsmedium aus. Die hier gewählte Form einer “ereignis”orientierten Spezifikationssprache beruht auf der Beschreibung in Yonezawa 1977 und den Vorarbeiten bzw. Auskopplungen in Yonezawa/Hewitt 1976 bzw. 1977.Google Scholar
  39. 168.
    Vgl etwa die relativ detaillierte Spezifikation eines Hardcopy-Servers in Hewitt/Attardi/Lieberman 1979.Google Scholar
  40. 169.
    Vgl. etwa die stark abstrahierte Beschreibung eines Flugbuchungssystems in Yonezawa/Hewitt 1977 sowie die Modellierung der Verhaltensformen in einem Postamt in Yonezawa 1977, Kap.8.Google Scholar
  41. 170.
    Appendix-1 verdeutlicht den Unterschied zwischen beiden Ansätzen. Dort werden alle für einen bestimmten Aktor relevanten Ereignisse in Form eines Aktoren-Kontrakts (s. AS 2–4) zu-sammengefaßt und damit die ereignis- (Kap. 4) mit einer aktorenorientierten Spezifikation (Appendix-1) noch einmal technisch kontrastiert.Google Scholar
  42. 171.
    HEWITT/SMITH 1975 führen für diese abstrakte Form der Spezifikation den Begriff des Kontrakts ein, der als eine Form von Schnittstelle zwischen den Anforderungen an das Programm (hier: Spezifikation — “was” zu tun ist) aus der Sicht des Programmierers (hier: Grammatik-Designers) und der eigentlichen Implementation (“wie” etwas zu tun ist) fungiert (ebd., S.27–28, 43). Yonezawa 1977 (S.70–72) konkretisiert dieses Konzept in der Weise, in der es auch in Appendix-1 dieser Arbeit benutzt wird.Google Scholar
  43. 172.
    Hewitt/Baker 1977, S.991.Google Scholar
  44. 173.
    Exemplarisch ist die Verschärfung einer Spezifikation am Beispiel der Fakultätsberechnung in Hewitt 1977, S.332–333, 336–337 dargestellt.Google Scholar
  45. 174.
    Vgl. zur Festlegung der Spezifikationssprache Yonezawa 1977, S.66–88 (für serielle Berechnungen) und S. 131–145 (für parallele Berechnungen). Die Darstellung der Datenstrukturen beruht auf dem Beschreibungskonstrukt der conceptual representation, S. 17–35.Google Scholar
  46. 175.
    Diese Setzung ist ein Stück Systemphilosophie, die z.B. bei Lieberman 1981b, Kap.1.4 methodologisch motiviert wird. Auf die damit verbundene Gefahr der Zirkularität von Aktorenspezifikationen weist Raulefs 1980, S.17 hin. Eine Möglichkeit, ihr zu entgehen, besteht in der Postulierung “primitiver” Aktoren (vgl. etwa AGHA 1985, Kap.4.4), die seiltet nicht mehr einen Botschaftsaustausch benötigen, um zu einem Berechnungsergebnis zu kommen. Beispiele für solche primitiven Aktoren sind die ganzen Zahlen Z und primitive Operationen (Addition usw.) auf ihnen.Google Scholar
  47. 177.
    In dieser Beschreibung wird implizit bereits angenommen, daß Aktoren, deren Daten sich ändern können, vor unkontrollierten Formen des Zugriffs auf diese Daten geschützt sind; vgl. zu einem entsprechenden Aktorenkonstrukt HEWITT/ATTARDI/LIEBERMAN 1979.Google Scholar
  48. 178.
    Zur Darstellung vgl. Yonezawa 1977, S.44–46. Das syntaktische Muster für den Aufbau von Botschaften entspricht weitgehend den in AS 2–1 (s.u.) gegebenen Spezifikationen. Zur Forma-lisierung der Konstrukte “Frage” und “Antwort” als eine Klasse von zielgerichteten (bzw. genesteten) Aktivitäten im Aktorenmodell s. Hewitt/Baker 1977, S.991.Google Scholar
  49. 183.
    Hewitt/Baker 1978, S.369–370.Google Scholar
  50. 184.
    Hewitt/Baker 1978, S.368–369.Google Scholar
  51. 190.
    Sonst ist die Semantik des case-Konstrukts nicht weiter spezifiziert. Es wird aber unterstellt, daß die Bedingungen in den einzelnen Fällen tatsächlich alternativ formuliert sind, d.h. keine zwei cases zugleich zutreffen können (s.a. Yonezawa 1977, S.67).Google Scholar
  52. 192.
    Yonezawa 1977, S.60–65.Google Scholar
  53. 195.
    Yonezawa 1977, S.24–25.Google Scholar
  54. 196.
    Dieser Teil der formalen Spezifikation von Aktorensystemen wird ausführlich motiviert, illustriert und detailliert dargestellt in Yonezawa 1977, S.17–35. Im übrigen wird nur eine Teilmenge der in der BNF-Syntax (ebd., S.26) spezifizierten Beschreibungssprache aktualisiert. Die Vorteile dieser Beschreibungsform für Datenstrukturen gegenüber konkurrierenden Ansätzen (etwa algebraisch-axiomatischen Techniken) diskutiert Yonezawa auf S.36–41.Google Scholar
  55. 199.
    Yonezawa/Hewitt 1976, S.12–14.Google Scholar
  56. 200.
    Hewitt/Baker 1978, S. 369.Google Scholar
  57. 201.
    Hewitt/Baker 1978, S. 371–372.Google Scholar
  58. 202.
    Hewitt/Baker 1978, S. 372–373.Google Scholar
  59. 203.
    Dabei handelt es sich um Aktoren, die einen internen Zustand besitzen, den sie ändern und damit eine Zustandsveränderung (oder einen Seiteneffekt) bewirken können. Eine typische Fehlerklasse für parallele Berechnungen besteht nun in Zeitfehlern derart, daß ein Prozeß den aktuellen Status des Aktors unter der impliziten Annahme verwertet, daß dieser Zustand unverändert bleibt, ein anderer Prozeß diesen Zustand aber gleichzeitig modifiziert und damit die Zustandsdaten des ersten Prozesses ungültig macht (Lieberman 1981a, S. 10). Seiteneflekt-Aktoren entsprechen z.B. konventionellen Programmvariablen in höheren Programmiersprachen, die einen Wert besitzen, der durch Zuweisungen modifiziert werden kann.Google Scholar
  60. 205.
    Hewitt/Baker 1978, S. 376.Google Scholar
  61. 206.
    Auf die Definition der Fortsetzungsordnung (HEWITT/BAKER 1978, S. 377) als Subordnung der Präzedenzordnung =prec=> kann hier deswegen verzichtet werden, weil die Spezifikation des Text-Parsers kaum auf genesteten, sondern vorwiegend auf primitiven Aktivitäten (HEWITT/BAKER 1978, S. 377) beruht.Google Scholar
  62. 207.
    Exemplarisch demonstriert dies Yonezawa 1977, Kap. 4–8.Google Scholar
  63. 208.
    Neben den in Clinger 1981 entwickelten theoretischen Argumenten gibt es modellimmanente Gründe, die gegen eine solche Lösung sprechen: Ein Aktorensystem kann z.B. deswegen nicht durch eine Funkton, die globale Zustände auf globale Zustände abbildet, adäquat beschrieben werden, weil dieses nicht zu jedem gegebenen Zeitpunkt einen wohldefinierten globalen Zustand besitzt (HEWTTT/DEJONG 1983, S. 164). Darüberhinaus sprechen auch empirische Adäquatheitserwägungen gegen diesen Ansatz, da jede lokale Veränderung im System unnatürlicherweise in einer entsprechenden globalen Zustandsveränderung resultieren müßte, was zu einem nicht beherrschbaren Größenwachstum der Anzahl zu betrachtender globaler Systemzustände führen würde. Analog dazu ergäben sich bei Beweisen von Eigenschaften und der Korrektheit paralleler Programme große Probleme bei der Behandlung der Vielzahl zu betrachtender Fälle (GREIF 1975, S. 14–15; HEWITT/BAKER 1977, S. 987).Google Scholar
  64. 209.
    Dies gilt auch nach Einführung einer globalen Zeitebene in das Aktorenmodell durch Clinger 1981, die nicht mit den unten betrachteten Lokalitätsrestriktionen des message passing interferiert, sondern zur Rechtfertigung und Modifikation der in HEWITT/BAKER 1977, 1978 eingeführten Ordnungsgesetze benötigt wird.Google Scholar
  65. 210.
    Hewitt/Baker 1978. S. 375.Google Scholar
  66. 211.
    Yonezawa 1977, S. 56–58.Google Scholar
  67. 212.
    Yonezawa 1977, S. 77.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1990

Authors and Affiliations

  1. 1.Fakultät für Mathematik und InformatikUniversität PassauPassauDeutschland

Personalised recommendations