Logiczna analiza tekstu

background image

Logiczna analiza tekstu

Większość współczesnych środków informatycznych obsługujących Internet wykorzystuje
lepiej lub gorzej określone operacje i reguły logicznej analizy tekstu. W tym kontekście,
znajomość przez nauczycieli metod logicznej analizy tekstu wydaje się być dobrze
uzasadniona. Zapoznanie się z ta dziedzina można rozpocząć od książki Witolda
Marciszewskiego „Metody analizy tekstu naukowego” (1981 r.). Chociaż praca ta była
przygotowana dla wydawnictwa jako poradnik, czy przewodnik po wskazanej w tytule
książki dziedzinie wiedzy, przeznaczony dla nauczycieli akademickich i studentów, to także
prezentowała nowatorskie idee oraz wytyczała nowe kierunki badań. Zwłaszcza prekursorskie
było zaproponowanie, jako głównego celu logicznej analizy tekstu, badania logicznego
związku pomiędzy tematem a rematem, tj. pomiędzy tymi fragmentami tekstu, które
reprezentują wiedzę potrzebną do wyznaczenia innej wiedzy, a tymi fragmentami tekstu,
które reprezentują wiedzę wyznaczoną na podstawie tematu. W tym ujęciu, istotą
poprawności logicznej jednostki tekstu jest występowanie logicznego stosunku pomiędzy
tematem i rematem. Ten związek logiczny ustala się dokonując formalnego opisu relacji
określających zwartość tematyczną tekstów z danej dziedziny wiedzy, do której należy
analizowany tekst. Analizowane relacje zwane są relacjami nawiązywania. Na podstawie
tych relacji wyprowadzane są jedne teksty z drugich, adekwatnie do wyznaczania jednej
wiedzy przez drugą. W sensie wyprowadzalności tekstów, w dowolnym wyprowadzeniu
jedne teksty są następnikami innych, w tym teksty wyprowadzane (rematy) są następnikami
tekstów (tematów), z którymi pozostają w relacji nawiązywania. Z tego powodu, do badania
struktury tematycznej tekstu można zastosować aparat pojęciowy teorii krat. Ze względu na
znaczenie pojęć tematu i rematu dla analizy tekstu, postuluje się utworzenie teorii, którą autor
omawianej pracy proponuje nazwać logiczną teorią tekstu.

Formalizacja języka dziedzin wiedzy

Omówimy teraz standaryzację procedur logicznej analizy tekstu określoną przez

wymogi programowania logicznego.

W dowolnym systemie reprezentacji wiedzy reprezentowana jest wiedza z pewnej

dziedziny. Język, w którym wyrażana jest ta wiedza nazywamy językiem tej dziedziny
wiedzy
. Istotą programowania logicznego jest

1)

taka formalizacja tekstu zadania, wyrażonego w języku jakiejś dziedziny wiedzy,
która reprezentuje wiedzę logiczną o danych i faktach, do których odwołuje się
(nawiązuje) tekst zadania, a więc reprezentacja tego co jest dla tego tekstu i dla danej
dziedziny wiedzy tematem, utożsamianym w programowaniu logicznym z siecią
semantyczną,

2)

formalizacja relacji nawiązywania, ustalających sekwencje operacji prowadzących od
danych i faktów do innych danych i faktów lub do nowych danych (szukanych) i
ustaleń (tj. do rematu); w programowaniu logicznym sekwencjom tych operacji
odpowiada przestrzeń rozwiązań, a zbiorowi relacji nawiązywania - baza wiedzy,

3)

formalizacja wszystkich faktów określonych przez relacje nawiązywania występujące
w tekście zadania; w programowaniu logicznym reprezentacji tych faktów odpowiada
dynamiczna baza danych,

4)

formalizacja zbioru danych, niekoniecznie występujących w tekście zadania, do
których trzeba się odwołać, aby uzyskać to co jest szukane; w programowaniu
logicznym odpowiada temu zewnętrzna baza danych,

background image

5)

formalizacja zapytań, określających to co szukane i co ma być ustalone, a więc
reprezentacja tego co jest dla danego tekstu zadania rematem.

W celu dokonania tak rozumianej formalizacji tekstów języka dziedziny wiedzy wyróżniamy
w nim:

1)

zaimki nieokreślone: „ktoś”, „coś”, „jakiś”, itp., oznaczające dowolnie ustalony
przedmiot,

2)

nazwy indywidualne, oznaczające indywidua, np. „ten człowiek”, „to dziecko”,
„miasto Warszawa”, „to co jest aktualnie liczone”, „człowiek, o którym jest tu
mowa”, „przedmiot, który mamy na uwadze”, „dowolnie ustalony na czas rozważań
przedmiot”, itp.

3)

nazwy proste, które nie są tworzone z innych nazw, np. „dom”, „liczba”

4)

funktory nazwotwórcze tworzące z nazw (zaimków) nowe nazwy (zaimki),
oznaczające operacje i ich złożenia

5)

nazwy złożone, zbudowane z nazw prostych za pomocą funktorów nazwotwórczych,
np. „wielki, biały stół”

6)

zaimki złożone: „coś białego”, „jakaś liczba”, itp.

7)

dane – nazwy odnoszące się bezpośrednio do stanów rzeczy, np. „dana długość”,
„dane nazwisko”, „data urodzenia” w wyrażeniu „znana jest data urodzenia Jana
Kowalskiego”, oraz wszystkie nazwy występujące w wyrażeniach odwołujących się
do wiedzy człowieka, itp.

8)

Szukane – nazwy odnoszące się pośrednio do stanów rzeczy, np. „szukana długość”,
„szukane nazwisko”, nazwy tego co szukane i wskazywane przez pytania, itp.

9)

umiejscowienie tekstu - nazwa będąca identyfikatorem położenia nazwy w tekście,
np. „w środku tekstu”, „na wstępie”, „piąta z kolei dana”, „druga z kolei szukana”,
„następująca po [nazwa]” , „w cytowanej książce”, itp.

10)

