S-PELLET JAKO IMPLEMENTACJA ZDANIOWEJ REPREZENTACJI MODUŁÓW ALGEBRY KONGLOMERATÓW 1
|
|
- Wacława Jarosz
- 7 lat temu
- Przeglądów:
Transkrypt
1 STUDIA INFORMATICA 2012 Volume 33 Number 2A (105) Wojciech WALOSZEK Politechnika Gdańska, Katedra Inżynierii Oprogramowania S-PELLET JAKO IMPLEMENTACJA ZDANIOWEJ REPREZENTACJI MODUŁÓW ALGEBRY KONGLOMERATÓW 1 Streszczenie. W niniejszym artykule opisano zdaniową reprezentację konglomeratów (semantycznych modułów ontologicznych). Pokazano, w jaki sposób reprezentacja ta może być przydatna do wnioskowania z konglomeratów. Zaprezentowano też prototypowy system o nazwie S-Pellet, realizujący działania algebry konglomeratów za pomocą reprezentacji zdaniowej. System ten wykorzystuje do wnioskowania program Pellet, realizujący algorytm tableau. Słowa kluczowe: ontologie, modularyzacja, bazy wiedzy, reprezentacja wiedzy, algebra konglomeratów IMPLEMENTING SENTENTIAL REPRESENTATION OF S-MODULES IN S-PELLET Summary. In the article we introduce a prototypical system, named S-Pellet, which reasons over semantic modules with use of a standard reasoning engine, Pellet. The architecture, interfaces and a scenario of use of S-Pellet are presented. For the reasoning S-Pellet exploits the theory of sentential representation of s-modules; the theory is described and discussed in the paper. Keywords: ontologies, knowledge bases, modularization, s-modules 1. Wprowadzenie W niniejszym artykule podjęto zagadnienie zdaniowej reprezentacji semantycznych modułów ontologicznych konglomeratów. Idea konglomeratów oraz towarzysząca im algebra zostały przedstawione we wcześniejszych pracach ([1]; w dalszej części artykułu przypo- 1 Praca częściowo finansowana z funduszy NCBiR, grant nr SP/I/1/77065/10, projekt SYNAT.
2 312 W. Waloszek mniane zostaną najważniejsze pojęcia związane z tą ideą). Choć konglomeraty w założeniu reprezentują semantykę modułu ontologicznego (przestrzeń dopuszczalnych modeli), reprezentacja zdaniowa okazuje się być przydatnym narzędziem, m.in. dla dowodzenia rozstrzygalności niektórych rodzajów wnioskowania z użyciem konglomeratów. W artykule zaprezentowano prototypowy system S-Pellet, służący do wnioskowania z modułów semantycznych (konglomeratów) oraz do przeprowadzania na nich działań algebry konglomeratów. S-Pellet opiera się na założeniach reprezentacji zdaniowej i wykorzystuje do wnioskowania biblioteki udostępnione w ramach znanego systemu Pellet [2]. Wykorzystanie modułu wnioskującego Pellet pociąga za sobą znaczące konsekwencje. Wnioskowanie przeprowadzane jest w pamięci operacyjnej komputera. Rozmiar praktycznych ontologii ograniczony jest do kilku tysięcy osobników. Niemniej jednak głównymi celami utworzenia i utrzymywania prototypu są weryfikacja i rozpowszechnianie metod wykorzystania idei konglomeratów w inżynierii ontologii. Przy tworzeniu systemu S-Pellet kierowano się też następującymi wymaganiami: możliwie najpełniejszą pełną obsługa algebry konglomeratów: istniejący system RKASEA ze względu na stosowane w nim pewne ograniczenia metody reprezentacji ([3]) w obecnej wersji nie jest w stanie obsłużyć unii i różnicy konglomeratów; brakiem konieczności instalowania dodatkowych systemów: wnioskowanie poza pamięcią operacyjną najczęściej wymaga instalowania osobnego systemu zarządzania bazą danych. Dla systemu RKaSeA jest to Oracle, co stanowi barierę dla rozpowszechniania systemu; zapewnieniem możliwości szybkiej aktualizacji prototypu wraz z rozwojem algebry: jednym z zadań prototypu jest ułatwienie weryfikacji nowych idei i pomysłów związanych z algebrą konglomeratów. Utworzenie systemu, dla którego nakład związany z modyfikacjami jest stosunkowo nieduży, ułatwi przeprowadzanie takiego procesu. Jako że jednym z zadań systemu jest oferowanie inżynierom wiedzy możliwości zapoznania się z algebrą konglomeratów, S-Pellet wyposażony został w dwa interfejsy: programistyczny oraz konsolę użytkownika. Interfejs programistyczny oparto na OWL API [4]. Pozwala on na przeprowadzenie różnych rodzajów wnioskowania z poziomu innych programów napisanych w języku Java. Interfejs konsolowy oferuje użytkownikowi możliwość formułowania zapytań ad hoc w uproszczonej (m.in. nie opartej na XML-u) wersji języka KQL [5]. Interfejs konsolowy jest dostępny przez WWW pod adresem: pl:3343/spelletinterface/. Dalsza część niniejszego artykułu zorganizowana jest w następujący sposób. Rozdział drugi przypomina najważniejsze pojęcia metody konglomeratowej oraz opisuje zdaniową reprezentację konglomeratów. W rozdziale trzecim opisano system S-Pellet: jego architekturę, interfejsy i scenariusz wykorzystania. Rozdział czwarty zawiera dyskusję na temat powią-
3 S-Pellet jako implementacja zdaniowej reprezentacji modułów algebry konglomeratów 313 zanych prac. W rozdziale piątym zarysowano dalsze kierunki rozwoju prototypu oraz przedstawiono podsumowanie. 2. Zdaniowa reprezentacja konglomeratów W niniejszym rozdziale przytoczone są najważniejsze zasady podejścia opartego na konglomeratach wraz z wyjaśnieniem problemów reprezentacji zdaniowej. Tytułem wstępu w podrozdziale 2.1 przedstawiono także główne założenia logiki opisowej. Podejście konglomeratowe zostało zaproponowane jako alternatywa dla istniejących metod modularyzacji ontologii. Autorom metody przyświecał cel udostępnienia użytkownikowi możliwości znacznie bardziej elastycznego manipulowania zawartością modułów ontologicznych [1] oraz tworzenia modułów na żądanie, podobnie jak dzieje się to z relacjami w relacyjnej bazie danych. W toku dalszych prac okazało się także, że podejście konglomeratowe wykazuje również znaczny potencjał unifikujący jako metoda opisu innych podejść modularnych Podstawowe pojęcia logiki opisowej Algebra konglomeratów zdefiniowana jest przy wykorzystaniu założeń płynących z logiki opisowej (lub deskrypcyjnej; ang. description logics). Logika opisowa definiuje rodzinę formalizmów (dialektów), które różnią się co do ekspresywności, ale wykazują wiele wspólnych cech, m.in. wszystkie stanowią pewne podzbiory logiki pierwszego rzędu, wybrane głównie ze względu na właściwości obliczeniowe algorytmów wnioskujących. W logice opisowej przyjmuje się uproszczenie polegające na tym, że rezygnuje się z definiowania predykatów dowolnej krotności, w zamian wyróżniając trzy typy nazw: osobników, konceptów i ról. Przyjmuje się przy tym najczęściej, że nazwy te pochodzą z ustalonych zbiorów odpowiednio N I, N C i N R, składających się na tzw. sygnaturę pełną (lub słownik pełny) í = N C ) N R ) N I. Nazwy te są interpretowane, każda zaś interpretacja bazowa I = (Δ I, I) określa dziedzinę, czyli zbiór Δ I, i funkcję interpretacyjną I przypisującą nazwom z N I, N C i N R odpowiednio elementy, podzbiory i zbiory par elementów dziedziny. Oprócz nazw prostych można także posługiwać się konstrukcjami bardziej złożonymi. Zakres tych konstrukcji określony jest przez wybór dialektu L logiki opisowej. Przykładowo dialekt ALC pozwala na wykorzystanie konceptów złożonych postaci ŸC, C * D, C + D, R.C, R.C (gdzie C i D, również w dalszej części artykułu, oznaczają dowolny prosty lub złożony koncept). Koncepty takie mają ściśle określoną interpretację, którą można wywieść
4 314 W. Waloszek z interpretacji bazowej, przykładowo (C * D) I = C I ' D I, a ( R.C) I = {e Δ I : f C I : (e, f) R I }. Sama ontologia w logice opisowej składa się ze zdań. Dopuszczalne zdania to aksjomaty podrzędności konceptów i ról postaci odpowiednio C m D i R m S, gdzie R i S to dowolne role oraz asercje unarne i binarne postaci odpowiednio C(a) i R(a, b), a i b to dowolne osobniki. Interpretacja I spełnia zdanie α (jest jego modelem, co zapisujemy I α), jeśli: dla α = C m D zachodzi C I Œ D I, dla α = R m S zachodzi R I Œ S I, dla α = C(a) zachodzi a I C I, dla α = R(a, b) zachodzi (a I, b I ) Œ R I. Ontologia O zapisana w dialekcie L to pewien zbiór zdań wyrażonych w L (czyli podzbiór L, jako że dialekt utożsamiamy ze zbiorem wszystkich zdań, które można w nim wyrazić). Interpretacja I spełnia O wtedy i tylko wtedy, gdy spełnia każde zdanie z O. Przez sygnaturę ontologii Sig(O) rozumiemy zbiór S wszystkich nazw prostych użytych w O (przy czym S Œ í) Podstawowe pojęcia algebry konglomeratów Centralnym pojęciem dla prezentowanego podejścia jest konglomerat, czyli semantyczny moduł ontologiczny. Jego definicja jest niezależna od języka i ściśle bazuje na pojęciu sygnatury (słownika) i interpretacji. Definicja 1 (konglomerat): Konglomeratem M nazywamy parę (S, W), gdzie: S jest sygnaturą (skończonym podzbiorem í), a W zbiorem interpretacji bazowych. Każdą interpretację z W nazywamy modelem konglomeratu M. Zapisy S(M) i W(M) oznaczają odpowiednio sygnaturę i zbiór modeli danego konglomeratu M. Dla konglomeratów zdefiniowano algebrę, na którą składa się zestaw podstawowych działań, zdefiniowanych następująco (M i L to dowolne konglomeraty, S oznacza dowolną sygnaturę): M ' L = (S(M) ( S(L), W(M) ' W(L)), M ( L = (S(M) ( S(L), W(M) ( W(L)), M L = (S(M) ( S(L), W(M) W(L)), π S (M) = (S, W(M) S). Operacje przecięcia ('), unii (() i różnicy ( ) konglomeratów są w istocie typowymi operacjami boolowskimi dla zbioru modeli. Operacja projekcji (π S ) ogranicza natomiast słownik konglomeratu. W jej definicji zastosowano operację projekcji interpretacji do sygna-
5 S-Pellet jako implementacja zdaniowej reprezentacji modułów algebry konglomeratów 315 tury S, przy czym wynikiem projekcji pewnej interpretacji I jest zbiór interpretacji, przypisujący terminom z S dokładnie takie same zakresy, pozostałym zaś terminom dowolny zakres: I S = {J: Δ J = Δ I - X S: X J = X I }. Podobnie rozumiemy projekcję konglomeratu: konglomerat ten zachowuje zależności pomiędzy terminami z S, ale pozwala na dowolną interpretację terminów spoza S. Dla konglomeratów zdefiniowano także dodatkowe działania, przemianowanie i wchłonięcie, które można włączyć do algebry (γ to dowolna funkcja P(í) ö P(í), C to dowolny koncept z S(M)): ρ γ (M) = (γ(s(m)), {J = (Δ J, J): I W(M): Δ I = Δ J - X í: γ(x) J = X I }), L υ C M = (S(L) ( S(M), {I W(M): I ' C I W(L)}). Przemianowanie (ρ γ ) pozwala na zmianę nazw terminów z sygnatury, operacja wchłonięcia (υ C ) natomiast pozwala na zastosowanie zależności pomiędzy terminami z źródłowego konglomeratu L, ale tylko w podzbiorze (zakresie wskazanego konceptu C) dziedziny docelowego konglomeratu M. Za pomocą wymienionych, podstawowych operacji można zdefiniować algebrę konglomeratów jako algebrę cylindryczną [6]. Algebra cylindryczna ([7]) stanowi rozszerzenie algebry Boole a o specjalny operator cylindryfikacji, odpowiadający właśnie swoistemu rzutowaniu. Jednak aby dopełnić definicję algebry, trzeba zdefiniować uniwersum konglomeratów, na których będzie mógł operować użytkownik. Stosunkowo naturalny wybór takiej przestrzeni konglomeratów może przebiegać przez wskazanie pewnego dialektu logiki opisowej. Konglomeraty odpowiadające zdaniom w tym dialekcie mogłyby być uznane za bazowe. Definicja 2 (bazowa przestrzeń konglomeratów): Bazową przestrzenią konglomeratów dla dialektu L nazywamy zbiór M(L) = {M(α)} α L, w którym M(α) = (Sig({α}), {I: I α}). Tak zdefiniowaną przestrzeń bazową możemy rozszerzyć przez domknięcie względem wybranych działań algebraicznych. Definicja 3 (przestrzeń konglomeratów): Przestrzenią konglomeratów dla dialektu L oraz zbioru działań algebry konglomeratów A nazywamy zbiór M A (L) stanowiący domknięcie zbioru M(L) względem działań z A. Przykładowo w przestrzeni M {'} (L) znajdą się konglomeraty reprezentujące wszystkie ontologie wyrażone w L. W takiej przestrzeni dla danej ontologii O przez M(O) oznaczamy α O M(α); łatwo pokazać, że I O I W(M(O)).
6 316 W. Waloszek 2.3. Reprezentowalność zdaniowa konglomeratów Ze względu na potencjalnie nieskończoną liczbę modeli konglomeraty nie mogą być reprezentowane bezpośrednio w pamięci komputera. Potrzebne jest zatem opracowanie pewnego sposobu opisu przestrzeni dopuszczalnych modeli konglomeratu. Jeden z możliwych sposobów zaproponowany został w [2]: konglomeraty w systemie RKASEA reprezentowane są za pomocą specjalnych struktur grafowych. Można jednak zadać istotne pytanie o możliwość zastąpienia konglomeratu z wybranej przestrzeni równoważnym zbiorem zdań, tj. takim, który ma takie same modele. Wyznaczenie takiego zbioru zdań pozwoliłoby na wykorzystanie tradycyjnych mechanizmów wnioskujących do odpowiedzi na pytania dotyczące zawartości konglomeratów. Problem ten był częściowo rozważany w [1] na przykładzie tzw. konglomeratów nielingwistycznych (tj. niemożliwych do reprezentacji za pomocą zbioru zdań). W niniejszym artykule zostanie wprowadzone bardziej precyzyjne pojęcia reprezentowalności [8]. Definicja 4 (L-reprezentowalność): Konglomerat M jest L-reprezentowalny, jeżeli istnieje zbiór zdań O Œ L, który go L-reprezentuje (co zapisujemy M ~ L O), czyli taki, że Sig(O) Œ S(M) oraz W(M) = {I: I O}. Wszystkie konglomeraty z przestrzeni M {'} (L) są L-reprezentowalne, co można łatwo dowieść przez indukcję (jeśli M 1 ~ L O 1 oraz M 2 ~ L O 2, to M 1 ' M 2 ~ L O 1 ( O 2 ). Nie jest to już prawdą dla przestrzeni M {', (} (L), czego dowodzi następujący prosty przykład, zaczerpnięty z [1]. Przykład 1: Niech M = M(A m B) ( M(B m A). Oczywiście M należy do M {', (} (ALC). W ramach sygnatury S(M) nie istnieje jednak w ALC zbiór zdań, który miałby dokładnie takie same modele jak M. Zauważmy, że nie jest prawdą, że W(M) A m B, ani że W(M) B m A. Jednakże jeśli wykonamy działanie: M ' M({A * B(a), A * B(b)}), w jego wyniku otrzymamy konglomerat o pustym zbiorze modeli. Zatem choć konglomerat M nie spełniał żadnego ze zdań A m B, B m A, to wprowadzenie do niego asercji przeczących obydwu tym zdaniom spowoduje sprzeczność. Przykład 1 jest ilustracją tego, że niektóre operacje algebry konglomeratów mogą powodować wykroczenie poza ekspresywność języka wykorzystanego do budowy przestrzeni bazowej. Zdaniem, które reprezentowałoby konglomerat M z przykładu 1, byłaby alternatywa (A m B) / (B m A), której jednak nie można sformułować w ALC ani w żadnym z popularnych dialektów logiki opisowej. Ten brak ekspresywności w pewnym stopniu można przezwyciężyć, stosując nieco inny rodzaj reprezentacji zdaniowej: nie za pomocą pojedynczego zbioru zdań, ale za pomocą zbioru zbiorów zdań. Ten rodzaj reprezentacji zdefiniowano w dalszej części.
7 S-Pellet jako implementacja zdaniowej reprezentacji modułów algebry konglomeratów 317 Definicja 5 (L-(2)-reprezentowalność): Konglomerat M jest L-(2)- reprezentowalny, jeżeli istnieje skończony zbiór zbiorów zdań S = {O i } i [1..k], k N, który go L-(2)-reprezentuje (co zapisujemy jako M ~ L-(2) S), czyli taki, że» i [1..k] Sig(O i ) Œ S(M) oraz W(M) =» i [1..k] {I: I O i }. Wszystkie konglomeraty z przestrzeni M {', (} (L) są L-(2)-reprezentowalne, co można dowieść w następujący sposób: 1. Elementy przestrzeni bazowej M(L) są L-(2)-reprezentowalne, gdyż M(α) ~ L-(2) {{α}}. 2. Jeśli M 1 ~ L-(2) S 1 oraz M 2 ~ L-(2) S 2, to M 1 ( M 2 ~ L-(2) S 1 ( S Jeśli M 1 ~ L-(2) S 1, S 1 = {O 1:i } i [1..k] oraz M 2 ~ L-(2) S 2, S 2 = {O 2:j } j [1..m], to M 1 ' M 2 ~ L-(2) {O 1:i ( O 2:j : i [1..k], j [1..m]}. Podobnie jak w poprzednim przypadku, istnieją jednak ograniczenia, które w ogólności nie pozwalają na znalezienie zbioru zbiorów zdań L-(2)-reprezentującego wynik projekcji. Efekt ten można zilustrować następującym przykładem. Przykład 2: Niech M = π {A, B} (M({A m B, A(a)})). M M {', (} (ALC), jednak nie istnieje zbiór zbiorów zdań, których sygnatura ograniczona byłaby do {A, B}, a który miałby równoważne modele, gdyż W(M) zawiera wyłącznie interpretacje, w których zakresy zarówno konceptu A, jak i B są niepuste. Przykład 2 wskazuje na niemożność wyrażenia niektórych zależności bez zastosowania dodatkowych terminów. Głównym problemem, wskazanym w przykładzie 2, powodującym, że L-(2)-reprezentacja nie wystarcza, jest konieczność ograniczenia się do słownika reprezentowanego konglomeratu. Kolejny proponowany rodzaj reprezentacji przełamuje to ograniczenie. Zastosowanym tutaj pomysłem jest wydzielenie pewnej (nieskończonej) puli nazw D z pełnej sygnatury í. Nazwy te używane są wyłącznie jako zamienniki terminów usuwanych z sygnatury przez operację projekcji. Ideę tę sformalizowano w następującej definicji. Definicja 6 (L-(2)-D-reprezentowalność): Konglomerat M jest L-(2)-Dreprezentowalny, jeżeli istnieje skończony zbiór zbiorów zdań S = {O i } i [1..k], k N, który go L-(2)-D-reprezentuje (co zapisujemy jako M ~ L-(2)-D S), czyli taki, że» i [1..k] Sig(O i ) Œ S(M) ( D oraz W(M) = (» i [1..k] {I: I O i }) S(M). Przez zastosowanie podobnych kroków jak w poprzednim dowodzie możliwe jest pokazanie, że wszystkie konglomeraty z przestrzeni M {', (, π} (L) są L-(2)-D-reprezentowalne. Pierwsze trzy kroki dowodu są analogiczne, należy go natomiast rozszerzyć o kolejny krok: 4. Jeśli M ~ L-(2)-D S, S = {O i } i [1..k], to π S (M) ~ L-(2)-D {γ S(M) - S D (O i ): i [1..k]}. Przez funkcję γ S(M) - S D rozumiemy specjalny rodzaj funkcji przemianowującej, który zamienia terminy spoza S na unikalne, jeszcze nie użyte w S terminy z D, przez zapis γ S(M) - S D (O) rozumiemy zaś zbiór zdań, który powstał przez systematyczną zamianę
8 318 W. Waloszek wszystkich terminów atomowych we wszystkich zdaniach z O zgodnie z działaniem funkcji γ S(M) - S D. Zbiór reprezentowanych działań można rozszerzyć także o operację przemianowania i (częściowo) wchłonięcia. Ilustrują to następujące kroki. 5. Jeśli M ~ L-(2)-D S, S = {O i } i [1..k], to ρ γ (M) ~ L-(2)-D {γ(o i ): i [1..k]}. 6. Jeśli M 1 ~ L-(2)-D S 1, S 1 = {O 1:i } i [1..k] oraz M 2 ~ L-(2)-D S 2, S 2 = {O 2:j } j [1..m], to M 1 υ C M 2 ~ L-(2) {υ C (O 1:i ) ( O 2:j : i [1..k], j [1..m]}. W kroku 6 zastosowano specjalną funkcję υ C, tłumaczącą zdania reprezentujące moduł M 1, tak aby ograniczyć ich wpływ tylko do zakresu konceptu C. O ile dla aksjomatów podrzędności konceptów i asercji jest to wykonalne i stosunkowo proste (np. zdanie D m E zostanie zastąpione przez C * D m C * E), o tyle aksjomaty podrzędności i przechodniości ról nie zawsze mogą być w ten sposób przetłumaczone. Dla uproszczenia przyjmujemy więc, że krok 6 wykonujemy jedynie wtedy, gdy S 1 nie zawiera takich aksjomatów. Opisany algorytm (obejmujący kroki 1-6) pozwala zatem na konstruktywne wyznaczenie L-(2)-reprezentacji każdego konglomeratu zbudowanego z konglomeratów przestrzeni bazowej za pomocą działań {', (, π, ρ} (oraz częściowo υ). Jak już wcześniej wspomniano, jest to kluczowe z punktu widzenia systemu S-Pellet. Specyfika zastosowanego sposobu reprezentacji sprawia, że w sposób stosunkowo prosty i bezpośredni możliwe jest tu zastosowanie standardowego mechanizmu wnioskującego do rozwiązania typowych problemów wnioskowania. Przykładowo, przy założeniu że M ~ L-(2)-D S, S = {O i } i [1..k] : sprawdzenie spójności konglomeratu M sprowadza się do sprawdzenia spójności ontologii {O i } i [1..k] i, jeśli którakolwiek z nich jest spójna, konglomerat jest również spójny (tj. ma przynajmniej jeden model); sprawdzenie podrzędności konceptu C względem D sprowadza się do sprawdzenia, czy dla każdej ontologii {O i } i [1..k] zachodzi O i C m D. Analogiczny sposób postępowania można zastosować dla wszystkich podobnych problemów, tj. do rozłączności, równoważności i spełnialności konceptów; wyznaczenie wystąpień konceptu C sprowadza się do wyznaczenia zbiorów wystąpień tego konceptu dla każdej ontologii {O i } i [1..k] i wyznaczenia wspólnej części tych zbiorów. Analogiczny sposób postępowania można zastosować dla wszystkich podobnych problemów, tj. do wyznaczenia typów osobnika a, wyznaczenia konceptów atomowych dziedziczących od C itp. Na koniec warto podkreślić, że przy zastosowanej metodzie konglomeraty mogą być przechowywane przez cały czas w postaci zbiorów zdań. Jest to wygodne, jako że pozwala użytkownikowi dostarczać inicjalnych postaci modułów w postaci istniejących ontologii. Przeprowadzenie wnioskowania z modułu wymaga natomiast dodatkowych nakładów.
9 S-Pellet jako implementacja zdaniowej reprezentacji modułów algebry konglomeratów System S-Pellet Niniejszy rozdział prezentuje implementacyjne i projektowe aspekty systemu S-Pellet, wykorzystującego opisaną wcześniej zdaniową reprezentację konglomeratów. Kolejne podrozdziały zawierają opis architektury systemu, jego interfejsów, ich implementacji oraz opis scenariusza zastosowania Architektura systemu S-Pellet System S-Pellet zaimplementowany został w języku Java w wersji 6. Do działania potrzebuje dołączenia standardowego silnika wnioskującego obsługującego interfejs OWL API [4] w wersji przynajmniej Obecnie w tej roli wykorzystywany jest system Pellet [2] (wersja 2.0.0). System S-Pellet podzielony jest na kilka podsystemów (rys. 1): Podsystem core dostarcza definicji interfejsów potrzebnych do opisania konglomeratów oraz wykonywanych na nich operacji. Podsystem ten zawiera dwa dodatkowe moduły: exceptions wprowadzający definicje typowych błędów, które mogą wystąpić podczas przetwarzania konglomeratów oraz reasoner wprowadzający interfejsy służące do wywołania funkcji implementujących różne rodzaje wnioskowania. Elementy tego podsystemu są dokładniej opisane w podrozdziale 3.2. Podsystem r2d zawiera klasy implementujące interfejsy zdefiniowane w core. Podsystem ten wykorzystuje w swojej pracy algorytm opisany w podrozdziale 2.3, jego elementy zaś opisane są dokładniej w podrozdziale 3.3. S-Pellet console core excep- reasoner r2d pellet owlapi antlr Rys. 1. Architektura systemu S-Pellet Fig. 1. S-Pellet system architecture
10 320 W. Waloszek Podsystem console stanowi rodzaj nakładki na podsystem core i oferuje możliwość wykonywania (sformułowanych tekstowo) zapytań w uproszczonej odmianie języka KQL. Elementy tego podsystemu są dokładniej opisane w podrozdziale Interfejs programistyczny systemu S-Pellet Podsystem core definiuje interfejs programistyczny do systemu S-Pellet (i ewentualnie innych, przyszłych systemów wykorzystujących konglomeraty). Interfejs ten opiera się w znacznym stopniu na znanym interfejsie OWL API. Najważniejsze elementy podsystemu przedstawiono na diagramie klas na rys. 2. Wszystkie klasy poprzedzone przedrostkiem OWL pochodzą z OWL API i wykorzystywane są do reprezentowania konceptów, ról i osobników. Szablon interfejsu SModuleManager definiuje metody służące do tworzenia konglomeratu (rodzina metod createsmodule) oraz wykonywania operacji algebraicznych (metody do- Union, dointersection, doproject itp.). Zastosowanie szablonu pozwala tu na wykorzystanie jako konglomeratu dowolnej klasy zdefiniowanej przez użytkownika, implementującej interfejs SModule, który stanowi najprostszą abstrakcję konglomeratu i daje dostęp do jego sygnatury. «interface,metaclass» SModuleManager<I extends SModule> + createsmodule() : I + createsmodule(collection<owlaxiom>) : I + docomplement(i) : I + dounion(i, I) : I + dointersect(i, I) : I + doproject(signature, I) : I + doextension(signature, I) : I + dorename(owlentity, OWLEntity, I) : I + doselect(owlaxiom, I) : I + doputunder(i, OWLDescription, I) : I Signature - concepts: Set<OWLClass> - roles: Set<OWLObjectProperty> - individuals: Set<OWLIndividual> + Signature(Collection<OWLEntity>) + Signature(Signature) + union(signature, Signature) : Signature + intersect(signature, Signature) : Signature + difference(signature, Signature) : Signature + getconcepts() : Set<OWLClass> + getroles() : Set<OWLObjectProperty> + getindividuals() : Set<OWLIndividual> + getentities() : Set<OWLEntity> exceptions RuntimeException exceptions::esmruntimeexception OWLReasonerException exceptions::esmreasonerexception «interface» SModule + getsignature() : Signature reasoner OWLClassReasoner OWLIndividualReasoner OWLPropertyReasoner OWLSatisfiabilityChecker OWLConsistencyChecker «interface,metaclass» reasoner::smodulereasoner <I extends SModule> + clearsmodule() : void + getloadedsmodule() : I + loadsmodule(i) : void
11 S-Pellet jako implementacja zdaniowej reprezentacji modułów algebry konglomeratów 321 Rys. 2. Główne elementy podsystemu core Fig. 2. Basic elements of core subsystem Podsystem zawiera także klasę Signature, która przechowuje słownik konglomeratu (lub ontologii). Klasa ta dostarcza wielu metod pozwalających na wykonywanie podstawowych operacji na sygnaturach, takich jak: sumowanie, odejmowanie i wyznaczanie części wspólnej. W dodatkowym module reasoner zdefiniowano interfejs dla mechanizmu wnioskującego z konglomeratów SModuleReasoner. Interfejs ten dziedziczy od wielu interfejsów z OWL API, definiujących metody dla podstawowych problemów wnioskowania. Moduł exceptions zawiera natomiast podstawowe definicje błędów, które mogą pojawić się podczas wykonywania operacji algebry konglomeratów lub podczas wnioskowania Realizacja wnioskowania w systemie S-Pellet Faktyczna realizacja operacji algebraicznych oraz wnioskowania z konglomeratów zachodzi w podsystemie r2d. Podsystem ten zawiera zestaw klas realizujących interfejsy zdefiniowane w core (rys. 3). SModuleR2DManage ~ ontologymanager: ~ reasonerfactory: ~ datafactory: - DS: String = - dummycounter: int = «interface» SModuleManage <SModuleR2D SModuleR2D ~ manager: ~ signature: Signature ~ r2d: «interface» SModul - reasonerfactory: - owlreasoners: SModuleR2DReason «interface» SModuleReasone <SModuleR2D Rys. 3. Główne elementy podsystemu r2d Fig. 3. Basic elements of r2d subsystem Każdy obiekt klasy SModuleR2D reprezentuje konglomerat i zawiera zbiór zbiorów zdań, stanowiący jego L-(2)-D-reprezentację. Jednak za wyznaczanie poprawnej reprezentacji odpowiedzialne są w istocie obiekty klasy SModuleR2DManager. Realizują one operacje algebraiczne, jednocześnie aktualizując reprezentację konglomeratów zgodnie z algorytmem przedstawionym w podrozdziale 2.4. Algorytm ten zaimplementowano według przedstawio-
12 322 W. Waloszek nych tam założeń. Obiekt SModuleR2DManager zachowuje też kontrolę nad pulą nazw pomocniczych D (przydzielane są one jako kolejno numerowane koncepty X_nnn ze specjalnej przestrzeni nazw DS) oraz sprawdza warunki konieczne do przeprowadzenia operacji wchłonięcia. W podsystemie zaimplementowana jest także klasa SModuleR2DManager, która odpowiada za przeprowadzanie wnioskowania z konglomeratu. Wnioskowanie realizowane jest zgodnie z naszkicowanym w podrozdziale 2.4 schematem: dla każdego zbioru zdań z L-(2)- D-reprezentacji tworzony jest obiekt OWLReasoner (za pośrednictwem fabryki OWLReasonerFactory, obecnie dostarczanej przez system Pellet), a odpowiedź na podstawowe problemy wnioskowania formułowana jest jako odpowiednia kombinacja odpowiedzi z poszczególnych mechanizmów wnioskujących Interfejs użytkowy systemu S-Pellet Aby spełnić sformułowane wymaganie, dotyczące umożliwienia zainteresowanym inżynierom zapoznania się z właściwościami algebry konglomeratów, system S-Pellet został wyposażony w specjalną nakładkę na zasadniczy interfejs, umożliwiającą interpretację i przetwarzanie zapytań sformułowanych w uproszczonej, tekstowej wersji języka KQL. Funkcjonalność ta została zaimplementowana w podsystemie console. Do analizy składniowej treści zapytań wykorzystano zewnętrzną bibliotekę Antlr w wersji Biblioteka ta daje możliwości definiowania gramatyk klasy LL(*) [9]. Przez autora biblioteki dostarczane są także dodatkowe narzędzia, pozwalające na generowanie diagramów przedstawiających struktury gramatyczne. Przykładowy diagram opisujący komendę dla systemu S-Pellet przedstawiono na rys. 4. Więcej diagramów stanowiących pełną specyfikację uproszczonego języka KQL zainteresowany czytelnik odnajdzie na stronach knot260.eti.pg.gda.pl:3343/spelletinterface/. Podsystem console zawiera także klasę realizującą prostą funkcjonalność konsoli, do której można kierować różnego rodzaju polecenia i która zapamiętuje stan przetwarzanych konglomeratów. Przez odpowiednie wykorzystanie tej klasy można w prosty sposób tworzyć różne rodzaje interfejsów użytkownika, np. okienkowy lub sieciowy, takie jak wykorzystano na stronach systemu.
13 S-Pellet jako implementacja zdaniowej reprezentacji modułów algebry konglomeratów 323 Rys. 4. Fragment diagramu składniowego dla elementu command gramatyki uproszczonego KQL Fig. 4. A fragment of syntax diagram for command in simplified KQL grammar 3.5. Scenariusz użycia systemu S-Pellet Ze względu na zaimplementowanie różnych rodzajów interfejsów można łatwo wyobrazić sobie wykorzystanie systemu S-Pellet w różnych zastosowaniach. Z punktu widzenia technicznego może on być wykorzystany jako dołączana biblioteka lub jako serwer sieciowy, wyposażony w interfejs do wykonywania zapytań. Popularyzatorska rola systemu polega na oferowaniu ogólnodostępnej konsoli do wykonywania różnego rodzaju działań związanych z przetwarzaniem konglomeratów. Za jej pomocą można m.in. prześledzić działanie przykładów zastosowania algebry z [1]. W niniejszym podrozdziale krótko opisano interakcje między użytkownikiem a systemem (przez interfejs konsolowy) podczas realizacji przykładu szukania mordercy z [1]: 1. W pierwszym kroku w systemie należy utworzyć konglomerat zawierający informacje ogólne, mówiące o tym, że istnieje tylko jeden morderca, że jest to osoba, którą wskazuje zaufany świadek, i że zaufany świadek musiał być obecny na miejscu zbrodni: STORE IN m1 MODULE M( {victim} ISSUB ATMOST 1 INV murdered, EXISTS INV accuses.trustedwitness ISSUB EXISTS murdered.{victim}, TrustedWitness ISSUB EXISTS presentat.crimescene ); 2. Następnie należy utworzyć dwa moduły reprezentujące wersje zebrane przez detektywów (pierwszą, że johnshady jest zaufanym świadkiem i oskarża tedainnocent i drugą, mówiącą, że henrybrillant jest zaufanym świadkiem wskazującym markaguilty): STORE IN m2 MODULE m1 INTERSECT M( TrustedWitness( johnshady ), accuses( johnshady, tedinnocent ) ); STORE IN m3 MODULE m1 INTERSECT M( TrustedWitness( henrybrillant ), accuses( henrybrillant, markguilty ) ); 3. Zakładamy, że jedna z wersji zebranych przez detektywów jest prawdziwa, nie wiemy jednak która. Wykonujemy zatem unię utworzonych w pkt. 2 konglomeratów: STORE IN m4 MODULE m2 UNION m3;
14 324 W. Waloszek 4. Z utworzonego konglomeratu nie wynika, kto jest mordercą czy też zaufanym świadkiem, o czym można się przekonać, przeprowadzając różne rodzaje wnioskowania: REASON OVER m4 IS tedinnocent RELATED WITH victim BY murdered; REASON OVER m4 IS markguilty RELATED WITH victim BY murdered; REASON OVER m4 IS johnshady OF TYPE TrustedWitness; REASON OVER m4 IS henrybrillant OF TYPE TrustedWitness; 5. Możemy teraz wzbogacić konglomerat o nowo zdobytą, niepodważalną informację na temat morderstwa, mówiącą, że johnshady nie był obecny na miejscu zbrodni: STORE IN m5 MODULE SELECT m4 WHERE [NOT EXISTS presentat.crimescene(johnshady)]; 6. Z nowego konglomeratu możemy już dowiedzieć się, kto jest mordercą: REASON OVER m5 IS johnshady OF TYPE NOT TrustedWitness; REASON OVER m5 IS markguilty RELATED WITH victim BY murdered; 4. Powiązane prace S-Pellet jest narzędziem wnioskującym dla ontologii modularnej, zapisanej za pomocą konglomeratów. Ze względu na fakt, że wykorzystuje on nową metodę reprezentowania wiedzy, jedynym systemem, z którym można porównać go bezpośrednio, jest RKASEA, opisana m.in. w [3]. W stosunku do RKasei S-Pellet odznacza się nieco inną filozofią działania. Jak zaznaczono w rozdziale 1, S-Pellet jest systemem znacznie mniej skomplikowanym, niemającym w zamyśle spełniać zadań pełnego systemu zarządzania bazami wiedzy. W zamian oferuje on nieco szersze niż RKASEA pokrycie operacji algebry konglomeratów i jest znacznie prostszy w instalacji. Nie istnieje zbyt wiele uznanych systemów zapewniających możliwość wnioskowania z ontologii modularnych (bardzo ważnym powodem tego stanu jest zapewne fakt, że żadna z metod modularyzacji nie została przyjęta jako standard). Jednym z najlepiej rozwiniętych pod tym względem mechanizmów wnioskujących jest KaOn [10]. Jego możliwości przetwarzania ontologii modularnych zostały znacznie wzbogacone w ramach projektu NeOn [11]. Opracowane w ten sposób rozszerzenia pozwalają również na wykorzystanie pewnego zestawu działań algebraicznych do operowania na modułach, jednakże są to operacje ściśle syntaktyczne. KaOn wraz z rozszerzeniami dostępny jest jako część systemu zarządzania ontologiami NeOn. Jeden z nowszych systemów stosujących podejście modularne (kontekstowe) to CKR [12]. Zastosowano tam autorską metodę definiowania ontologii kontekstowych, przy czym zależności między kontekstami opisywane są także w postaci ontologii. System ten nie oferuje jednak możliwości algebraicznego operowania zawartością modułów.
15 S-Pellet jako implementacja zdaniowej reprezentacji modułów algebry konglomeratów 325 Należy także wspomnieć o tym, że sam Pellet [2] oferuje możliwości przetwarzania ontologii modularnych. Wcześniejsze wersje narzędzia dawały możliwość łączenia modułów ontologicznych według metody E-Connections [13]. Ta możliwość nie występuje już jednak w nowszych wersjach narzędzia. Także dłużej nie jest już wspierany system Drago [14], który pozwala na odwzorowywanie terminologii modułów ontologicznych za pomocą DDL (rozproszonej logiki opisowej; ang. Distributed Description Logics) [15]. W dostępnej wersji system oferuje jedynie możliwość odwzorowywania terminologii i nie pozwala na przeprowadzanie algebraicznych operacji na modułach. 5. Kierunki rozwoju i podsumowanie W artykule przedstawiono koncepcję i konstrukcję systemu S-Pellet. System ten służy do wnioskowania z semantycznych modułów ontologicznych konglomeratów i do przeprowadzania na nich operacji algebraicznych. Wykorzystuje przy tym specjalny rodzaj reprezentacji zdaniowej, co pozwala na użycie tradycyjnych mechanizmów wnioskowania. Dalsze możliwości rozwoju systemu obejmują prace nad zdaniową reprezentacją większej liczby operacji, przede wszystkim różnicy konglomeratów. Pewne wstępne działania w tej kwestii są już wdrażane w życie. Ciekawym pomysłem wydaje się także rozbudowywanie uproszczonej wersji języka KQL w kontakcie z jego potencjalnymi użytkownikami, co pozwoli na usprawnienie rozwoju pełnej wersji języka. Jak wspomniano we wprowadzeniu, system służy również jako prototyp do testowania nowych elementów podejścia konglomeratowego. To zadanie jest szczególnie ważne w kontekście działań prowadzonych przez grupę KMG w ramach projektu SYNAT (System Nauki i Techniki; Projekt SYNAT ma za zadanie utworzenie systemu zarządzania wiedzą, wspierającego gromadzenie zasobów ułatwiających pracę naukowców. Konglomeraty wykorzystywane są w nurcie badawczym tego projektu, związanym z wyszukiwaniem i usprawnianiem dostępu do potrzebnych publikacji elektronicznych. Choć docelowo w projekcie planowane jest wykorzystanie RKasei, użycie systemu S-Pellet pozwala na przetestowanie wielu pomysłów i przeprowadzenie ich pilotażu stosunkowo niedużym kosztem. BIBLIOGRAFIA 1. Goczyła K., Waloszek A., Waloszek W.: Algebra konglomeratów jako narzędzie opisu problemów przetwarzania ontologii. Studia Informatica, Vol. 30, No. 2A(83), Wydawnictwo Politechniki Śląskiej, Gliwice 2009, s
16 326 W. Waloszek 2. Sirin E., Parsia B., Grau B. C., Kalyanpur A., Katz Y.: Pellet: A Practical OWL-DL Reasoner. Journal of Web Semantics, Vol. 5(2), 2007, s Goczyła K., Waloszek A., Waloszek W., Zawadzka T.: Wewnętrzna reprezentacja konglomeratowej bazy wiedzy w systemie RKaSeA. Studia Informatica, Vol. 31, No. 2A(89), Wydawnictwo Politechniki Śląskiej, Gliwice 2010, s Horridge M., Bechhofer S.: The OWL API: A Java API for Working with OWL 2 Ontologies. OWLED 2009, 6th OWL Experienced and Directions Workshop, Goczyła K., Piotrowski P., Waloszek A., Waloszek W., Zawadzka T.: Język KQL jako realizacja idei języka SQL dla bazy wiedzy. Studia Informatica, Vol. 31, No.2A(89), Wydawnictwo Politechniki Śląskiej, Gliwice 2010, s Goczyła K., Waloszek A., Waloszek W.: Algebra of ontology modules for semantic agent. Computational collective intelligence: semantic web, social networks and multiagent systems. LNCS, Vol. 5796, Springer, 2009, s Henkin L., Monk J. D., Tarski A.: Cylindric Algebras pt. 1. Studies in Logic and the Foundations of Mathematics, Vol. 64, North-Holland, Amsterdam Goczyła K., Waloszek A., Waloszek W.: A Semantic Algebra for Modularized Description Logics Knowledge Bases. Proc. of DL Workshop 2009, CEUR-WS, Vol. 477, Parr T.: The Definitive ANTLR Reference: Building Domain-Specific Languages. Pragmatic Bookshelf, Volz R., Oberle D., Staab S., Motik B.: KAON SERVER A Semantic Web Management System. AT Proc. of the 12th World Wide Web Conference, ACM, Budapeszt Gomez-Perez A., Suarez-Figueroa M. C.: Scenarios for Building Ontology Networks within the NeOn Methodology. Proc. of the K-CAP 2009, ACM, Homola M., Tamilin A., Serafini L.: Modeling Contextualized Knowledge. Procs. of the 2nd Workshop on Context, Information and Ontologies, CEUR-WS, Vol. 626, Grau B. C., Parsia B., Sirin E.: Working with Multiple Ontologies on the Semantic Web. The Semantic Web ISWC 2004, LNCS, Vol. 3298, Springer, Berlin 2004, s Serafini L., Tamilin A.: DRAGO: Distributed Reasoning Architecture for the Semantic Web. Proc. of the ESWC 05, LNCS, Vol. 3532, Springer-Verlag, Borgida A., Serafini L.: Distributed Description Logics: Assimilating Information from Peer Sources. Journal of Data Semantics, No. 1, 2003, s
17 S-Pellet jako implementacja zdaniowej reprezentacji modułów algebry konglomeratów 327 Wpłynęło do Redakcji 14 stycznia 2012 r. Abstract In the paper we present a prototypical reasoning system S-Pellet. S-Pellet reasons over modular knowledge bases organized in accordance with the s-modular approach [1]. In the approach all the modules are treated strictly semantically, as sets of valid Tarski-style models. The S-Pellet system allows for performing wide range of algebraic operations on the modules. In order to perform this task it exploits a special kind of sentential (or syntactic) representation for s-modules. The paper introduces the reader to the theory of sentential representability of semantic modules and proves that construction of proper representation can be accomplished for a wide range of modules in finite time by executing relatively simple steps. Sentential representation enables us to use standard reasoning engines for performing inference tasks. In S-Pellet system Pellet has been utilized in that role [2]. The range of offered inferences embraces answering all the queries specified in OWL API interface [4]. The S-Pellet system is equipped with several interfaces, which eases the process of integrating it into larger systems. One of the interfaces is API (based on OWL API) for s- modular knowledge bases and performing operations on s-modules. S-Pellet also includes a simple console which accepts commands in simplified KQL language [5]. The presence of the console makes the system self-contained and ready to use by any user. A web version of the console interface is available at: SPelletInterface/. A scenario of use of the console is presented in the paper, but it is also available (along with the specification of the grammar of simplified KQL language) at the additional pages at the above given address. Adres Wojciech WALOSZEK: Politechnika Gdańska, Wydział Elektroniki, Telekomunikacji i Informatyki, ul. Narutowicza 11/13, Gdańsk, Polska, wowal@eti.pg.gda.pl.
Internet Semantyczny i Logika II
Internet Semantyczny i Logika II Ontologie Definicja Grubera: Ontologia to formalna specyfikacja konceptualizacji pewnego obszaru wiedzy czy opisu elementów rzeczywistości. W Internecie Semantycznym językiem
Internet Semantyczny. Logika opisowa
Internet Semantyczny Logika opisowa Ontologie Definicja Grubera: Ontologia to formalna specyfikacja konceptualizacji pewnego obszaru wiedzy czy opisu elementów rzeczywistości. W Internecie Semantycznym
ODWZOROWANIA MIĘDZYONTOLOGICZNE W ALGEBRZE KONGLOMERATÓW 1
STUDIA INFORMATICA 2012 Volume 33 Number 2A (105) Krzysztof GOCZYŁA, Aleksander WALOSZEK, Wojciech WALOSZEK, Teresa ZAWADZKA Politechnika Gdańska, Wydział Elektroniki, Telekomunikacji i Informatyki ODWZOROWANIA
ALGEBRA KONGLOMERATÓW JAKO NARZĘDZIE OPISU PROBLEMÓW PRZETWARZANIA ONTOLOGII 1
STUDIA INFORMATICA 2009 Volume 30 Number 2A (83) Krzysztof GOCZYŁA, Aleksander WALOSZEK, Wojciech WALOSZEK Politechnika Gdańska, Wydział Elektroniki, Telekomunikacji i Informatyki ALGEBRA KONGLOMERATÓW
Wykład I. Wprowadzenie do baz danych
Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles
IDEOLOGICZNY I PRAKTYCZNY MODEL METAONTOLOGII
STUDIA INFORMATICA 2009 Volume 30 Number (82) Krzysztof GOCZYŁA Politechnika Gdańska, Wydział Elektroniki, Telekomunikacji i Informatyki Aleksander WALOSZEK Politechnika Gdańska, Wydział Elektroniki, Telekomunikacji
IDEOLOGICZNY I PRAKTYCZNY MODEL METAONTOLOGII
STUDIA INFORMATICA 200 Volume 3 Number 2A (89) Krzysztof GOCZYŁA, Aleksander WALOSZEK, Wojciech WALOSZEK, Teresa ZAWADZKA Politechnika Gdańska, Wydział Elektroniki, Telekomunikacji i Informatyki IDEOLOGICZNY
Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017
Logika Stosowana Wykład 1 - Logika zdaniowa Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 30 Plan wykładu 1 Język
SCHEMAT KONGLOMERATOWEJ BAZY WIEDZY 1
STUDIA INFORMATICA 2012 Volume 33 Number 2A (105) Krzysztof GOCZYŁA, Aleksander WALOSZEK, Wojciech WALOSZEK, Teresa ZAWADZKA Politechnika Gdańska, Wydział Elektroniki, Telekomunikacji i Informatyki SCHEMAT
WEWNĘTRZNA REPREZENTACJA KONGLOMERATOWEJ BAZY WIEDZY W SYSTEMIE RKASEA
STUDIA INFORMATIA 2010 Volume 31 Number 2A (89) Krzysztof GOZYŁA, Aleksander WALOSZEK, Wojciech WALOSZEK, Teresa ZAWADZKA Politechnika Gdańska, Wydział Elektroniki, Telekomunikacji i Informatyki WEWNĘTRZNA
Hurtownie danych - przegląd technologii
Hurtownie danych - przegląd technologii Problematyka zasilania hurtowni danych - Oracle Data Integrator Politechnika Poznańska Instytut Informatyki Robert.Wrembel@cs.put.poznan.pl www.cs.put.poznan.pl/rwrembel
Programowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.
Projektowanie relacyjnych baz danych
Mam nadzieję, że do tej pory przyzwyczaiłeś się do tabelarycznego układu danych i poznałeś sposoby odczytywania i modyfikowania tak zapisanych danych. W tym odcinku poznasz nieco teorii relacyjnych baz
INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE
Studia podyplomowe dla nauczycieli INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE Przedmiot JĘZYKI PROGRAMOWANIA DEFINICJE I PODSTAWOWE POJĘCIA Autor mgr Sławomir Ciernicki 1/7 Aby
Tom 6 Opis oprogramowania
Część 4 Narzędzie do wyliczania wielkości oraz wartości parametrów stanu Diagnostyka stanu nawierzchni - DSN Generalna Dyrekcja Dróg Krajowych i Autostrad Warszawa, 30 maja 2012 Historia dokumentu Nazwa
PROLOG WSTĘP DO INFORMATYKI. Akademia Górniczo-Hutnicza. Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej.
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WSTĘP DO INFORMATYKI Adrian Horzyk PROLOG www.agh.edu.pl Pewnego dnia przyszedł na świat komputer Komputery
1 Wprowadzenie do J2EE
Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2
Logika rozmyta typu 2
Logika rozmyta typu 2 Zbiory rozmyte Funkcja przynależności Interwałowe zbiory rozmyte Funkcje przynależności przedziałów Zastosowanie.9.5 Francuz Polak Niemiec Arytmetyka przedziałów Operacje zbiorowe
Techniki informacyjne dla wnioskowania oraz generowania, reprezentacji i zarządzania wiedzą
Zakład Zaawansowanych Technik Informacyjnych (Z-6) Techniki informacyjne dla wnioskowania oraz generowania, reprezentacji i zarządzania wiedzą Zadanie nr 2 Relacyjne systemy dedukcyjne: teoria i zastosowania
Model relacyjny. Wykład II
Model relacyjny został zaproponowany do strukturyzacji danych przez brytyjskiego matematyka Edgarda Franka Codda w 1970 r. Baza danych według definicji Codda to zbiór zmieniających się w czasie relacji
domykanie relacji, relacja równoważności, rozkłady zbiorów
1 of 8 2012-03-28 17:45 Logika i teoria mnogości/wykład 5: Para uporządkowana iloczyn kartezjański relacje domykanie relacji relacja równoważności rozkłady zbiorów From Studia Informatyczne < Logika i
O-MaSE Organization-based Multiagent System Engineering. MiASI2, TWO2,
O-MaSE Organization-based Multiagent System Engineering MiASI2, TWO2, 2017-2018 Materiały Strona poświęcona metodzie O-MaSE http://macr.cis.ksu.edu/projects/omase.html (Multiagent & Cooperative Reasoning
Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)
Zagadnienia (1/3) Rola modelu systemu w procesie analizy wymagań (inżynierii wymagań) Prezentacja różnego rodzaju informacji o systemie w zależności od rodzaju modelu. Budowanie pełnego obrazu systemu
Oracle11g: Wprowadzenie do SQL
Oracle11g: Wprowadzenie do SQL OPIS: Kurs ten oferuje uczestnikom wprowadzenie do technologii bazy Oracle11g, koncepcji bazy relacyjnej i efektywnego języka programowania o nazwie SQL. Kurs dostarczy twórcom
Bazy danych 2. Wykład 1
Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu
1 Wstęp do modelu relacyjnego
Plan wykładu Model relacyjny Obiekty relacyjne Integralność danych relacyjnych Algebra relacyjna 1 Wstęp do modelu relacyjnego Od tego się zaczęło... E. F. Codd, A Relational Model of Data for Large Shared
INSTYTUT AUTOMATYKI I INŻYNIERII INFORMATYCZNEJ POLITECHNIKI POZNAŃSKIEJ. Adam Meissner. Elementy logik deskrypcyjych
INSTYTUT AUTOMATYKI I INŻYNIERII INFORMATYCZNEJ POLITECHNIKI POZNAŃSKIEJ Adam Meissner Adam.Meissner@put.poznan.pl http://www.man.poznan.pl/~ameis Elementy logik deskrypcyjych Literatura [1] Baader F.
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Język programowania prosty bezpieczny zorientowany obiektowo wielowątkowy rozproszony przenaszalny interpretowany dynamiczny wydajny Platforma
Przestrzenne bazy danych Podstawy języka SQL
Przestrzenne bazy danych Podstawy języka SQL Stanisława Porzycka-Strzelczyk porzycka@agh.edu.pl home.agh.edu.pl/~porzycka Konsultacje: wtorek godzina 16-17, p. 350 A (budynek A0) 1 SQL Język SQL (ang.structured
Automatyczne generowanie testów z modeli. Bogdan Bereza Automatyczne generowanie testów z modeli
Automatyczne generowanie testów z modeli Numer: 1 (33) Rozkmina: Projektowanie testów na podstawie modeli (potem można je wykonywać ręcznie, lub automatycznie zwykle chce się automatycznie) A ja mówię
Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT
Studia podyplomowe Inżynieria oprogramowania współfinansowane przez Unię Europejska w ramach Europejskiego Funduszu Społecznego Projekt Studia podyplomowe z zakresu wytwarzania oprogramowania oraz zarządzania
Programowanie obiektowe
Laboratorium z przedmiotu - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia. Wprowadzenie teoretyczne.
Model referencyjny doboru narzędzi Open Source dla zarządzania wymaganiami
Politechnika Gdańska Wydział Zarządzania i Ekonomii Katedra Zastosowań Informatyki w Zarządzaniu Zakład Zarządzania Technologiami Informatycznymi Model referencyjny Open Source dla dr hab. inż. Cezary
REFERAT PRACY DYPLOMOWEJ
REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany
problem w określonym kontekście siły istotę jego rozwiązania
Wzorzec projektowy Christopher Alexander: Wzorzec to sprawdzona koncepcja, która opisuje problem powtarzający się wielokrotnie w określonym kontekście, działające na niego siły, oraz podaje istotę jego
Wydział Informatyki, Elektroniki i Telekomunikacji. Katedra Informatyki
Wydział Informatyki, Elektroniki i Telekomunikacji Katedra Informatyki Pastebin w wersji zorientowanej na środowisko mobilne z klientem pozwalającym na oba kierunki przeklejania. Dokumentacja deweloperska
Praca magisterska Jakub Reczycki. Opiekun : dr inż. Jacek Rumiński. Katedra Inżynierii Biomedycznej Wydział ETI Politechnika Gdańska
System gromadzenia, indeksowania i opisu słownikowego norm i rekomendacji Praca magisterska Jakub Reczycki Opiekun : dr inż. Jacek Rumiński Katedra Inżynierii Biomedycznej Wydział ETI Politechnika Gdańska
Programowanie obiektowe
Programowanie obiektowe Wykład 13 Marcin Młotkowski 27 maja 2015 Plan wykładu Trwałość obiektów 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 2 / 29 Trwałość (persistence) Definicja Cecha
Logika Stosowana. Wykład 2 - Logika modalna Część 2. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017
Logika Stosowana Wykład 2 - Logika modalna Część 2 Marcin Szczuka Instytut Informatyki UW Wykład monograficzny, semestr letni 2016/2017 Marcin Szczuka (MIMUW) Logika Stosowana 2017 1 / 27 Plan wykładu
<Nazwa firmy> <Nazwa projektu> Specyfikacja wymagań projektu. Wersja <1.0>
Wersja [Uwaga: Niniejszy wzór dostarczony jest w celu użytkowania z Unified Process for EDUcation. Tekst zawarty w nawiasach kwadratowych i napisany błękitną kursywą
LOGIKA I TEORIA ZBIORÓW
LOGIKA I TEORIA ZBIORÓW Logika Logika jest nauką zajmującą się zdaniami Z punktu widzenia logiki istotne jest, czy dane zdanie jest prawdziwe, czy nie Nie jest natomiast istotne o czym to zdanie mówi Definicja
Metoda Tablic Semantycznych
Procedura Plan Reguły Algorytm Logika obliczeniowa Instytut Informatyki Plan Procedura Reguły 1 Procedura decyzyjna Logiczna równoważność formuł Logiczna konsekwencja Procedura decyzyjna 2 Reguły α, β,
Reprezentacja wiedzy ontologie, logiki deskrypcyjne
Reprezentacja wiedzy ontologie, logiki deskrypcyjne Agnieszka Ławrynowicz 24 listopada 2016 Plan wykładu 1 Powtórka: sieci semantyczne, RDF 2 Definicja ontologii 3 Logiki deskrypcyjne Semantyczny Internet
IO - Plan wdrożenia. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006
IO - Plan wdrożenia M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak 5 czerwca 2006 1 Spis treści 1 Wprowadzenie 3 1.1 Cel.......................................... 3 1.2 Zakres........................................
SZKOLENIE: Administrator baz danych. Cel szkolenia
SZKOLENIE: Administrator baz danych. Cel szkolenia Kurs Administrator baz danych skierowany jest przede wszystkim do osób zamierzających rozwijać umiejętności w zakresie administrowania bazami danych.
Tom 6 Opis oprogramowania Część 8 Narzędzie do kontroli danych elementarnych, danych wynikowych oraz kontroli obmiaru do celów fakturowania
Część 8 Narzędzie do kontroli danych elementarnych, danych wynikowych oraz kontroli Diagnostyka stanu nawierzchni - DSN Generalna Dyrekcja Dróg Krajowych i Autostrad Warszawa, 21 maja 2012 Historia dokumentu
LITERATURA. C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki )
LITERATURA C. J. Date; Wprowadzenie do systemów baz danych WNT Warszawa 2000 ( seria Klasyka Informatyki ) H. Garcia Molina, Jeffrey D. Ullman, Jennifer Widom; Systemy baz danych. Kompletny podręcznik
Tworzenie i obsługa wirtualnego laboratorium komputerowego
Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Michał Ochociński nr albumu: 236401 Praca magisterska na kierunku informatyka stosowana Tworzenie i obsługa wirtualnego
Wprowadzenie do multimedialnych baz danych. Opracował: dr inż. Piotr Suchomski
Wprowadzenie do multimedialnych baz danych Opracował: dr inż. Piotr Suchomski Wprowadzenie bazy danych Multimedialne bazy danych to takie bazy danych, w których danymi mogą być tekst, zdjęcia, grafika,
Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV
Piotr Jarosik, Kamil Jaworski, Dominik Olędzki, Anna Stępień Dokumentacja wstępna TIN Rozproszone repozytorium oparte o WebDAV 1. Wstęp Celem projektu jest zaimplementowanie rozproszonego repozytorium
Algebrą nazywamy strukturę A = (A, {F i : i I }), gdzie A jest zbiorem zwanym uniwersum algebry, zaś F i : A F i
Algebrą nazywamy strukturę A = (A, {F i : i I }), gdzie A jest zbiorem zwanym uniwersum algebry, zaś F i : A F i A (symbol F i oznacza ilość argumentów funkcji F i ). W rozważanych przez nas algebrach
Programowanie komputerów
Programowanie komputerów Wykład 1-2. Podstawowe pojęcia Plan wykładu Omówienie programu wykładów, laboratoriów oraz egzaminu Etapy rozwiązywania problemów dr Helena Dudycz Katedra Technologii Informacyjnych
Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.
Architektura Systemu Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu. Architektura jest zbiorem decyzji dotyczących: organizacji systemu komputerowego,
WOJSKOWA AKADEMIA TECHNICZNA
WOJSKOWA AKADEMIA TECHNICZNA PROJEKT MODELOWANIE SYSTEMÓW TELEINFORMATYCZNYCH Stopień, imię i nazwisko prowadzącego Stopień, imię i nazwisko słuchacza Grupa szkoleniowa dr inż. Zbigniew Zieliński inż.
<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>
Wersja [Uwaga: Niniejszy wzór dostarczony jest w celu użytkowania z Unified Process for EDUcation. Tekst zawarty w nawiasach kwadratowych i napisany błękitną kursywą
Podstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
METODY REPREZENTACJI INFORMACJI
Politechnika Gdańska Wydział Elektroniki, Telekomunikacji i Informatyki Magisterskie Studia Uzupełniające METODY REPREZENTACJI INFORMACJI Ćwiczenie 1: Budowa i rozbiór gramatyczny dokumentów XML Instrukcja
Forum Client - Spring in Swing
Forum Client - Spring in Swing Paweł Charkowski. 0. Cel projektu Celem projektu jest próba integracji Spring Framework z różnymi technologiami realizacji interfejsu użytkownika, oraz jej ocena. Niniejszy
Temat : SBQL 1 obiektowy język zapytań.
Laboratorium Języki i środowiska przetwarzania danych rozproszonych Temat : SBQL 1 obiektowy język zapytań. Historia zmian Data Wersja Autor Opis zmian 23.4.2012 1.0 Tomasz Kowalski Utworzenie dokumentu
Automatyzacja procesu tworzenia i zarządzania Wirtualnymi Organizacjami w oparciu o wiedzę w zastosowaniu do architektur zorientowanych na usługi
IT-SOA Automatyzacja procesu tworzenia i zarządzania Wirtualnymi Organizacjami w oparciu o wiedzę w zastosowaniu do architektur zorientowanych na usługi Dariusz Król, W. Funika, B. Kryza, R. Słota, J.
Rozpatrzymy bardzo uproszczoną bazę danych o schemacie
Wykład 6 Algebraiczne podstawy implementacji strukturalnego języka zapytań (SQL) w systemach baz danych Oracle zapytania w języku algebry relacyjnych baz danych i ich odpowiedniki w SQL Rozpatrzymy bardzo
1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie
Opracował: dr hab. inż. Jan Magott KATEDRA INFORMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 207 Temat: Automaty Moore'a i Mealy 1. Cel ćwiczenia Celem ćwiczenia jest
Aproksymacja funkcji a regresja symboliczna
Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(x), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(x), zwaną funkcją aproksymującą
1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI
KARTA PRZEDMIOTU przedmiotu Stopień studiów i forma Rodzaj przedmiotu Grupa kursów Zaawansowane techniki analizy systemowej oparte na modelowaniu warsztaty Studia podyplomowe Obowiązkowy NIE Wykład Ćwiczenia
Systemy ekspertowe i ich zastosowania. Katarzyna Karp Marek Grabowski
Systemy ekspertowe i ich zastosowania Katarzyna Karp Marek Grabowski Plan prezentacji Wstęp Własności systemów ekspertowych Rodzaje baz wiedzy Metody reprezentacji wiedzy Metody wnioskowania Języki do
MODELOWANIE SYSTEMU OCENY WARUNKÓW PRACY OPERATORÓW STEROWNI
Inżynieria Rolnicza 7(105)/2008 MODELOWANIE SYSTEMU OCENY WARUNKÓW PRACY OPERATORÓW STEROWNI Agnieszka Buczaj Zakład Fizycznych Szkodliwości Zawodowych, Instytut Medycyny Wsi w Lublinie Halina Pawlak Katedra
Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej
Analiza i projektowanie obiektowe 2017/2018 Wykład 3: Model wiedzy dziedzinowej Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Model wiedzy dziedzinowej
Programowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 03 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas abstrakcyjnych i interfejsów. Wprowadzenie
Zadanie 2: Arytmetyka symboli
1 Cel ćwiczenia Zadanie 2: Arytmetyka symboli Wykształcenie umiejętności abstrahowania operacji arytmetycznych. Zapoznanie się i przećwiczenie mechanizmu tworzenia przeciążeń funkcji operatorowych. Utrwalenie
KARTA PRZEDMIOTU. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI Ogólne umiejętności posługiwania się komputerem
WYDZIAŁ INFORMATYKI I ZARZĄDZANIA Zał. nr 4 do ZW 33/01 KARTA PRZEDMIOTU Nazwa w języku polskim: Nazwa w języku angielskim: Kierunek studiów (jeśli dotyczy): Specjalność (jeśli dotyczy): Stopień studiów
Dotacje na innowacje. Inwestujemy w waszą przyszłość.
PROJEKT TECHNICZNY Implementacja Systemu B2B w firmie Lancelot i w przedsiębiorstwach partnerskich Przygotowane dla: Przygotowane przez: Lancelot Marek Cieśla Grzegorz Witkowski Constant Improvement Szkolenia
Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:
Egzaminy na plus Stres na minus! Zdawaj bezpłatne egzaminy Microsoft, Linux, C++ z nami i zadbaj o swoją karierę. Oferujemy Ci pierwsze certyfikaty zawodowe w Twojej przyszłej karierze, które idealnie
Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela
Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej Wydział Elektryczny, Politechnika Warszawska Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia Materiały dla nauczyciela Projekt
O pewnych związkach teorii modeli z teorią reprezentacji
O pewnych związkach teorii modeli z teorią reprezentacji na podstawie referatu Stanisława Kasjana 5 i 12 grudnia 2000 roku 1. Elementy teorii modeli Będziemy rozważać język L składający się z przeliczalnej
QUERY język zapytań do tworzenia raportów w AS/400
QUERY język zapytań do tworzenia raportów w AS/400 Dariusz Bober Katedra Informatyki Politechniki Lubelskiej Streszczenie: W artykule przedstawiony został język QUERY, standardowe narzędzie pracy administratora
Internet Semantyczny. Schematy RDF i wnioskowanie
Internet Semantyczny Schematy RDF i wnioskowanie Ewolucja Internetu Internet dzisiaj Internet Semantyczny Jorge Cardoso, The Syntactic and the Semantic Web, in Semantic Web Services: Theory, Tools, and
KARTA KURSU. Przetwarzanie dokumentów XML i zaawansowane techniki WWW
KARTA KURSU Nazwa Nazwa w j. ang. Przetwarzanie dokumentów XML i zaawansowane techniki WWW XML processing and advanced web technologies Kod Punktacja ECTS* 3 Koordynator dr Maria Zając Zespół dydaktyczny:
System zarządzający grami programistycznymi Meridius
System zarządzający grami programistycznymi Meridius Instytut Informatyki, Uniwersytet Wrocławski 20 września 2011 Promotor: prof. Krzysztof Loryś Gry komputerowe a programistyczne Gry komputerowe Z punktu
XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery
http://xqtav.sourceforge.net XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery dr hab. Jerzy Tyszkiewicz dr Andrzej Kierzek mgr Jacek Sroka Grzegorz Kaczor praca mgr pod
PRZEWODNIK PO PRZEDMIOCIE
Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy w ramach specjalności: Programowanie aplikacji internetowych Rodzaj zajęć: laboratorium PRZEWODNIK PO PRZEDMIOCIE I KARTA PRZEDMIOTU
Systemy baz danych w zarządzaniu przedsiębiorstwem. W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi
Systemy baz danych w zarządzaniu przedsiębiorstwem W poszukiwaniu rozwiązania problemu, najbardziej pomocna jest znajomość odpowiedzi Proces zarządzania danymi Zarządzanie danymi obejmuje czynności: gromadzenie
Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38
Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem zajęcia 1 dr Jakub Boratyński pok. A38 Program zajęć Bazy danych jako podstawowy element systemów informatycznych wykorzystywanych
Spis treści Informacje podstawowe Predykaty Przykłady Źródła RDF. Marek Prząda. PWSZ w Tarnowie. Tarnów, 6 lutego 2009
PWSZ w Tarnowie Tarnów, 6 lutego 2009 1 Interpretacja trójek i SWI-Prolog Składnia 2 3 4 Interpretacja trójek i SWI-Prolog Składnia Opis (ang. Resource Description Framework) jest specyfikacją modelu metadanych,
Wnioskowanie z danych zapisanych w zewnętrznych źródłach w systemie zarządzania wiedzą
Rozdział 26 Wnioskowanie z danych zapisanych w zewnętrznych źródłach w systemie zarządzania wiedzą Streszczenie. Rozdział prezentuje proces wnioskowania z danych przechowywanych w zewnętrznych źródłach.
Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.
Plan Procedura decyzyjna Reguły α i β - algorytm Plan Procedura decyzyjna Reguły α i β - algorytm Logika obliczeniowa Instytut Informatyki 1 Procedura decyzyjna Logiczna konsekwencja Teoria aksjomatyzowalna
Systemy ekspertowe. System ekspertowy wspomagający wybór zestawu komputerowego w oparciu o ontologie i system wnioskujący RacerPro
Systemy ekspertowe System ekspertowy wspomagający wybór zestawu komputerowego w oparciu o ontologie i system wnioskujący RacerPro Autorzy: 1 Wstęp Wybór zestawu komputerowego, ze względu na istnienie wielu
Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia)
Grupy pytań na egzamin magisterski na kierunku Informatyka (dla studentów niestacjonarnych studiów II stopnia) WERSJA WSTĘPNA, BRAK PRZYKŁADOWYCH PYTAŃ DLA NIEKTÓRYCH PRZEDMIOTÓW Należy wybrać trzy dowolne
Informatyka I. Standard JDBC Programowanie aplikacji bazodanowych w języku Java
Informatyka I Standard JDBC Programowanie aplikacji bazodanowych w języku Java dr inż. Andrzej Czerepicki Politechnika Warszawska Wydział Transportu 2017 Standard JDBC Java DataBase Connectivity uniwersalny
Architektury i protokoły dla budowania systemów wiedzy - zadania PCSS w projekcie SYNAT
Architektury i protokoły dla budowania systemów wiedzy - zadania PCSS w projekcie SYNAT A. Dudczak, C. Mazurek, T. Parkoła, J. Pukacki, M. Stroiński, M. Werla, J. Węglarz Poznańskie Centrum Superkomputerowo-Sieciowe
SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa
Autorzy scenariusza: SCENARIUSZ LEKCJI OPRACOWANY W RAMACH PROJEKTU: INFORMATYKA MÓJ SPOSÓB NA POZNANIE I OPISANIE ŚWIATA. PROGRAM NAUCZANIA INFORMATYKI Z ELEMENTAMI PRZEDMIOTÓW MATEMATYCZNO-PRZYRODNICZYCH
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04 Cel zajęć. Celem zajęć jest zapoznanie się ze sposobem działania popularnych kolekcji. Wprowadzenie teoretyczne. Rozważana w ramach niniejszych
Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki
Dariusz Brzeziński Politechnika Poznańska, Instytut Informatyki Object-oriented programming Najpopularniejszy obecnie styl (paradygmat) programowania Rozwinięcie koncepcji programowania strukturalnego
Ramowy plan kursu. Lp. Moduły Wyk. Lab. Przekazywane treści
Ramowy plan kursu Lp. Moduły Wyk. Lab. Przekazywane treści 1 3 4 Technologia MS SQL Server 2008 R2. Podstawy relacyjnego modelu i projektowanie baz. Zaawansowane elementy języka SQL. Programowanie w języku
Modelowanie hierarchicznych struktur w relacyjnych bazach danych
Modelowanie hierarchicznych struktur w relacyjnych bazach danych Wiktor Warmus (wiktorwarmus@gmail.com) Kamil Witecki (kamil@witecki.net.pl) 5 maja 2010 Motywacje Teoria relacyjnych baz danych Do czego
Metody indeksowania dokumentów tekstowych
Metody indeksowania dokumentów tekstowych Paweł Szołtysek 21maja2009 Metody indeksowania dokumentów tekstowych 1/ 19 Metody indeksowania dokumentów tekstowych 2/ 19 Czym jest wyszukiwanie informacji? Wyszukiwanie
OGÓLNA ARCHITEKTURA SYSTEMU SEMANTYCZNEJ INTEGRACJI GEOGRAFICZNYCH ŹRÓDEŁ DANYCH *)
STUDIA INFORMATICA 2005 Volume 26 Number 3 (64) Michał ŚWIDERSKI Politechnika Śląska, Instytut Informatyki OGÓLNA ARCHITEKTURA SYSTEMU SEMANTYCZNEJ INTEGRACJI GEOGRAFICZNYCH ŹRÓDEŁ DANYCH *) Streszczenie.
DEFINICJA. Definicja 1 Niech A i B będą zbiorami. Relacja R pomiędzy A i B jest podzbiorem iloczynu kartezjańskiego tych zbiorów, R A B.
RELACJE Relacje 1 DEFINICJA Definicja 1 Niech A i B będą zbiorami. Relacja R pomiędzy A i B jest podzbiorem iloczynu kartezjańskiego tych zbiorów, R A B. Relacje 2 Przykład 1 Wróćmy do przykładu rozważanego
Projektowanie oprogramowania
Wrocław, 27.09.2010 1. Warunki wstępne Projektowanie oprogramowania Warunkiem uczestnictwa w zajęciach jest zaliczenie przedmiotu: Podstawy inżynierii oprogramowania (ćwiczenia) Zajęcia składają się z
Metalogika (1) Jerzy Pogonowski. Uniwersytet Opolski. Zakład Logiki Stosowanej UAM
Metalogika (1) Jerzy Pogonowski Zakład Logiki Stosowanej UAM www.logic.amu.edu.pl pogon@amu.edu.pl Uniwersytet Opolski Jerzy Pogonowski (MEG) Metalogika (1) Uniwersytet Opolski 1 / 21 Wstęp Cel: wprowadzenie
Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000
Bazy Danych LITERATURA C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000 J. D. Ullman, Systemy baz danych, WNT - W-wa, 1998 J. D. Ullman, J. Widom, Podstawowy