Lingwistyka Matematyczna

Slides:



Advertisements
Podobne prezentacje
Lingwistyka Matematyczna
Advertisements

Lingwistyka Matematyczna
Lingwistyka Matematyczna
Algorytmy sortowania i porządkowania
Opracowała: Maria Pastusiak
S – student, P – przedmiot, W – wykładowca
Wykład 06 Metody Analizy Programów System Hoare
Analiza Składniowa Wstępująca
Technologie XML Mgr inż. Michał Jaros Technologie XML wykład 1.
Technologie XML Mgr inż. Michał Jaros Technologie XML wykład 3.
Generator analizatorów składniowych
Metoda pierwszeństwa operatorów
Liczby Pierwsze - algorytmy
ALGEBRA ZBIORÓW.
WYKŁAD 5. Skojarzenia – ciąg dalszy
WYKŁAD 4. Skojarzenia Skojarzenie w grafie G to niezależny zbiór krawędzi (rozłączne, bez wspólnych konców). Skojarzenie M w G traktujemy jak podgraf.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 8: Wykorzystanie procedur i funkcji © Jan Kaczmarek.
WYKŁAD 5. Skojarzenia – ciąg dalszy
WYKŁAD 4. Skojarzenia Skojarzenie w grafie G to niezależny zbiór krawędzi (rozłączne, bez wspólnych konców). Skojarzenie M w G traktujemy jak podgraf G.
Języki formalne i gramatyki
Materiały pomocnicze do wykładu
Paweł Kupis Jacek Mańdziuk
Analiza matematyczna - Ciągi liczbowe wykład I
Dr Anna Kwiatkowska Instytut Informatyki
Zapis informacji Dr Anna Kwiatkowska.
Liczby zespolone z = a + bi.
Programowanie w Internecie 2 Ćwiczenie 4 – Transformacja danych Prowadzący: Rajmund Pączkowski.
Zależności funkcyjne.
Podstawy programowania
Podstawy układów logicznych
ANALIZA LEKSYKALNA. Zadaniem analizatora leksykalnego jest przetwarzanie danych pochodzących ze strumienia wejściowego a także rozpoznawanie ciągów znaków.
ANALIZA METODĄ WSTĘPUJĄCĄ
Wprowadzenie do edytorów tekstu.
IV OTWARTE MISTRZOSTWA OPOLA W PROGRAMOWANIU ZESPOŁOWYM
Gramatyki Lindenmayera
I. Informacje podstawowe
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
II Zadanie programowania liniowego PL
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
Języki i automaty część 5.
Modele obliczeń i granice obliczalności Copyright, 1999 © Jerzy R. Nawrocki Wprowadzenie.
Rodzaje i podstawowe własności trójkątów i czworokątów
ITERACJA - powtórzenie
Jak tworzyć algorytmy.? Sposób krok po kroku..
Projekt AS KOMPETENCJI jest współfinansowany przez Unię Europejską w ramach środków Europejskiego Funduszu Społecznego Program Operacyjny Kapitał Ludzki.
Modelowanie i Identyfikacja 2011/2012 Metoda propagacji wstecznej Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 1 Warstwowe.
ZBIORY I DZIAŁANIA NA ZBIORACH
Translatory Copyright, 2006 © Jerzy R. Nawrocki Wprowadzenie do informatyki Wykład 11.
Gramatyki i translatory
Instrukcje iteracyjne
Gramatyki Lindenmayera
Znaki specjalne Co i jak + brak przykładów.  Aby wstawić symbol lub znak specjalny należy na karcie Wstawianie w grupie Symbole kliknąć na przycisk Symbol.
Języki formalne i gramatyki Copyright, 2005 © Jerzy R. Nawrocki Teoretyczne podstawy.
Języki formalne Copyright, 2006 © Jerzy R. Nawrocki Wprowadzenie do informatyki Wykład.
ANALIZA SKŁADNIOWA.
ANALIZA METODĄ WSTĘPUJĄCĄ. ANALIZA WSTĘPUJĄCA Dla danej gramatyki G oraz S=>* , to wówczas:  Jeśli  zawiera tylko terminale, to  nazywamy zdaniem;
Rozwiązanie zagadki nr 2
Y A C C Generator analizatorów składniowych. GENERATOR YACC Zadaniem generatora YACC jest wygenerowanie kodu źródłowego analizatora składniowego (domyślnie)
Systemy wspomagające dowodzenie twierdzeń
Wstęp do programowania Wykład 9
Gramatyki Lindenmayera Powstanie Deterministyczny L-system.
ALGORYTMY I STRUKTURY DANYCH
Metody Badań Operacyjnych Michał Suchanek Katedra Ekonomiki i Funkcjonowania Przedsiębiorstw Transportowych.
Systemy liczbowe.
Metody matematyczne w inżynierii chemicznej
Przetwarzanie języka Wprowadzenie do informatyki Jerzy Nawrocki
Mnożenie sum algebraicznych
Liczby pierwsze: szukanie, rozmieszczenie, zastosowanie, ciekawostki. Liczby pierwsze: szukanie, rozmieszczenie, zastosowanie, ciekawostki. Kinga Cichoń.
Zrozumieć, przeanalizować i rozwiązać
Grazyna Mirkowska Matematyka Dyskretna PJWSTK 2001
Zapis prezentacji:

Lingwistyka Matematyczna wykład 3

Agenda Wyprowadzanie zdań Analiza zdań Gramatyki klasy LL(1) Podsumowanie Q&A 2008-03-30 Mgr inż. Michał Jaros

W gramatyce Chomsky’ego: Matematyczna definicja języka; Wyprowadzanie zdań W gramatyce Chomsky’ego: Matematyczna definicja języka; Wyprowadzanie ciągów symboli; Bezpośrednie wyprowadzanie ciągów symboli; 2008-03-30 Mgr inż. Michał Jaros

Przykładowa gramatyka: Wyprowadzanie zdań Praktyka Przykładowa gramatyka: S ::= A B A ::= a | b B ::= c | d Symbol początkowy: S Symbole pomocnicze: N = {S, A, B} Symbole końcowe (słownik): T = {a, b, c, d} 2008-03-30 Mgr inż. Michał Jaros

Wyprowadzanie zdań Gramatyka: Zdania z gramatyki: Wyprowadzanie zdań S ::= A B A ::= a | b B ::= c | d Zdania z gramatyki: ac ad bc bd Wyprowadzanie zdań S → AB → aB → ac S → AB → aB → ad S → AB → bB → bc S → AB → bB → bd 2008-03-30 Mgr inż. Michał Jaros

Wyprowadzenie zdania: Ciąg wyprowadzeń: Wyprowadzanie zdań Wyprowadzenie zdania: dc Ciąg wyprowadzeń: S → AB → Błąd ! Wyprowadzanie zdań – sprawdzanie poprawności. S ::= A B A ::= a | b B ::= c | d 2008-03-30 Mgr inż. Michał Jaros

Analiza polega na rozbiorze struktur zdaniowych i zdań; Analiza zdań Analiza polega na rozbiorze struktur zdaniowych i zdań; Celem rozbioru zdania jest sprawdzenie poprawności zdania; Zadaniem teorii analizy składniowej jest opracowywanie algorytmów rozbioru języka; 2008-03-30 Mgr inż. Michał Jaros

Rozbiór zstępujący (ang. Top-down); Analiza zdań Rozbiór zdania Rozbiór zstępujący (ang. Top-down); Rozbiór wstępujący (ang. Bottom-up); 2008-03-30 Mgr inż. Michał Jaros

Rozbiór zstępujący (Top-down): Wyjście z symbolu początkowego; Analiza zdań Rozbiór zstępujący (Top-down): Wyjście z symbolu początkowego; Dopasowywanie do symbolu z lewej strony zdania; Rozbiór z powrotami lub bez powrotów; 2008-03-30 Mgr inż. Michał Jaros

Rozbiór wstępujący (Bottom-up) (Shift-Reduce): Analiza zdań Rozbiór wstępujący (Bottom-up) (Shift-Reduce): Wychodzimy ze zdania i próbujemy otrzymać symbol początkowy; Odnajdywanie i zastępowanie najbardziej podstawowych elementów w zdaniu; 2008-03-30 Mgr inż. Michał Jaros

Analiza zdań – Top-down Gramatyka: S ::= A B A ::= a | b B ::= c | d Czy zdanie ac należy do języka ? Rozbiór S A B a B B c -- a c 2008-03-30 Mgr inż. Michał Jaros

Zdania należące do gramatyki: Rekurencja Rekurencja (rekursja) – symbol pomocniczy powtarza się z lewej i prawej strony produkcji S::=xA A::=z|yA Zdania należące do gramatyki: xz xyz xyyz xyyyz … 2008-03-30 Mgr inż. Michał Jaros