funktory zdaniotwórcze: zwroty typu „każde ... jest ...”, „...biegnie”, itp. oraz
spójniki zdaniowe „nieprawda, że...”, „...i...”, „...lub...”, „jeżeli..., to...”, „...wtedy i
tylko wtedy...”, a tak
że zwroty kwantyfikujące „każdy...spełnia warunek....”,
„pewien... spełnia warunek...”, „ ...identyczne z...”,

11)

fakty - wyrażenia zdaniowe łączone zwrotami „jest faktem, że ...”, „załóżmy, że
...”, „prawd
ą jest, że ...” i wszystkimi zwrotami o tym samym znaczeniu,
wskazującymi na znany stan rzeczy

12)

ustalenia - wyrażenia łączone zwrotem „jest ustalone, że ...”, „należy odpowiedzieć
na pytanie czy ...” i wszystkimi zwrotami o tym samym znaczeniu, wskazujące
pośrednio na stan rzeczy; ustalenia odpowiadają więc pewnego rodzaju pytaniom

13)

funktory odwołańsą to wszelkie znaki, w tym zwroty odwołujące się do innych
tekstów, czy części danego tekstu np. do wyrażeń zdaniowych zawartych w tekście,
np. rozpoczęcie wyrażenia zdaniowego z dużej litery i zakończenie go kropką jest
odwołaniem do wydzielonego przez ten funktor wyrażenia zdaniowego, funktorami
odwołań są także dla nazw zwrot „...jest...”, a dla wyrażeń zdaniowych zwroty „....
Stąd wynika, że ...”, „..., a więc ...”, „Zatem ....”, itp. oraz zwroty określające
cytowanie lub bycie faktem czy ustaleniem,

14)

odwołania – wyrażenia tworzone za pomocą funktorów odwołań

15)

wyrażenia zdaniowe, które zbudowane są z wyróżnionych nazw za pomocą
wyróżnionych funktorów i te wyrażenia, które dają się tak przeformułować, aby były
zbudowane z wyróżnionych nazw i funktorów.

background image

Następnie budujemy schematy (wzory, diagramy, tabele, itp. )

1

wyróżnionych wyrażeń

zdaniowych języka danej dziedziny wiedzy tak, aby każdemu takiemu schematowi,
oddzielnie, odpowiadało jakieś wyrażenie tego języka. W standardowej notacji logiki
pierwszego rzędu formalizację możemy dokonać następująco:

1)

zmienne: x

1

, x

2

, x

3

, ... , reprezentują zaimki nieokreślone, np. wyrażenie zdaniowe

„każdego dnia ktoś biegnie jakąś aleją parku jakiegoś miasta”

jest równoznaczne

„każdego dnia człowiek jakiś biegnie aleją parku jakąś miasta jakiegoś.”

a po zamianie zaimków na zmienne

„każdego dnia człowiek x

1

biegnie aleją parku x

2

miasta x

3

.”

2)

stale: c

1

, c

2

, c

3

, ... , reprezentują nazwy indywidualne, np. wyrażenie zdaniowe

„jakiś człowiek mieszka w mieście Warszawa”

c

1

człowiek x

1

mieszka w c

1

3)

dziedziny deklarowane (typy zmiennych): D

1

, D

2

, D

3

, ... , reprezentują nazwy proste,

„każdego dnia człowiek biegnie w mieście”

D

1

D

2

D

3

4)

symbole funkcyjne: f

1

1

, f

2

1

, f

3

1

, ... , f

1

k

, f

2

k

, f

3

k

, ... , reprezentują funktory nazwotwórcze

jeden, ..., k-argumentowe, ... , np.

człowiek x

1

mieszkający w c

1

f

1

2

( f

1

1

( x

1

) , c

1

)

5)

termy: niech t

1

, t

2

, t

3

, ..., reprezentują dowolne zaimki (proste i złożone) – zmienne i stałe

są termami, jeśli t

1

, t

2

, t

3

, ...,t

k

są termami, a f

n

k

jest symbolem funkcyjnym, to f

n

k

(t

1

, t

2

, t

3

,

...,t

k

) jest termem, np. schemat w punkcie 4) jest termem powstałym z symbolu

funkcyjnego f

1

2

, termu f

1

1

(x

1

) oraz stałej c

1

6)

dziedziny: niech H

1

, H

2

, H

3

, ... , reprezentują dowolne nazwy – dziedzinami są dziedziny

deklarowane (np. standardowe) oraz jeśli H

1

, H

2

, H

3

, ... , H

k

są dziedzinami, , a f

n

k

jest

symbolem funkcyjnym, to f

n

k

(H

1

, H

2

, H

3

, ...,H

k

) jest dziedziną wyznaczoną przez ten

symbol, np. jeżeli dziedzina D

1

reprezentuje nazwę „człowiek”, a dziedzina D

2

– nazwę

1

Należy zauważyć, że współcześnie formalizacji dokonuje się także np. w języku diagramów, tj. sieci

semantycznych i przestrzeni rozwiązań, posiadających strukturę grafów skierowanych. Por. R. Kowalski, Logika
w rozwi
ązywaniu zadań, Warszawa 1989, s. 33.

background image

„miasto”, natomiast symbol funkcyjny f

1

2

reprezentuje zwrot „... mieszkający w ...”, to

f

1

2

(D

1

,D

2

) jest dziedziną reprezentującą wyrażenie nazwowe „ człowiek mieszkający w

mieście”

7)

deklaracja symbolu funkcyjnego: niech H

1

, H

2

, H

3

, ... są dziedzinami deklarowanymi

oraz H jest dziedziną różną od nich, dalej niech f

n

k

jest symbolem funkcyjnym, wtedy

wyrażenie H = f

n

k

(H

1

, H

2

, H

3

, ...,H

k

) nazywamy deklaracją symbolu funkcyjnego f

n

k

,

8)

deklaracja dziedzin: niech D

1

, D

2

, ..., D

k

są dziedzinami standardowymi, a H

1

, H

2

, ..., H

n

pewnymi ustalonymi dziedzinami, w których nie występują wymienione dziedziny
standardowe, wtedy wyrażenie D

