Program Świgra stanowi komputerową realizację gramatyki przedstawionej przez prof. Marka Świdzińskiego w jego książce „Gramatyka formalna języka polskiego” (GFJP, Warszawa 1992).
Program Świgra został zrealizowany z użyciem opracowanego przeze mnie parsera Birnam. Stanowi on interpreter gramatyk DCG stosujący strategię wstępującą z zapamiętywaniem wyników pośrednich. Zawiera też pewne rozszerzenia specyficzne dla GFJP.
Programy Birnam i Świgra stanowią część wyników mojej pracy doktorskiej p.t. Komputerowa weryfikacja gramatyki Świdzińskiego opracowanej i obronionej w Instytucie Podstaw Informatyki PAN w Warszawie. Inicjatorem i promotorem pracy był Janusz S. Bień, aktualnie z Katedry Lingwistyki Formalnej Uniwersytetu Warszawskiego.
Nie wszystkie pliki składające się na programy Birnam i Świgra zostały udostępnione na tej samej licencji. Warunki licencji można sprawdzić w nagłówkach poszczególnych plików.
Większość plików składających się na te programy zostaje udostępniona na licencji GNU General Public License. Ponieważ jednak obecnie nie ma dostępnego na tej licencji rozsądnej jakości analizatora morfologicznego dla języka polskiego, w drodze wyjątku dopuszcza się łączenie obu programów (używanych łącznie lub osobno) z analizatorem morfologicznym Morfeusz. Autorom ewentualnych modyfikacji programów Birnam i Świgra udziela się prawa do zachowania tego dopuszczenia w wersjach zmienionych lub dystrybucji wersji zmienionych na licencji GPL. (Biorąc pod uwagę brak swobodnego analizatora morfologicznego, zachęcam do zachowywania dopuszczenia w wersjach zmienionych, jednak aby zachować zgodność z GPL, nie wymagam tego).
Pliki umożliwiające skład drzew analizy w LaTeXu zostały udostępnione na licencji LaTeX Project Public License wersja 1.2, ponieważ licencja GPL nie jest zgodna ze standardowymi modułami LaTeXa.
Niektóre pliki pomocnicze zostały dla uproszczenia uznane za dobro publiczne — autor zrzekł się praw autorskich do nich. Dotyczy to np. przykładu użycia platformy Birnam z inną gramatyką oraz kodu w języku C pozwalającego na wywołanie analizatora Morfeusz z programu prologowego.
Proszę zwrócić uwagę, że licencja analizatora morfologicznego Morfeusz nakłada ograniczenia na zakres użytkowania wykorzystujących go programów.
Udostępnienie programów na licencji GPL było możliwe dzięki uprzejmej zgodzie następujących osób i instytucji:
Wszystkim wymienionym bardzo serdecznie dziękuję.
Instalacja programu w zasadzie sprowadza się do rozpakowania powyższej paczki w wybranym katalogu. Do działania Świgry koniecznie jest jednak uprzednie zainstalowanie dwóch programów: SWI Prologu i Morfeusza oraz zapewnienie ich współpracy.
Wersję instalacyjną SWI
Prologu można pobrać z jego strony domowej. Konieczna jest
co najmniej wersja 5.6 (ze względu na Unikod).
W systemie Debian i Ubuntu należy zainstalować pakiety
swi-prolog i swi-prolog-xpce.
Niestety Debian Etch cierpi na zapaść prologową i konieczne
jest zainstalowanie SWI Prologu z wersji ’unstable’. Ubuntu
ma odpowiednie pakiety „na pokładzie”.
Wersję instalacyjną analizatora morfologicznego Morfeusz można
pobrać z jego
strony. W systemach Debian i Ubuntu wystarczy
zainstalować pakiet dostępny na stronie. W Windows
wystarczy umieścić plik morfeusz.dll w katalogu, w
którym rozpakowano program Świgra.
Paczka instalacyjna Świgry zawiera moduł pozwalający na
wywołanie Morfeusza z Prologu. Plik
morfeusz-swi.so jest wersją skompilowaną dla SWI
Prologu 5.6.14 w systemie Linux. Plik
morfeusz-swi.dll jest jego odpowiednikiem
skompilowanym pod Windows. W wypadku innych
systemów/wersji Prologu trzeba skompilować samemu plik
morfeusz-glueswi5.6.c (w wypadku pracy
w kodzie ISO 8859-2 plik
morfeusz-glueswi5.4.c). Sposób kompilacji jest
opisany w nagłówku tych plików. Skompilowany moduł
powinien znajdować się w tym samym katalogu co pozostałe
pliki Świgry.
Parser Birnam składa się z plików o nazwach
zaczynających się od 'birnam_'. Może on być użyty z dowolną
gramatyką DCG nie zawierającą reguł skracających. Prosty
przykład użycia parsera znajduje się w plikach
demo.pl i demo_gramm.pl. Do
zrozumienia go powinny wystarczyć komentarze w tych
plikach.
Aby użyć gramatyki Świgra należy najpierw wygenerować wykonywalną postać gramatyki poleceniem:
./genparser
Następnie można uruchomić wersję interaktywną poleceniem
./swigra
lub wersję wsadową poleceniem
./swigra_batch
Wersja wsadowa przetwarza wszystkie pliki z rozszerzeniem
.doa znajdujące się w bieżącym katalogu. Pliki
takie powinny zawierać po jednym wywołaniu predykatu
analiza/1 lub analiza/2.
Wymienione polecenia są skryptami programu Bash. Ich użycie
pod Windows wymaga więc zainstalowania tego programu. Analizator
interaktywny można także uruchomić pod Windows poprzez załadowanie
w interpreterze Prologu pliku
swigra_interactive.pl.