Gramatyka dla liczb naturalnych: Rekurencja Gramatyka dla liczb naturalnych: S::=N N::=C|NC C::=0|1|2|3|4|5|6|7|8|9 Przykładowe zdanie: S → N → C → 5 S → N → NC → 15 S → N → NC → NCC → NCCC → CCCC → 1542 2008-03-30 Mgr inż. Michał Jaros

Analiza zdań – Top-down Gramatyka: S::=N N::=C|NC C::=0|1|2|3|4|5|6|7|8|9 Czy zdanie 15 należy do języka ? Rozbiór S N C 1 -- 1 5 5 Błąd ? 2008-03-30 Mgr inż. Michał Jaros

Podzbiór gramatyk bezkontekstowych; Gramatyki klasy LL(1) Podzbiór gramatyk bezkontekstowych; Rozbieralne analizatorami zstępującymi; Dwie reguły gramatyczne dla gramatyk klasy LL(1) 2008-03-30 Mgr inż. Michał Jaros

Gramatyki klasy LL(1) – Reguła 1 Dla zadanej gramatyki zawierającej produkcję postaci zbiory symboli pierwszych które mogą być wyprowadzone z A muszą być rozłączne 2008-03-30 Mgr inż. Michał Jaros

Gramatyki klasy LL(1) – Reguła 2 Dla każdego symbolu A  N, z którego można wyprowadzić pusty ciąg symboli zbiór jego pierwszych symboli musi być rozłączny ze zbiorem symboli, które mogą następować po dowolnym ciągu wyprowadzonym z A, tzn. 2008-03-30 Mgr inż. Michał Jaros

Zbiór symboli pierwszych Gramatyki klasy LL(1) Zbiór symboli pierwszych pierw(ξ) – zbiór wszystkich symboli końcowych, które mogą wystąpić na pierwszej pozycji w zdaniach wyprowadzonych z ξ. Pierwszy symbol argumentu to symbol końcowy: pierw(aξ) = {a} Pierwszy symbol argumentu to symbol pomocniczy: A ::= α1 | α2 | α3 | … | αn pierw(Aξ) = pierw(α1)  pierw(α2)  pierw(α3)  …  pierw(αn) 2008-03-30 Mgr inż. Michał Jaros

Gramatyki klasy LL(1) Zbiór symboli następnych nast(A) – dla każdej produkcji postaci X ::= ξAη do zbioru nast(A) dołączamy zbiór pierw(η). Jeżeli z η można wyprowadzić pusty ciąg symboli to do nast(A) musimy dołączyć również nast(X). 2008-03-30 Mgr inż. Michał Jaros

Gramatyki klasy LL(1) Lewostronna faktoryzacja Produkcję postaci: A ::= αξ1 | αξ2 | αξ3 | … | αξn | β1 | β2 | β3 | … | βn Należy zastąpić produkcjami: A ::= αA’ | β1 | β2 | β3 | … | βn A’ ::= ξ1 | ξ2 | ξ3 | … | ξn 2008-03-30 Mgr inż. Michał Jaros

Gramatyki klasy LL(1) Przed poprawieniem Po poprawieniu S::=A+A|A-A|A|x A::=y|z Po poprawieniu S ::=AS’|x S’::=+A|-A|ε A ::=y|z 2008-03-30 Mgr inż. Michał Jaros

Gramatyki klasy LL(1) Eliminacja lewostronnej rekurencji Produkcję postaci: A ::= Aα1 | Aα2 | Aα3 | … | Aαn | β1 | β2 | β3 | … | βn Należy zastąpić produkcjami: A ::= β1A’ | β2A’ | β3A’ | … | βnA’ A’ ::= α1A’ | α2A’ | α3A’ | … | αnA’ | ε 2008-03-30 Mgr inż. Michał Jaros

Gramatyki klasy LL(1) Przed poprawieniem Po poprawieniu S::=N N::=C|NC 2008-03-30 Mgr inż. Michał Jaros

Podsumowanie Wyprowadzanie zdań Analiza zdań Gramatyki klasy LL(1) 2008-03-30 Mgr inż. Michał Jaros

Q&A 2008-03-30 Mgr inż. Michał Jaros

KONIEC 2008-03-30 Mgr inż. Michał Jaros