1

, D

2

, ..., D

k

= H

1

; H

2

; ...; H

n

nazywamy deklaracją

dziedzin D

1

, D

2

, ..., D

k

i czytamy: dziedziny D

1

, D

2

, ..., D

k

utożsamiamy z dziedzinami H

1

lub H

2

lub ... lub H

n

,

9)

deklaracja

zewnętrznej

dynamicznej

bazy

danych:

deklaracja

dziedzin

reprezentujących nazwy zewnętrznych w stosunku do tekstu zadania, zbiorów danych

10)

deklaracja miejsca danych w zewnętrznej bazie danych: deklaracja dziedziny miejsca
danej lub szukanej

11)

predykaty: P

1

1

, P

2

1

, P

3

1

, ... , P

1

k

, P

2

k

, P

3

k

, ... , reprezentują funktory zdaniotwórcze,

tworzące z nazw albo zaimków wyrażenia zdaniowe, jedno, ..., k-argumentowe, ..., np.

człowiek x

1

mieszka w c

1

P

1

2

( f

1

1

( x

1

) , c

1

)

12)

stałe logiczne:

¬

,

,

, ⇒,

,

,

,

=

, reprezentują odpowiednio wymienione spójniki

zdaniowe i zwroty kwantyfikujące oraz identyczność.

13)

Znaki techniczne: nawiasy i przecinki – reprezentują obszar wiązania przez funktory
składników tekstu, np. jeśli w napisie „A

B

C” nie umieścimy nawiasów (. ), to nie

wiadomo czy napis ten jest schematem jakiegokolwiek zdania, gdyż nie reprezentuje
wiedzy o tym, które ze zdań jest tu połączone spójnikiem „lub”, a które spójnikiem „i”,
chyba, że wcześniej ustalimy kolejność łączenia przez spójniki logiczne (tzw. siłę
wiązania); napis „(P

1

1

(c

1

)

P

1

1

(x

1

))

P

2

1

(c

2

)” jest schematem jakiegoś wyrażenia

zdaniowego,

14)

deklaracje predykatów: niech H

1

, H

2

, H

3

, ... , H

k

są deklarowanymi dziedzinami, , a P

n

k

jest predykatem, to P

n

k

(H

1

, H

2

, H

3

, ...,H

k

) deklaracją predykatu,

15)

formuły atomowe: niech t

1

, t

2

, t

3

, ...,t

k

, t

n

są termami, a P

n

k

jest predykatem, wtedy

P

n

k

(t

1

, t

2

, t

3

, ...,t

k

) jest formułą atomową,

16)

formuły: deklaracje dziedzin, deklaracje predykatów, formuły atomowe są formułami,
niech A, i B są formułami oraz t i h termami, wtedy formułami są

¬

(A), ( A)

(B) , (A)

(B), (A) ⇒ (B),

,

x

k

(A),

x

k

(A) , t

=

h,

17)

deklaracja wewnętrznej bazy danych: deklaracja predykatów, których dziedziny są
dziedzinami danych lub szukanych

18)

formuły faktów - formuły będące schematami faktów,

19)

formuły ustaleń formuły będące schematami ustaleń

20)

formuły reguł - formuły będące schematami odwołań

Uwaga. Rozróżnienie: wewnętrzna, zewnętrzna baza danych nie jest natury czysto
technicznej, lecz związane jest ze strukturą wielu tekstów wyrażonych w jakimś języku

background image

wiedzy. I tak, wiązanie przez predykaty danych z szukanymi określone jest powiązaniami
wewnątrz tekstu, natomiast określenie termów jako należących do dziedziny danych lub
szukanych oraz ustalenie ich miejsca może jedynie odbyć się na zewnątrz tekstu.

Formuły poprawnie zbudowane nie zawierające dziedzin nazywamy formułami

rachunku kwantyfikatorów, a zbiory deklaracji związane z tymi formułami - środowiskiem
okre
śloności tych formuł (environ). Na formalizację analizy tekstu języka danej dziedziny
wiedzy składają się więc (w nawiasach podano nazwy tych składników w języku Turbo
Prolog):
1. Środowisko

E1.

Deklaracja dziedzin (DOMAINS), w tym zewnętrznej bazy danych

E2.

Deklaracja dynamicznej bazy danych (DATABASE)

E3.

Deklaracja predykatów (PREDICATES)

1.

Lista ustaleń (GOAL): lista (koniunkcja) formuł atomowych w których występują
zmienne reprezentujące to co szukane

2.

Lista formuł (CLAUSES)

F1.

Formuły faktów

F2.

Formuły reguł

W formalizacji tekstów języka danej dziedziny wiedzy wykorzystuje się także

następujące zasady schematyzacji:

Schemat 1.

Dowolna część wyrażenia języka, która odnosi się do tej samej wiedzy ma ten

sam schemat.
Schemat 2.

Każda schematyzacja wyrażenia zdaniowego poprzedzona jest deklaracjami

dziedzin i predykatów reprezentujących odpowiednio nazwy i funktory zdaniotwórcze wiążące
te nazwy w danym wyra
żeniu zdaniowym. Przykład

x

2

x

3

x

4

P

1

3

P

1

3

Jeżeli jakaś osoba pożyczy coś drugiej osobie, a ta pożyczy to trzeciej, to trzecia osoba może

to zwrócić pierwszej

P

2

3

x

1

Dziedziny:
D

1

– osoba,

D

2

– przedmioty pożyczane/zwaracane,

Predykaty:
P

1

3

- .... pożyczy ..., ...,

P

2

3

- .... zwróci ..., ...,

Deklaracje:
P

1

3

(D

1

, D

2

, D

1

) – deklaracja reprezentuje wiedzę o tym, że osoba pożycza przedmiot, osobie,

P

2

3

(D

1

, D

2

, D

1

) - deklaracja reprezentuje wiedzę o tym, że osoba zwraca przedmiot, osobie,

Schemat przykładowego wyrażenia zdaniowego ma postać

background image

P

1

3

(D

1

, D

2

, D

1

)

P

2

3

(D

1

, D

2

, D

1

)

((P

1

3

(x

1

, x

2

, x

3

)

P

1

3

(x

3

, x

2

, x

4

)) ⇒ P

2

3

(x

4

, x

2

, x

1

))

Środowisko

Formuła

Schemat 3

Schematyzując wyrażenie, te same nazwy i zaimki nie poprzedzone

bezpośrednio zwrotami kwantyfikującymi oznaczamy za pomocą tych samych symboli
zmiennych, a je
żeli poprzedzone są bezpośrednio wyrażeniami kwantyfikującymi, oznaczamy
je ró
żnymi wcześniej nie występującymi zmiennymi.
Schemat 4

Jeżeli w prostym wyrażeniu zdaniowym (nie zawierającym spójników

zdaniowych) nazwy poprzedzone są bezpośrednio zwrotami kwantyfikującymi, to zwroty
kwantyfikuj
ące wraz z nazwami zastępujemy różnymi, wcześniej nie występującymi
zmiennymi, a stosowne znaki kwantyfikatorów wraz z odpowiadaj
ącymi im zmiennymi
wypisujemy na pocz
ątku formuły zgodnie z porządkiem wykonywanej schematyzacji. Np.

Każdy matematyk jest uczniem pewnego matematyka

x

1

P

1

2

x

2

P

1

2

(D

1

, D

1

)

x

1

x

2

P

1

2

(x

1

, x

2

)

Gdzie D

1

jest dziedziną reprezentującą matematyków.

Schemat 5

We wszystkich schematach, w których występują kwantyfikatory, każdy

kwantyfikator musi wiązać inną zmienna, np. formuła

x

1

P

1

1

(x

1

)

x

1

P

1

1

(x

1

) nie może

być poprawnym schematem, ale formuła

x

1

P

1

1

(x

1

)

x

2

P

1

1

(x

2

) może nim być.

Uwaga. W formalizacji stosowanej zazwyczaj w logice formalnej dziedziny zapisuje się w
postaci jednoargumentowych predykatów, np. zamiast P

1

2

(D

1

, D

2

)

x

1

x

2

P

1

2

(x

1

, x

2

) można

napisać:

x

1

(D

1

(x

1

) ⇒

x

2

(D

2

(x

2

)

P12(x

1

, x

2

))), a w notacji teoriomnogościowej :

x

1

D

1

x

2

D

2

P

1

2

(x

1

, x

2

).

Można także zmienne odnoszące się do różnych dziedzin oznaczać w różny sposób,

np. w notacji teoriomnogościowej zbiory oznacza się dużymi literami a ich elementy małymi.
Złożoność uzyskanych napisów w tych schematyzacjach jest jednak znacznie większa niż w
proponowanej wyżej metodzie, dlatego też ta metoda schematyzacji przyjęła się w
programowaniu logicznym. 

Nie wchodząc w szczegóły programowania logicznego w języku Turbo Prolog,

zauważmy na zakończenie tej części rozważań, że program komputerowy napisany w tym
języku reprezentuje wiedzę o logicznej analizie zadania jako jednostki tekstu, analizie
ustalającej logiczny związek pomiędzy tym co jest tematem zadania i tym co jest rematem
zdania, czy upraszczając: pomiędzy tym co jest dane, a tym co jest szukane. To spostrzeżenie
jest silną motywacją do poczynienia pewnych uogólnień.

background image

1.7 Reprezentowanie wiedzy o wartościach logicznych zdań – tabele
prawdziwo
ściowe

Dotąd rozważaliśmy schematy zdań będące reprezentacjami wiedzy o tym, w jaki

sposób zdania złożone są zbudowane ze zdań prostych. Nie interesowało nas, czy zdanie
reprezentuje wiedzę o pewnym stanie rzeczy, czy też nie, tzn., czy zdanie to jest prawdziwe
w pewnej dziedzinie wiedzy (ma wartość logiczną prawdy), czy nie (ma wartość logiczną
fałszu). Nie była też brana pod uwagę wiedza o tym, jaka jest zależność pomiędzy wartością
logiczną zdania złożonego utworzonego przy pomocy spójników ze zdań prostych a
wartościami logicznymi tych zdań.

Aby móc reprezentować tego rodzaju wiedzę, wartości prawdy i fałszu oznaczymy,

odpowiednio, symbolami 1 i 0.

W reprezentacji standardowej, będącej wynikiem formalizacji, wiedza o zasadach

określania wartości logicznej zdań złożonych jest zazwyczaj przedstawiana za pomocą tabel
prawdziwościowych , budowanych dla schematów tych zdań. Tabele prawdziwościowe dla
formuł są wzorami, według których określamy wartość logiczną zdania złożonego w
zależności od wartości zdań składowych:

A

B

¬

A

A

B

A

B

A ⇒ B

A

B

0

0

1

0

0

1

1

0

1

1

1

0

1

0

1

0

0

1

0

0

0

1

1

0

1

1

1

1

Tab. 1

Formuły, które są schematami tylko zadań prawdziwych nazywamy tautologiami, a

takie, które są schematami tylko zdań fałszywych nazywamy kontrtautologiami.

To czy formuła jest tautologią czy nie możemy sprawdzić korzystając z tabel

prawdziwościowych. Np. każda formuła postaci (A

(B

C)) ⇒ (

¬

C ⇒ A) jest tautologią,

gdyż na podstawie tabel prawdziwościowych można wykazać, że przy dowolnych
wartościach logicznych składowych A, B, C formuła reprezentuje zadanie prawdziwe (Tab. 2)
Zauważmy, że na podstawie tabel prawdziwościowych dla spójników zdaniowych
dysponujemy następującą wiedzą:

formuła

¬

A jest tautologią, gdy dowolne zdanie o schemacie A jest fałszywe, co oznacza,

ż

e A jest kontrtautologią,

formuła A

B jest tautologią, gdy w dowolnym zdaniu o schemacie A

B co najmniej

jedno ze zdań o schematach A, B jest prawdziwe, w szczególności, gdy jedna z formuł A
lub B jest tautologią,

formuła A

B jest tautologią, gdy w dowolnym zdaniu o schemacie A

B oba zdania

schematach A, B są prawdziwe, w szczególności, gdy obie formuły A i B są tautologiami,

formuła A ⇒ B jest tautologią, gdy w dowolnym zdaniu o schemacie A ⇒ B, jeżeli
zdanie o schemacie A jest prawdziwe, to zdanie o schemacie B jest prawdziwe, w
szczególności, jeżeli formuła A jest tautologią, to B jest też tautologią,

formuła A

B jest tautologią, gdy w dowolnym zdaniu o schemacie A

B oba zdania

o schematach A, B mają tę samą wartość logiczną, w szczególności, gdy obie formuły A i
B są tautologiami lub kontrtautologiami,

background image

A

B

C

B

C

¬

C

A

(B

C

¬

C

A

(A

(B

C))

(

¬

C

A)

0

0

0

0

1

0

0

1

1

0

0

0

1

0

1

1

0

1

0

1

1

0

0

1

1

1

0

1

1

1

1

1

0

0

1

1

0

0

1

1

1

0

1

1

0

1

1

1

0

1

1

1

0

0

1

1

1

1

1

1

0

1

1

1

Tab. 2

Rozważmy teraz formuły poprzedzone kwantyfikatorami. Niech A(x) jest dowolną
formułą, w której x jest jedyną zmienną wolną. Oznaczmy zbiór wszystkich zdań, których
schematem jest ta formuła przez P, gdy wszystkie zdnia tego zbioru są prawdziwe, przez
F, gdy są fałszywe, a przez T, gdy niektóre zdania tego zbioru są prawdziwe, a niektóre
fałszywe. Wiedzę o wartościach logicznych zdań, których schematem jest formuła

xA(x) lub formuła

xA(x) reprezentuje tabela

A(x)

xA(x)

xA(x)

P

1

1

F

0

0

T

0

1

Tab. 3

Wiedzę reprezentowaną przez powyższą tabelę możemy też sformułować następująco:

jeżeli formuła

xA(x) jest schematem zdania prawdziwego, to formuła A(x) jest

schematem zdań wśród których każde zdanie jest prawdzie, np. zdanie o schemacie A(c),
gdzie wybór termu c nie zależy od formuły A(x), a jedynie od dziedziny argumentu x, jest
więc dowolny,

jeżeli formuła

xA(x) jest schematem zdania prawdziwego, to formuła A(x) jest

schematem zdań wśród których co najmniej jedno zdanie jest prawdzie, np. zdanie o
schemacie A(c), gdzie wybór termu c zależy od formuły A(x) i od dziedziny argumentu x,
a więc może być dokonany tylko raz podczas formalizacji tekstu,

jeżeli formuła

¬∀

xA(x) jest schematem zdania prawdziwego, to formuła

¬

A(x) jest

schematem zdań wśród których co najmniej jedno zdanie jest prawdzie, np. zdanie o
schemacie

¬

A(c), gdzie wybór termu c zależy od formuły A(x) i od dziedziny argumentu

x, a więc może być dokonany tylko raz podczas formalizacji tekstu,

jeżeli formuła

¬∃

xA(x) jest schematem zdania prawdziwego, to formuła

¬

A(x) jest

schematem zdań wśród których każde zdanie jest prawdzie, np. zdanie o schemacie

¬

A(c), gdzie wybór termu c nie zależy od formuły A(x), a jedynie od dziedziny

argumentu x, jest więc dowolny,

Wykorzystując powyższą wiedzę, sprawdzanie czy schemat danego zdania jest tautologią
można dokonywać na dwa sposoby:
1.

zbadać, czy wartość logiczna prawdziwego zdania złożonego o danym schemacie nie
zależy od wartości logicznej zdań składowych – jest sprawdzanie wprost,

background image

2.

zbadać, czy założenie, że zdanie złożone o danym schemacie ma wartość logiczną fałszu,
może prowadzić do sytuacji, w której zdanie przyjmuje dwie różne wartości logiczne czy
też, w której pewne zdanie i jego negacja są jednocześnie prawdziwe lub jednocześnie
fałszywe, tzn. zachodzi sprzeczność – jest to sprawdzanie nie wprost.

Zauważmy, że sprawdzanie tautologiczności bazuje na wnioskowaniu, a opisane zasady
sprawdzania można precyzyjniej przedstawić w postaci następujących schematów:

(NN)

A

A

¬¬

(K)

A

B

A

(NK)

B

A

B

A

¬

¬

¬

|

)

(

(A)

B

A

B

A

|

(NA)

A

B

A

¬

¬

)

(

(C)

B

A

B

A

|

¬

(NC)

B

A

B

A

¬

¬

)

(

(EX)

)

(

)

(

c

A

x

xA

(NEX)

)

(

)

(

x

A

x

xA

¬

¬∃

(ALL)

)

(

)

(

c

A

x

xA

(NALL)

)

(

)

(

c

A

Ax

x

¬

¬∀

Gdzie znak „|” oznacza rozgałęzienie wywodu, a ograniczenia nałożone na term są takie

jak poprzednio.

Logicy w XX w. wykazali, że zaprezentowana tu wiedza o formalizacji tekstów języków

dziedzin wiedzy jest wystarczająca do sprawdzenia nie wprost czy dowolna formuła jest
tautologią, jest to tzw.

metoda tabel analitycznych. Metoda ta jest także skuteczna do

badania poprawności rozumowań prezentowanych w tekstach wyrażających wiedzę z
dowolnych dziedzin oraz do określenia szerokiej klasy formuł (tzw.

klauzul hornowskich),

dla których możliwa jest automatyzacja rozumowań przez komputery. Tak rozumiana
automatyzacja jest przedmiotem programowania logicznego.

1.8 Elementy logicznej teorii tekstu

Podsumowując rozważania dotyczące formalizacji naszkicujemy, podając listę

stosownych definicji, aparat pojęciowy umożliwiający sformułowanie logicznej teorii tekstu.
Przez wiedzę będziemy rozumieć, jak poprzednio, informację przetwarzaną przez umysł
człowieka, a przez reprezentację wiedzy, przedstawianie (kodowanie) wiedzy za pomocą
różnorakich środków w ramach systemów komunikacji międzyludzkiej. Reprezentacje
wiedzy są więc tekstami. Zrelatywizowanie reprezentacji wiedzy do dziedzin wiedzy
prowadzi do wyodrębnienia

tekstowych dziedzin wiedzy, a wyrażanie tych tekstów w

jakimś języku, do wyodrębnienia

języka dziedziny wiedzy. Gdy wszystkie równokształtne

background image

teksty reprezentują tę samą wiedzę ( w szczególności są pusto spełnione), a równokształtność
jest kongruencją w tekstowej dziedzinie wiedzy, to tekstową dziedzinę wiedzy nazywamy
systemem reprezentacji wiedzy.

Definicja 1
Strukturę relacyjną <

U, U

0

,

ε

,

R> nazywamy tekstową dziedziną wiedzy, gdy U jest

niepustym zbiorem wszystkich tekstów reprezentujących wiedzę z pewnej dziedziny,

U

0

wyróżnionym niepustym podzbiorem zbioru

U zwanym bazą tekstową,

ε

jest relacją

częściowego porządku określoną na zbiorze

U zwaną relacją zawierania się tekstów, a R jest

ustalonym zbiorem relacji określonych w

U zwanych relacjami nawiązywania tekstów.

Definicja 2
Niech

TDW = < U, U

0

,

ε

,

R> jest tekstową dziedziną wiedzy.

(a)

Dwa teksty

α

,

β∈

Urównokształtne, gdy struktury relacyjne powstałe przez obcięcie

systemu

TDW odpowiednio do zbiorów {t

U : t

ε

α

}, {t

U : t

ε

β

} wszystkich tekstów

zawartych w tekstach

α

,

β

są izomorficzne oraz części tekstu

α

pozostają w tych samych

relacjach w systemie

TDW co ich obrazy izomorficzne zawarte w tekście

β

.

(b)

Tekst

α

jest

wyprowadzalny ze zbioru tekstów X

U, co zapisujemy X |-

R

α

, gdy istnieje

taki tekst

β

, zwany

wyprowadzeniem tekstu

α

ze zbiory X, i istnieje taki ciąg tekstów

α

1

,

α

2

, ...,

α

n

U, że spełnione są warunki

(1)

teksty

α

1

,

α

2

, ...,

α

n

zawarte są w tekście

β

,

(2)

α

n

=

α

,

(3)

dla dowolnych i

n: bądź

α

i

X, bądź istnieją takie i

1

, i

2

, ..., i

k

< i oraz istnieje taka

relacja r

R, że <

α

i1

,

α

i2

, ...,

α

ik

,,

α

i

>

r

(4)

β

jest najmniejszym tekstem w <

U,

ε

> spełniającym warunki (1)-(3).

(c)

Ramą zbioru tekstów X

U nazywamy zbiór Fr(X) = {

α∈

U : X |-

R

α

}

(d)

Poprawnie zbudowanymi nazywamy teksty należące do zbioru Fr(U

0

).

(e)

Dla dowolnych tekstów

α

,

β

U,

α

β

wttw istnieje taki zbiór X tekstów, że

β

X i X |-

R

α

, napis „

α

β

” czytamy:

α

nawiązuje do

β

, lub

α

jest następnikiem

β

,

(f)

Dla dowolnego tekstu

α∈

U, zbiór Ex(

α

) = {t

U : t

ε

α

} nazywamy

budową tekstu

α

.

(g)

Tekst

β

jest

rematem tekstu

α

wttw

β

Fr(U

0

),

α

β

,

β

Ex(

α

) oraz nie istnieje taki

tekst t

Ex(

α

), że t

≥β

.

(h)

Tekst t jest

tematem tekstu

α

wttw t

Fr(U

0

),

α

t, t

Ex(

α

) oraz każdy następnik t

należący do

Ex(

α

) jest rematem

α

.

(i)

Dowolny tekst nazywamy

jednostką tekstu, gdy posiada w swojej budowie rematy i

tematy oraz gdy ze zbioru wszystkich tematów tego tekstu wyprowadzalny jest każdy z
rematów.

Zauważmy, że dowolne wyprowadzenie tekstu poprawnie zbudowanego jest jednostką

tekstu. Ważne jest także stwierdzenie, że dla dowolnej tekstowej dziedziny wiedzy

TDW, w

której wszystkie równokształtne teksty reprezentują tę samą wiedzę, eżeli relacja „~”
równokształtności tekstów jest kongruencją w

TDW, to struktura ilorazowa TDW/~ jest

także tekstową dziedziną wiedzy. Uzasadnione jest więc sformułowanie następującej
definicji:

background image

Definicja 3
Niech w tekstowej dziedzinie wiedzy

TDW wszystkie równokształtne teksty reprezentują tę

sama wiedzę, a relacja „~” równokształtności tekstów jest kongruencją w

TDW. Wtedy

strukturę ilorazową

TDW/~ nazywamy systemem reprezentacji wiedzy, relacje

nawiązywania nazywamy

relacjami konkatenacji, a o wyprowadzeniu danego tekstu

mówimy, że jest

konkatenacją pewnego ciągu tekstów określonego przez definicję

wyprowadzenia tekstu. Tekstami są

typy tekstów równokształtnych.

Przyjmijmy dalej, że

wiedza logiczna odnosi się do przetwarzania informacji we

wszechświecie określającej ogólną budowę, cechy, przyporządkowania obiektów
odnoszących się do danej dziedziny wiedzy oraz relacje pomiędzy tymi obiektami .

Definicja 4
Język, w którym przedstawiamy schematycznie, za pomocą schematów, tj. formuł, wzorów,
planów, diagramów itp., wiedzę logiczną nazywamy

językiem sformalizowanym. Język ten

jest określony przez cztery zbiory symboli < Al., Tr, Fm, W>, Al jest

alfabetem, Tr –

zbiorem

termów, Fm – zbiorem formuł, a W jest rodziną zbiorów formuł takich, że do

każdego z tych zbiorów należą formuły reprezentujące wiedzę o tej samej

wartości logicznej.

Alfabet składa się z ze

stałych i zmiennych indywiduowych, będących zarazem termami,

symboli funkcyjnych – wiążących stałe i zmienne w termy, predykatów – wiążących stałe i
zmienne w formuły,

spójników – wiążących formuły w inne formuły, kwantyfikatorów

wiążących zmienne i formuły w inne formuły oraz symboli pomocniczych (np. nawiasów,
ramek, kropek, linii, strzałek itd.).

Przykładem języka sformalizowanego jest język będący wynikiem formalizacji

(schematyzacji) języka dowolnej dziedziny wiedzy.

Definicja 5
Systemem reprezentacji wiedzy logicznej
nazywamy system reprezentacji wiedzy, w
którym zbiorem tekstów bazowych jest zbiór wszystkich symboli języka sformalizowanego, a
zbiór relacji konkatenacji pozwala
1)

wyróżnić wszystkie

składniki języka sformalizowanego,

2)

wyprowadzić

formuły poprawnie zbudowane,

3)

tworzyć

teksty wywodów prowadzących od formuł o określonej wartości logicznej do

formuł o określonej wartości logicznej (niezmienniczość wartości logicznych względem
wywodów).

Systemy iteracyjne

P

atrząc z poziomu informatyki zauważamy, że korzystanie ze środków informatycznych, czy

systemów multimedialnych, algorytmiczny charakter ich użycia uświadamiane są jako
wielokrotnie powtarzalne i odtwarzalne działania jednakowych dla wszystkich, uniwersalnych
mechanizmów-organizacji wiedzy, czy też jako swoiste systemy interaktywnych procesów
psychofizycznych określających komunikację człowieka z człowiekiem, człowieka z maszyną
i człowieka z przyrodą. W tym sensie środki informatyczne (systemy multimedialne) są
pewnymi systemami iteracji. Ma to kardynalne znaczenia dla prawidłowego kształtowania
pojęć informatycznych, wskazuje bowiem na to, że

każde zadanie informatyczne

background image

wykonywane jest w określonym systemie iteracji. Powrócimy do tego aspektu edukacji
informatycznej w dalszych rozdziałach

Definicja
Dowolną dziedzinę tekstową wiedzy

nazywamy systemem iteracyjnym, gdy każdy tekst w tej

dziedzinie jest wyprowadzalny z tekstów wzorcowych (elementarnych)

. Procedurą jest

dowolna dziedzina tekstowa wiedzy ograniczona do wszystkich tekstów zawartych w pewnym
tek
ście. Jeżeli tekst jest wyprowadzeniem tekstu T to mówimy że

procedura jest niezawodna

dla T, w przeciwnym wypadku, że jest zawodna.

Definicja
Zbiorem procedur w danym systemie iteracji jest najmniejszy zbiór do którego należą:
1.

Procedury relacyjne (wyprowadzenia z użyciem relacji nie będącymi operacjami),

2.

Procedury operacyjne (wyprowadzenia z użyciem operacji),

3.

Ciągi procedur,

4.

Układy trzech procedur, postaci

jeżeli (procedura relacyjna wyprowadzenia

α

, procedura

pierwsza, procedura druga), reprezentujące wykonanie procedury pierwszej, gdy
procedura relacyjna wyprowadzenia

α

nie zawodzi, a drugiej, gdy zawodzi.

5.

Układy dwóch procedur zwane

procedurami iteracyjnymi, postaci powtarzaj(procedura

relacyjna, dana procedura), określające osiągalność każdego stanu wyprowadzonego
przez kolejne stosowanie tej samej procedury wyprowadzenia – dopóki procedura
relacyjna nie zawodzi wykonywana jest dana procedura.

Nazwa „procedura iteracyjna” jest uzasadniona tym, że procedura ta jest wtedy
wykonywana, gdy spełniony jest warunek wyprowadzalności (rys.)

Rys. 1.5 Schemat blokowy procedury iteracyjnej

Programowanie operacyjne a programowanie logiczne

Można wyróżnić trzy konkurencyjne a zarazem współzależne sposoby formalnej reprezentacji
procedur:
1)

reprezentacja ikoniczna – schematy blokowe, grafy, diagramy, drzewa, itp.

Czy
procedura
niezawodzi?

Procedura

tak

nie

background image

2)

reprezentacja symboliczna – języki programowania: strukturalne, logiczne, obiektowe,
wizualne.

3)

reprezentacja enaktywna - tabele decyzyjne, arkusze kalkulacyjne, bazy danych,
symulacje.

Pierwszy sposób reprezentacji jest zarazem pierwszym etapem formułowania algorytmu:

precyzyjnym zobrazowaniem algorytmu. Drugi sposób, to opis algorytmu w jakimś języku
sformalizowanym, a trzeci sposób to symulacja działania algorytmu. Przez

problem

informatyczny rozumie się przejście od reprezentacji ikonicznej do reprezentacji
symbolicznej. Rozwiązanie tego problemu umożliwia określenie reguł, których zastosowanie
pozwala dokonać symulacji realizacji algorytmu.

Sformalizowany język (zdefiniujemy go dalej), w którym wyrażamy procedury

realizowane w pewnym systemie iteracji nazywamy

językiem programowania, a wyrażenia

odpowiadające procedurom

programami. Są dwa typy języków programowania: pierwszy

tworzy się na bazie reprezentacji procedur operacyjnych, a drugie na bazie procedur
relacyjnych.

Programy reprezentujące procedury operacyjne określamy następująco:
S jest zbiorem programów realizowanych w systemie rzeczywistości Re wtedy i tylko

wtedy, gdy jest najmniejszym spośród zbiorów

S’ spełniającym następujące warunki:

(i)

podzbiorem

S’ jest zbiór wszystkich podstawień termu t za zmienną indywiduową x,

postaci

x:= t

2

,

(ii)

jeśli

α

jest formułą logiczną spełnioną w danym systemie rzeczywistości

Re oraz K,M,

K

1

, K

2

, ..., K

n

,, dla dowolnych n>0, należą do

S’, to wyrażenia:

begin K

1

; K

2

,; ..., K

n

end (odpowiada ciągowi procedur),

if

α

then K else M (odpowiada procedurze typu jeżeli...),

while

α

do K (odpowiada procedurze iteracyjnej),

należą do

S’.

Programy określone na bazie procedur relacyjnych są deklaracjami procedur

relacyjnych, tj. formułami określonymi przez preneksyjne postacie normalne koniunkcyjno-
alternatywne formuł logicznych (wszystkie kwantyfikatory występują na zewnątrz formuły o
postaci normalnej). Wykorzystuje się tu metodę znaną w logice pierwszego rzędu, wyciągania
kwantyfikatorów przed formułę, sprowadzenia formuły do postaci kanonicznej koniunkcyjno
alternatywnej, a następnie rozszerzenia języka o symbole funkcyjne pozwalające usunąć
kwantyfikatory egzystencjalne. Deklaracje procedur można wyrazić za pomocą ciągów
zbiorów deklaracji tych relacji lub negacji ich deklaracji, zwanych

klauzulami, a

programowanie w języku klauzul (np. język PROLOG)

3

nazywamy

programowaniem

logicznym. Zdefiniujemy teraz bardziej precyzyjnie składnię języka klauzul. Najbardziej
dogodnym zapisem klauzul jest zapis postaci

B

1

, B

2

, ..., B

m

:- A

1

, A

2

, ..., A

n

Gdzie znak „:-„ czytamy:

jeśli, przy czym B

1

, B

2

, ..., B

m

, A

1

, A

2

, ..., A

n

są formułami

atomowymi, n ≥ 0 i m ≥ 0. Formuły atomowe A

1

, A

2

, ..., A

n

stanowią koniunkcję

warunków

klauzuli, a B

1

, B

2

, ..., B

m

– alternatywę

konkluzji. Spośród klauzul wyróżnia się klauzule

hornowskie postaci

B

:- A

1

, A

2

, ..., A

n

2

Symbol „:=” jest niekiedy w podręcznikach nazywany symbolem przypisania. Niestety jest to myląca nazwa,

sugerująca uczniowi jakoby przypisanie było czymś innym niż podstawienie. Tym bardziej, że operację
podstawienia zna on świetnie z lekcji matematyki.

3

R. Kowalski, Logika w rozwiązywaniu zadań, WNT, Warszawa 1989.

background image

Jeśli klauzula zawiera zmienne x

1

, ..., x

k

, należy ja interpretować jako stwierdzenie, że

dla wszystkich x

1

, ..., x

k

: B

1

lub ... lub B

m

jeśli A

1

i ... i A

n

.

Jeśli n = 0, klauzulę należy interpretować jako bezwarunkowe stwierdzenie, że dla

wszystkich x

1

, ..., x

k

: B

1

lub ... lub B

m

.

Jeśli m = 0, klauzulę należy interpretować jako stwierdzenie, że dla wszystkich

x

1

, ..., x

k

nieprawda, że zachodzi A

1

i ... i A

n

.

Jeśli m = n = 0, klauzulę zapisuje się w postaci  (klauzula pusta) i interpretuje jako

zdanie zawsze fałszywe.

Atom (lub formuła atomowa) to wyrażenie postaci: R (t

1

, ..., t

m

), przy czym R jest

m-argumentowym symbolem relacyjnym, t

1

, ..., t

m

są termami oraz m ≥ l.

Atom należy interpretować jako stwierdzenie, że relacja o nazwie R zachodzi między
indywiduami o nazwach t

1

, ..., t

m

.

Term jest zmienną, stałą lub wyrażeniem postaci f (t

1

, ..., t

m

), przy czym f jest

m - argumentowym symbolem funkcyjnym, t

1

, ..., t

m

są termami oraz m ≥ l. .

Zbiory symboli relacyjnych, symboli funkcyjnych, stałych i zmiennych mogą być

dowolnymi zbiorami wzajemnie rozłącznymi. Przyjmiemy konwencję, w której małe litery
u, v, w, x, y, z oznaczają zmienne. Znaczenie innego rodzaju symboli można rozpoznać po ich
pozycji w klauzuli.

Symbol implikacji w języku klauzul jest skierowany w kierunku odwrotnym niż w

klasycznym języku logiki. Przyzwyczajenie każe pisać raczej: A :- B (jeśli A to B), a nie
B :- A (B jeśli A). Jednakże różnica jest nieistotna. Notację: B :- A stosuje się w celu
wyeksponowania konkluzji klauzuli.


Wyszukiwarka

Podobne podstrony:
Logiczna analiza tekstu
analiza tekstu
anazliza unit 5, FILOLOGIA ANGIELSKA, analiza tekstu
Analiza tekstu w dyskursie medialnym Małgorzata Lisowska Magdziarz
Konspekt analizy tekstu pobocznego z, Konspekt analizy tekstu pobocznego z „Wesela” S
Konspekt analizy tekstu pobocznego z, Konspekt analizy tekstu pobocznego z „Wesela” S
analiza tekstu zadanie domowe 1 Nieznany
REDUTA ORDONA ANALIZA TEKSTU POD WZGLEDEM CHARAKTERYSTYKI BOHATERÓW
Model uczenia się w toku analizy tekstu, Pedagogika, Metodyka nauczania przedmiotów pedagogicznych
Analiza tekstu staropolskiego, Filologia polska, Gramatyka historyczna, Gramatyka historyczna(2)
Analiza tekstu na perswazję, Materiały, Perswazja
Metody ankietowe i analiza tekstu w badaniach JOS
logiczna analiza pytań, psychologia
Analiza tekstu M Aureliusza, filozofia
wprowadzenie w analize tekstu naukowego
Analiza tekstualna stara się przedstawić dynamiczne(1), filozoficzne
Intersemiotyczna analiza tekstu poetyckiego, Polonistyka

więcej podobnych podstron